diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptAxiosClientCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptAxiosClientCodegen.java index cbadf484409..cc4eb8e0085 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptAxiosClientCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/TypeScriptAxiosClientCodegen.java @@ -104,6 +104,7 @@ public class TypeScriptAxiosClientCodegen extends AbstractTypeScriptClientCodege supportingFiles.add(new SupportingFile("index.mustache", "", "index.ts")); supportingFiles.add(new SupportingFile("baseApi.mustache", "", "base.ts")); + supportingFiles.add(new SupportingFile("common.mustache", "", "common.ts")); supportingFiles.add(new SupportingFile("api.mustache", "", "api.ts")); supportingFiles.add(new SupportingFile("configuration.mustache", "", "configuration.ts")); supportingFiles.add(new SupportingFile("git_push.sh.mustache", "", "git_push.sh")); diff --git a/modules/openapi-generator/src/main/resources/typescript-axios/api.mustache b/modules/openapi-generator/src/main/resources/typescript-axios/api.mustache index a723da26004..da873845d8a 100644 --- a/modules/openapi-generator/src/main/resources/typescript-axios/api.mustache +++ b/modules/openapi-generator/src/main/resources/typescript-axios/api.mustache @@ -7,6 +7,8 @@ import { Configuration } from './configuration'; import globalAxios, { AxiosPromise, AxiosInstance } from 'axios'; // Some imports not used depending on template conditions // @ts-ignore +import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from './common'; +// @ts-ignore import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from './base'; {{#models}} diff --git a/modules/openapi-generator/src/main/resources/typescript-axios/apiInner.mustache b/modules/openapi-generator/src/main/resources/typescript-axios/apiInner.mustache index b8321a3f41f..71981cf8fca 100644 --- a/modules/openapi-generator/src/main/resources/typescript-axios/apiInner.mustache +++ b/modules/openapi-generator/src/main/resources/typescript-axios/apiInner.mustache @@ -7,6 +7,8 @@ import globalAxios, { AxiosPromise, AxiosInstance } from 'axios'; import { Configuration } from '{{apiRelativeToRoot}}configuration'; // Some imports not used depending on template conditions // @ts-ignore +import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from '{{apiRelativeToRoot}}common'; +// @ts-ignore import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '{{apiRelativeToRoot}}base'; {{#imports}} // @ts-ignore @@ -39,15 +41,13 @@ export const {{classname}}AxiosParamCreator = function (configuration?: Configur {{#allParams}} {{#required}} // verify required parameter '{{paramName}}' is not null or undefined - if ({{paramName}} === null || {{paramName}} === undefined) { - throw new RequiredError('{{paramName}}','Required parameter {{paramName}} was null or undefined when calling {{nickname}}.'); - } + assertParamExists('{{nickname}}', '{{paramName}}', {{paramName}}) {{/required}} {{/allParams}} const localVarPath = `{{{path}}}`{{#pathParams}} .replace(`{${"{{baseName}}"}}`, encodeURIComponent(String({{paramName}}))){{/pathParams}}; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -62,45 +62,23 @@ export const {{classname}}AxiosParamCreator = function (configuration?: Configur // authentication {{name}} required {{#isApiKey}} {{#isKeyInHeader}} - if (configuration && configuration.apiKey) { - const localVarApiKeyValue = typeof configuration.apiKey === 'function' - ? await configuration.apiKey("{{keyParamName}}") - : await configuration.apiKey; - localVarHeaderParameter["{{keyParamName}}"] = localVarApiKeyValue; - } + await setApiKeyToObject(localVarHeaderParameter, "{{keyParamName}}", configuration) {{/isKeyInHeader}} {{#isKeyInQuery}} - if (configuration && configuration.apiKey) { - const localVarApiKeyValue = typeof configuration.apiKey === 'function' - ? await configuration.apiKey("{{keyParamName}}") - : await configuration.apiKey; - localVarQueryParameter["{{keyParamName}}"] = localVarApiKeyValue; - } + await setApiKeyToObject(localVarQueryParameter, "{{keyParamName}}", configuration) {{/isKeyInQuery}} {{/isApiKey}} {{#isBasicBasic}} // http basic authentication required - if (configuration && (configuration.username || configuration.password)) { - localVarRequestOptions["auth"] = { username: configuration.username, password: configuration.password }; - } + setBasicAuthToObject(localVarRequestOptions, configuration) {{/isBasicBasic}} {{#isBasicBearer}} // http bearer authentication required - if (configuration && configuration.accessToken) { - const accessToken = typeof configuration.accessToken === 'function' - ? await configuration.accessToken() - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + accessToken; - } + await setBearerAuthToObject(localVarHeaderParameter, configuration) {{/isBasicBearer}} {{#isOAuth}} // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("{{name}}", [{{#scopes}}"{{{scope}}}"{{^-last}}, {{/-last}}{{/scopes}}]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "{{name}}", [{{#scopes}}"{{{scope}}}"{{^-last}}, {{/-last}}{{/scopes}}], configuration) {{/isOAuth}} {{/authMethods}} @@ -188,31 +166,18 @@ export const {{classname}}AxiosParamCreator = function (configuration?: Configur {{/consumes.0}} {{/bodyParam}} - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; {{#hasFormParams}} localVarRequestOptions.data = localVarFormParams{{#vendorExtensions}}{{^multipartFormData}}.toString(){{/multipartFormData}}{{/vendorExtensions}}; {{/hasFormParams}} {{#bodyParam}} - const nonString = typeof {{paramName}} !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify({{paramName}} !== undefined ? {{paramName}} : {}) - : ({{paramName}} || ""); + localVarRequestOptions.data = serializeDataIfNeeded({{paramName}}, localVarRequestOptions, configuration) {{/bodyParam}} return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -226,6 +191,7 @@ export const {{classname}}AxiosParamCreator = function (configuration?: Configur * @export */ export const {{classname}}Fp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = {{classname}}AxiosParamCreator(configuration) return { {{#operation}} /** @@ -240,11 +206,8 @@ export const {{classname}}Fp = function(configuration?: Configuration) { * @throws {RequiredError} */ async {{nickname}}({{#allParams}}{{paramName}}{{^required}}?{{/required}}: {{{dataType}}}, {{/allParams}}options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<{{#returnType}}{{{returnType}}}{{/returnType}}{{^returnType}}void{{/returnType}}>> { - const localVarAxiosArgs = await {{classname}}AxiosParamCreator(configuration).{{nickname}}({{#allParams}}{{paramName}}, {{/allParams}}options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.{{nickname}}({{#allParams}}{{paramName}}, {{/allParams}}options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, {{/operation}} } @@ -256,6 +219,7 @@ export const {{classname}}Fp = function(configuration?: Configuration) { * @export */ export const {{classname}}Factory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = {{classname}}Fp(configuration) return { {{#operation}} /** @@ -270,7 +234,7 @@ export const {{classname}}Factory = function (configuration?: Configuration, bas * @throws {RequiredError} */ {{nickname}}({{#allParams}}{{paramName}}{{^required}}?{{/required}}: {{{dataType}}}, {{/allParams}}options?: any): AxiosPromise<{{#returnType}}{{{returnType}}}{{/returnType}}{{^returnType}}void{{/returnType}}> { - return {{classname}}Fp(configuration).{{nickname}}({{#allParams}}{{paramName}}, {{/allParams}}options).then((request) => request(axios, basePath)); + return localVarFp.{{nickname}}({{#allParams}}{{paramName}}, {{/allParams}}options).then((request) => request(axios, basePath)); }, {{/operation}} }; diff --git a/modules/openapi-generator/src/main/resources/typescript-axios/common.mustache b/modules/openapi-generator/src/main/resources/typescript-axios/common.mustache new file mode 100644 index 00000000000..2e0578c2a2e --- /dev/null +++ b/modules/openapi-generator/src/main/resources/typescript-axios/common.mustache @@ -0,0 +1,120 @@ +/* tslint:disable */ +/* eslint-disable */ +{{>licenseInfo}} + +import { Configuration } from "./configuration"; +import { RequiredError, RequestArgs } from "./base"; +import { AxiosInstance } from 'axios'; + +/** + * + * @export + */ +export const DUMMY_BASE_URL = 'https://example.com' + +/** + * + * @throws {RequiredError} + * @export + */ +export const assertParamExists = function (functionName: string, paramName: string, paramValue: unknown) { + if (paramValue === null || paramValue === undefined) { + throw new RequiredError(paramName, `Required parameter ${paramName} was null or undefined when calling ${functionName}.`); + } +} + +/** + * + * @export + */ +export const setApiKeyToObject = async function (object: any, keyParamName: string, configuration?: Configuration) { + if (configuration && configuration.apiKey) { + const localVarApiKeyValue = typeof configuration.apiKey === 'function' + ? await configuration.apiKey(keyParamName) + : await configuration.apiKey; + object[keyParamName] = localVarApiKeyValue; + } +} + +/** + * + * @export + */ +export const setBasicAuthToObject = function (object: any, configuration?: Configuration) { + if (configuration && (configuration.username || configuration.password)) { + object["auth"] = { username: configuration.username, password: configuration.password }; + } +} + +/** + * + * @export + */ +export const setBearerAuthToObject = async function (object: any, configuration?: Configuration) { + if (configuration && configuration.accessToken) { + const accessToken = typeof configuration.accessToken === 'function' + ? await configuration.accessToken() + : await configuration.accessToken; + object["Authorization"] = "Bearer " + accessToken; + } +} + +/** + * + * @export + */ +export const setOAuthToObject = async function (object: any, name: string, scopes: string[], configuration?: Configuration) { + if (configuration && configuration.accessToken) { + const localVarAccessTokenValue = typeof configuration.accessToken === 'function' + ? await configuration.accessToken(name, scopes) + : await configuration.accessToken; + object["Authorization"] = "Bearer " + localVarAccessTokenValue; + } +} + +/** + * + * @export + */ +export const setSearchParams = function (url: URL, ...objects: any[]) { + const searchParams = new URLSearchParams(url.search); + for (const object of objects) { + for (const key in object) { + searchParams.set(key, object[key]); + } + } + url.search = searchParams.toString(); +} + +/** + * + * @export + */ +export const serializeDataIfNeeded = function (value: any, requestOptions: any, configuration?: Configuration) { + const nonString = typeof value !== 'string'; + const needsSerialization = nonString && configuration && configuration.isJsonMime + ? configuration.isJsonMime(requestOptions.headers['Content-Type']) + : nonString; + return needsSerialization + ? JSON.stringify(value !== undefined ? value : {}) + : (value || ""); +} + +/** + * + * @export + */ +export const toPathString = function (url: URL) { + return url.pathname + url.search + url.hash +} + +/** + * + * @export + */ +export const createRequestFunction = function (axiosArgs: RequestArgs, globalAxios: AxiosInstance, BASE_PATH: string, configuration?: Configuration) { + return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { + const axiosRequestArgs = {...axiosArgs.options, url: (configuration?.basePath || basePath) + axiosArgs.url}; + return axios.request(axiosRequestArgs); + }; +} diff --git a/samples/client/petstore/typescript-axios/builds/composed-schemas/.openapi-generator/FILES b/samples/client/petstore/typescript-axios/builds/composed-schemas/.openapi-generator/FILES index 5bef353ae38..a80cd4f07b0 100644 --- a/samples/client/petstore/typescript-axios/builds/composed-schemas/.openapi-generator/FILES +++ b/samples/client/petstore/typescript-axios/builds/composed-schemas/.openapi-generator/FILES @@ -2,6 +2,7 @@ .npmignore api.ts base.ts +common.ts configuration.ts git_push.sh index.ts diff --git a/samples/client/petstore/typescript-axios/builds/composed-schemas/api.ts b/samples/client/petstore/typescript-axios/builds/composed-schemas/api.ts index 20e496d94b0..0de89784bd0 100644 --- a/samples/client/petstore/typescript-axios/builds/composed-schemas/api.ts +++ b/samples/client/petstore/typescript-axios/builds/composed-schemas/api.ts @@ -17,6 +17,8 @@ import { Configuration } from './configuration'; import globalAxios, { AxiosPromise, AxiosInstance } from 'axios'; // Some imports not used depending on template conditions // @ts-ignore +import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from './common'; +// @ts-ignore import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from './base'; /** @@ -196,7 +198,7 @@ export const DefaultApiAxiosParamCreator = function (configuration?: Configurati filePost: async (inlineObject?: InlineObject, options: any = {}): Promise => { const localVarPath = `/file`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -210,26 +212,13 @@ export const DefaultApiAxiosParamCreator = function (configuration?: Configurati localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof inlineObject !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(inlineObject !== undefined ? inlineObject : {}) - : (inlineObject || ""); + localVarRequestOptions.data = serializeDataIfNeeded(inlineObject, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -242,7 +231,7 @@ export const DefaultApiAxiosParamCreator = function (configuration?: Configurati petsFilteredPatch: async (petByAgePetByType?: PetByAge | PetByType, options: any = {}): Promise => { const localVarPath = `/pets-filtered`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -256,26 +245,13 @@ export const DefaultApiAxiosParamCreator = function (configuration?: Configurati localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof petByAgePetByType !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(petByAgePetByType !== undefined ? petByAgePetByType : {}) - : (petByAgePetByType || ""); + localVarRequestOptions.data = serializeDataIfNeeded(petByAgePetByType, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -288,7 +264,7 @@ export const DefaultApiAxiosParamCreator = function (configuration?: Configurati petsPatch: async (catDog?: Cat | Dog, options: any = {}): Promise => { const localVarPath = `/pets`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -302,26 +278,13 @@ export const DefaultApiAxiosParamCreator = function (configuration?: Configurati localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof catDog !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(catDog !== undefined ? catDog : {}) - : (catDog || ""); + localVarRequestOptions.data = serializeDataIfNeeded(catDog, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -333,6 +296,7 @@ export const DefaultApiAxiosParamCreator = function (configuration?: Configurati * @export */ export const DefaultApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = DefaultApiAxiosParamCreator(configuration) return { /** * @@ -341,11 +305,8 @@ export const DefaultApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async filePost(inlineObject?: InlineObject, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).filePost(inlineObject, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.filePost(inlineObject, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -354,11 +315,8 @@ export const DefaultApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async petsFilteredPatch(petByAgePetByType?: PetByAge | PetByType, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).petsFilteredPatch(petByAgePetByType, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.petsFilteredPatch(petByAgePetByType, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -367,11 +325,8 @@ export const DefaultApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async petsPatch(catDog?: Cat | Dog, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await DefaultApiAxiosParamCreator(configuration).petsPatch(catDog, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.petsPatch(catDog, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; @@ -381,6 +336,7 @@ export const DefaultApiFp = function(configuration?: Configuration) { * @export */ export const DefaultApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = DefaultApiFp(configuration) return { /** * @@ -389,7 +345,7 @@ export const DefaultApiFactory = function (configuration?: Configuration, basePa * @throws {RequiredError} */ filePost(inlineObject?: InlineObject, options?: any): AxiosPromise { - return DefaultApiFp(configuration).filePost(inlineObject, options).then((request) => request(axios, basePath)); + return localVarFp.filePost(inlineObject, options).then((request) => request(axios, basePath)); }, /** * @@ -398,7 +354,7 @@ export const DefaultApiFactory = function (configuration?: Configuration, basePa * @throws {RequiredError} */ petsFilteredPatch(petByAgePetByType?: PetByAge | PetByType, options?: any): AxiosPromise { - return DefaultApiFp(configuration).petsFilteredPatch(petByAgePetByType, options).then((request) => request(axios, basePath)); + return localVarFp.petsFilteredPatch(petByAgePetByType, options).then((request) => request(axios, basePath)); }, /** * @@ -407,7 +363,7 @@ export const DefaultApiFactory = function (configuration?: Configuration, basePa * @throws {RequiredError} */ petsPatch(catDog?: Cat | Dog, options?: any): AxiosPromise { - return DefaultApiFp(configuration).petsPatch(catDog, options).then((request) => request(axios, basePath)); + return localVarFp.petsPatch(catDog, options).then((request) => request(axios, basePath)); }, }; }; diff --git a/samples/client/petstore/typescript-axios/builds/composed-schemas/common.ts b/samples/client/petstore/typescript-axios/builds/composed-schemas/common.ts new file mode 100644 index 00000000000..261bfa1f444 --- /dev/null +++ b/samples/client/petstore/typescript-axios/builds/composed-schemas/common.ts @@ -0,0 +1,131 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Example + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.0.0 + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +import { Configuration } from "./configuration"; +import { RequiredError, RequestArgs } from "./base"; +import { AxiosInstance } from 'axios'; + +/** + * + * @export + */ +export const DUMMY_BASE_URL = 'https://example.com' + +/** + * + * @throws {RequiredError} + * @export + */ +export const assertParamExists = function (functionName: string, paramName: string, paramValue: unknown) { + if (paramValue === null || paramValue === undefined) { + throw new RequiredError(paramName, `Required parameter ${paramName} was null or undefined when calling ${functionName}.`); + } +} + +/** + * + * @export + */ +export const setApiKeyToObject = async function (object: any, keyParamName: string, configuration?: Configuration) { + if (configuration && configuration.apiKey) { + const localVarApiKeyValue = typeof configuration.apiKey === 'function' + ? await configuration.apiKey(keyParamName) + : await configuration.apiKey; + object[keyParamName] = localVarApiKeyValue; + } +} + +/** + * + * @export + */ +export const setBasicAuthToObject = function (object: any, configuration?: Configuration) { + if (configuration && (configuration.username || configuration.password)) { + object["auth"] = { username: configuration.username, password: configuration.password }; + } +} + +/** + * + * @export + */ +export const setBearerAuthToObject = async function (object: any, configuration?: Configuration) { + if (configuration && configuration.accessToken) { + const accessToken = typeof configuration.accessToken === 'function' + ? await configuration.accessToken() + : await configuration.accessToken; + object["Authorization"] = "Bearer " + accessToken; + } +} + +/** + * + * @export + */ +export const setOAuthToObject = async function (object: any, name: string, scopes: string[], configuration?: Configuration) { + if (configuration && configuration.accessToken) { + const localVarAccessTokenValue = typeof configuration.accessToken === 'function' + ? await configuration.accessToken(name, scopes) + : await configuration.accessToken; + object["Authorization"] = "Bearer " + localVarAccessTokenValue; + } +} + +/** + * + * @export + */ +export const setSearchParams = function (url: URL, ...objects: any[]) { + const searchParams = new URLSearchParams(url.search); + for (const object of objects) { + for (const key in object) { + searchParams.set(key, object[key]); + } + } + url.search = searchParams.toString(); +} + +/** + * + * @export + */ +export const serializeDataIfNeeded = function (value: any, requestOptions: any, configuration?: Configuration) { + const nonString = typeof value !== 'string'; + const needsSerialization = nonString && configuration && configuration.isJsonMime + ? configuration.isJsonMime(requestOptions.headers['Content-Type']) + : nonString; + return needsSerialization + ? JSON.stringify(value !== undefined ? value : {}) + : (value || ""); +} + +/** + * + * @export + */ +export const toPathString = function (url: URL) { + return url.pathname + url.search + url.hash +} + +/** + * + * @export + */ +export const createRequestFunction = function (axiosArgs: RequestArgs, globalAxios: AxiosInstance, BASE_PATH: string, configuration?: Configuration) { + return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { + const axiosRequestArgs = {...axiosArgs.options, url: (configuration?.basePath || basePath) + axiosArgs.url}; + return axios.request(axiosRequestArgs); + }; +} diff --git a/samples/client/petstore/typescript-axios/builds/default/.openapi-generator/FILES b/samples/client/petstore/typescript-axios/builds/default/.openapi-generator/FILES index 5bef353ae38..a80cd4f07b0 100644 --- a/samples/client/petstore/typescript-axios/builds/default/.openapi-generator/FILES +++ b/samples/client/petstore/typescript-axios/builds/default/.openapi-generator/FILES @@ -2,6 +2,7 @@ .npmignore api.ts base.ts +common.ts configuration.ts git_push.sh index.ts diff --git a/samples/client/petstore/typescript-axios/builds/default/api.ts b/samples/client/petstore/typescript-axios/builds/default/api.ts index 1aca2afe908..856fb0a4829 100644 --- a/samples/client/petstore/typescript-axios/builds/default/api.ts +++ b/samples/client/petstore/typescript-axios/builds/default/api.ts @@ -17,6 +17,8 @@ import { Configuration } from './configuration'; import globalAxios, { AxiosPromise, AxiosInstance } from 'axios'; // Some imports not used depending on template conditions // @ts-ignore +import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from './common'; +// @ts-ignore import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from './base'; /** @@ -261,12 +263,10 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ addPet: async (body: Pet, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling addPet.'); - } + assertParamExists('addPet', 'body', body) const localVarPath = `/pet`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -278,37 +278,19 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -322,13 +304,11 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ deletePet: async (petId: number, apiKey?: string, options: any = {}): Promise => { // verify required parameter 'petId' is not null or undefined - if (petId === null || petId === undefined) { - throw new RequiredError('petId','Required parameter petId was null or undefined when calling deletePet.'); - } + assertParamExists('deletePet', 'petId', petId) const localVarPath = `/pet/{petId}` .replace(`{${"petId"}}`, encodeURIComponent(String(petId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -340,12 +320,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (apiKey !== undefined && apiKey !== null) { localVarHeaderParameter['api_key'] = String(apiKey); @@ -353,19 +328,12 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -378,12 +346,10 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ findPetsByStatus: async (status: Array<'available' | 'pending' | 'sold'>, options: any = {}): Promise => { // verify required parameter 'status' is not null or undefined - if (status === null || status === undefined) { - throw new RequiredError('status','Required parameter status was null or undefined when calling findPetsByStatus.'); - } + assertParamExists('findPetsByStatus', 'status', status) const localVarPath = `/pet/findByStatus`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -395,12 +361,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (status) { localVarQueryParameter['status'] = status.join(COLLECTION_FORMATS.csv); @@ -408,19 +369,12 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -433,12 +387,10 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ findPetsByTags: async (tags: Array, options: any = {}): Promise => { // verify required parameter 'tags' is not null or undefined - if (tags === null || tags === undefined) { - throw new RequiredError('tags','Required parameter tags was null or undefined when calling findPetsByTags.'); - } + assertParamExists('findPetsByTags', 'tags', tags) const localVarPath = `/pet/findByTags`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -450,12 +402,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (tags) { localVarQueryParameter['tags'] = tags.join(COLLECTION_FORMATS.csv); @@ -463,19 +410,12 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -488,13 +428,11 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ getPetById: async (petId: number, options: any = {}): Promise => { // verify required parameter 'petId' is not null or undefined - if (petId === null || petId === undefined) { - throw new RequiredError('petId','Required parameter petId was null or undefined when calling getPetById.'); - } + assertParamExists('getPetById', 'petId', petId) const localVarPath = `/pet/{petId}` .replace(`{${"petId"}}`, encodeURIComponent(String(petId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -505,28 +443,16 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) const localVarQueryParameter = {} as any; // authentication api_key required - if (configuration && configuration.apiKey) { - const localVarApiKeyValue = typeof configuration.apiKey === 'function' - ? await configuration.apiKey("api_key") - : await configuration.apiKey; - localVarHeaderParameter["api_key"] = localVarApiKeyValue; - } + await setApiKeyToObject(localVarHeaderParameter, "api_key", configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -539,12 +465,10 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ updatePet: async (body: Pet, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling updatePet.'); - } + assertParamExists('updatePet', 'body', body) const localVarPath = `/pet`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -556,37 +480,19 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -601,13 +507,11 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ updatePetWithForm: async (petId: number, name?: string, status?: string, options: any = {}): Promise => { // verify required parameter 'petId' is not null or undefined - if (petId === null || petId === undefined) { - throw new RequiredError('petId','Required parameter petId was null or undefined when calling updatePetWithForm.'); - } + assertParamExists('updatePetWithForm', 'petId', petId) const localVarPath = `/pet/{petId}` .replace(`{${"petId"}}`, encodeURIComponent(String(petId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -620,12 +524,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (name !== undefined) { @@ -639,20 +538,13 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/x-www-form-urlencoded'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = localVarFormParams.toString(); return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -667,13 +559,11 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ uploadFile: async (petId: number, additionalMetadata?: string, file?: any, options: any = {}): Promise => { // verify required parameter 'petId' is not null or undefined - if (petId === null || petId === undefined) { - throw new RequiredError('petId','Required parameter petId was null or undefined when calling uploadFile.'); - } + assertParamExists('uploadFile', 'petId', petId) const localVarPath = `/pet/{petId}/uploadImage` .replace(`{${"petId"}}`, encodeURIComponent(String(petId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -686,12 +576,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (additionalMetadata !== undefined) { @@ -705,20 +590,13 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'multipart/form-data'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = localVarFormParams; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -730,6 +608,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) * @export */ export const PetApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = PetApiAxiosParamCreator(configuration) return { /** * @@ -739,11 +618,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async addPet(body: Pet, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).addPet(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.addPet(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -754,11 +630,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async deletePet(petId: number, apiKey?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).deletePet(petId, apiKey, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.deletePet(petId, apiKey, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Multiple status values can be provided with comma separated strings @@ -768,11 +641,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async findPetsByStatus(status: Array<'available' | 'pending' | 'sold'>, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).findPetsByStatus(status, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.findPetsByStatus(status, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. @@ -782,11 +652,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async findPetsByTags(tags: Array, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).findPetsByTags(tags, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.findPetsByTags(tags, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Returns a single pet @@ -796,11 +663,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async getPetById(petId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).getPetById(petId, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.getPetById(petId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -810,11 +674,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async updatePet(body: Pet, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).updatePet(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.updatePet(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -826,11 +687,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async updatePetWithForm(petId: number, name?: string, status?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).updatePetWithForm(petId, name, status, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.updatePetWithForm(petId, name, status, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -842,11 +700,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async uploadFile(petId: number, additionalMetadata?: string, file?: any, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).uploadFile(petId, additionalMetadata, file, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.uploadFile(petId, additionalMetadata, file, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; @@ -856,6 +711,7 @@ export const PetApiFp = function(configuration?: Configuration) { * @export */ export const PetApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = PetApiFp(configuration) return { /** * @@ -865,7 +721,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ addPet(body: Pet, options?: any): AxiosPromise { - return PetApiFp(configuration).addPet(body, options).then((request) => request(axios, basePath)); + return localVarFp.addPet(body, options).then((request) => request(axios, basePath)); }, /** * @@ -876,7 +732,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ deletePet(petId: number, apiKey?: string, options?: any): AxiosPromise { - return PetApiFp(configuration).deletePet(petId, apiKey, options).then((request) => request(axios, basePath)); + return localVarFp.deletePet(petId, apiKey, options).then((request) => request(axios, basePath)); }, /** * Multiple status values can be provided with comma separated strings @@ -886,7 +742,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ findPetsByStatus(status: Array<'available' | 'pending' | 'sold'>, options?: any): AxiosPromise> { - return PetApiFp(configuration).findPetsByStatus(status, options).then((request) => request(axios, basePath)); + return localVarFp.findPetsByStatus(status, options).then((request) => request(axios, basePath)); }, /** * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. @@ -896,7 +752,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ findPetsByTags(tags: Array, options?: any): AxiosPromise> { - return PetApiFp(configuration).findPetsByTags(tags, options).then((request) => request(axios, basePath)); + return localVarFp.findPetsByTags(tags, options).then((request) => request(axios, basePath)); }, /** * Returns a single pet @@ -906,7 +762,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ getPetById(petId: number, options?: any): AxiosPromise { - return PetApiFp(configuration).getPetById(petId, options).then((request) => request(axios, basePath)); + return localVarFp.getPetById(petId, options).then((request) => request(axios, basePath)); }, /** * @@ -916,7 +772,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ updatePet(body: Pet, options?: any): AxiosPromise { - return PetApiFp(configuration).updatePet(body, options).then((request) => request(axios, basePath)); + return localVarFp.updatePet(body, options).then((request) => request(axios, basePath)); }, /** * @@ -928,7 +784,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ updatePetWithForm(petId: number, name?: string, status?: string, options?: any): AxiosPromise { - return PetApiFp(configuration).updatePetWithForm(petId, name, status, options).then((request) => request(axios, basePath)); + return localVarFp.updatePetWithForm(petId, name, status, options).then((request) => request(axios, basePath)); }, /** * @@ -940,7 +796,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ uploadFile(petId: number, additionalMetadata?: string, file?: any, options?: any): AxiosPromise { - return PetApiFp(configuration).uploadFile(petId, additionalMetadata, file, options).then((request) => request(axios, basePath)); + return localVarFp.uploadFile(petId, additionalMetadata, file, options).then((request) => request(axios, basePath)); }, }; }; @@ -1070,13 +926,11 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration */ deleteOrder: async (orderId: string, options: any = {}): Promise => { // verify required parameter 'orderId' is not null or undefined - if (orderId === null || orderId === undefined) { - throw new RequiredError('orderId','Required parameter orderId was null or undefined when calling deleteOrder.'); - } + assertParamExists('deleteOrder', 'orderId', orderId) const localVarPath = `/store/order/{orderId}` .replace(`{${"orderId"}}`, encodeURIComponent(String(orderId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1088,19 +942,12 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1113,7 +960,7 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration getInventory: async (options: any = {}): Promise => { const localVarPath = `/store/inventory`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1124,28 +971,16 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration const localVarQueryParameter = {} as any; // authentication api_key required - if (configuration && configuration.apiKey) { - const localVarApiKeyValue = typeof configuration.apiKey === 'function' - ? await configuration.apiKey("api_key") - : await configuration.apiKey; - localVarHeaderParameter["api_key"] = localVarApiKeyValue; - } + await setApiKeyToObject(localVarHeaderParameter, "api_key", configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1158,13 +993,11 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration */ getOrderById: async (orderId: number, options: any = {}): Promise => { // verify required parameter 'orderId' is not null or undefined - if (orderId === null || orderId === undefined) { - throw new RequiredError('orderId','Required parameter orderId was null or undefined when calling getOrderById.'); - } + assertParamExists('getOrderById', 'orderId', orderId) const localVarPath = `/store/order/{orderId}` .replace(`{${"orderId"}}`, encodeURIComponent(String(orderId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1176,19 +1009,12 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1201,12 +1027,10 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration */ placeOrder: async (body: Order, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling placeOrder.'); - } + assertParamExists('placeOrder', 'body', body) const localVarPath = `/store/order`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1220,26 +1044,13 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1251,6 +1062,7 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration * @export */ export const StoreApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = StoreApiAxiosParamCreator(configuration) return { /** * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors @@ -1260,11 +1072,8 @@ export const StoreApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async deleteOrder(orderId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await StoreApiAxiosParamCreator(configuration).deleteOrder(orderId, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteOrder(orderId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Returns a map of status codes to quantities @@ -1273,11 +1082,8 @@ export const StoreApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async getInventory(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<{ [key: string]: number; }>> { - const localVarAxiosArgs = await StoreApiAxiosParamCreator(configuration).getInventory(options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.getInventory(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions @@ -1287,11 +1093,8 @@ export const StoreApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async getOrderById(orderId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await StoreApiAxiosParamCreator(configuration).getOrderById(orderId, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.getOrderById(orderId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -1301,11 +1104,8 @@ export const StoreApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async placeOrder(body: Order, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await StoreApiAxiosParamCreator(configuration).placeOrder(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.placeOrder(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; @@ -1315,6 +1115,7 @@ export const StoreApiFp = function(configuration?: Configuration) { * @export */ export const StoreApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = StoreApiFp(configuration) return { /** * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors @@ -1324,7 +1125,7 @@ export const StoreApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ deleteOrder(orderId: string, options?: any): AxiosPromise { - return StoreApiFp(configuration).deleteOrder(orderId, options).then((request) => request(axios, basePath)); + return localVarFp.deleteOrder(orderId, options).then((request) => request(axios, basePath)); }, /** * Returns a map of status codes to quantities @@ -1333,7 +1134,7 @@ export const StoreApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ getInventory(options?: any): AxiosPromise<{ [key: string]: number; }> { - return StoreApiFp(configuration).getInventory(options).then((request) => request(axios, basePath)); + return localVarFp.getInventory(options).then((request) => request(axios, basePath)); }, /** * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions @@ -1343,7 +1144,7 @@ export const StoreApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ getOrderById(orderId: number, options?: any): AxiosPromise { - return StoreApiFp(configuration).getOrderById(orderId, options).then((request) => request(axios, basePath)); + return localVarFp.getOrderById(orderId, options).then((request) => request(axios, basePath)); }, /** * @@ -1353,7 +1154,7 @@ export const StoreApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ placeOrder(body: Order, options?: any): AxiosPromise { - return StoreApiFp(configuration).placeOrder(body, options).then((request) => request(axios, basePath)); + return localVarFp.placeOrder(body, options).then((request) => request(axios, basePath)); }, }; }; @@ -1429,12 +1230,10 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ createUser: async (body: User, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling createUser.'); - } + assertParamExists('createUser', 'body', body) const localVarPath = `/user`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1448,26 +1247,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1480,12 +1266,10 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ createUsersWithArrayInput: async (body: Array, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling createUsersWithArrayInput.'); - } + assertParamExists('createUsersWithArrayInput', 'body', body) const localVarPath = `/user/createWithArray`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1499,26 +1283,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1531,12 +1302,10 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ createUsersWithListInput: async (body: Array, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling createUsersWithListInput.'); - } + assertParamExists('createUsersWithListInput', 'body', body) const localVarPath = `/user/createWithList`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1550,26 +1319,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1582,13 +1338,11 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ deleteUser: async (username: string, options: any = {}): Promise => { // verify required parameter 'username' is not null or undefined - if (username === null || username === undefined) { - throw new RequiredError('username','Required parameter username was null or undefined when calling deleteUser.'); - } + assertParamExists('deleteUser', 'username', username) const localVarPath = `/user/{username}` .replace(`{${"username"}}`, encodeURIComponent(String(username))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1600,19 +1354,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1625,13 +1372,11 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ getUserByName: async (username: string, options: any = {}): Promise => { // verify required parameter 'username' is not null or undefined - if (username === null || username === undefined) { - throw new RequiredError('username','Required parameter username was null or undefined when calling getUserByName.'); - } + assertParamExists('getUserByName', 'username', username) const localVarPath = `/user/{username}` .replace(`{${"username"}}`, encodeURIComponent(String(username))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1643,19 +1388,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1669,16 +1407,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ loginUser: async (username: string, password: string, options: any = {}): Promise => { // verify required parameter 'username' is not null or undefined - if (username === null || username === undefined) { - throw new RequiredError('username','Required parameter username was null or undefined when calling loginUser.'); - } + assertParamExists('loginUser', 'username', username) // verify required parameter 'password' is not null or undefined - if (password === null || password === undefined) { - throw new RequiredError('password','Required parameter password was null or undefined when calling loginUser.'); - } + assertParamExists('loginUser', 'password', password) const localVarPath = `/user/login`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1698,19 +1432,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1723,7 +1450,7 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) logoutUser: async (options: any = {}): Promise => { const localVarPath = `/user/logout`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1735,19 +1462,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1761,17 +1481,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ updateUser: async (username: string, body: User, options: any = {}): Promise => { // verify required parameter 'username' is not null or undefined - if (username === null || username === undefined) { - throw new RequiredError('username','Required parameter username was null or undefined when calling updateUser.'); - } + assertParamExists('updateUser', 'username', username) // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling updateUser.'); - } + assertParamExists('updateUser', 'body', body) const localVarPath = `/user/{username}` .replace(`{${"username"}}`, encodeURIComponent(String(username))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1785,26 +1501,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1816,6 +1519,7 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) * @export */ export const UserApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = UserApiAxiosParamCreator(configuration) return { /** * This can only be done by the logged in user. @@ -1825,11 +1529,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async createUser(body: User, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).createUser(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.createUser(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -1839,11 +1540,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async createUsersWithArrayInput(body: Array, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).createUsersWithArrayInput(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.createUsersWithArrayInput(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -1853,11 +1551,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async createUsersWithListInput(body: Array, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).createUsersWithListInput(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.createUsersWithListInput(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * This can only be done by the logged in user. @@ -1867,11 +1562,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async deleteUser(username: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).deleteUser(username, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteUser(username, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -1881,11 +1573,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async getUserByName(username: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).getUserByName(username, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.getUserByName(username, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -1896,11 +1585,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async loginUser(username: string, password: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).loginUser(username, password, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.loginUser(username, password, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -1909,11 +1595,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async logoutUser(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).logoutUser(options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.logoutUser(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * This can only be done by the logged in user. @@ -1924,11 +1607,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async updateUser(username: string, body: User, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).updateUser(username, body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.updateUser(username, body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; @@ -1938,6 +1618,7 @@ export const UserApiFp = function(configuration?: Configuration) { * @export */ export const UserApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = UserApiFp(configuration) return { /** * This can only be done by the logged in user. @@ -1947,7 +1628,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ createUser(body: User, options?: any): AxiosPromise { - return UserApiFp(configuration).createUser(body, options).then((request) => request(axios, basePath)); + return localVarFp.createUser(body, options).then((request) => request(axios, basePath)); }, /** * @@ -1957,7 +1638,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ createUsersWithArrayInput(body: Array, options?: any): AxiosPromise { - return UserApiFp(configuration).createUsersWithArrayInput(body, options).then((request) => request(axios, basePath)); + return localVarFp.createUsersWithArrayInput(body, options).then((request) => request(axios, basePath)); }, /** * @@ -1967,7 +1648,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ createUsersWithListInput(body: Array, options?: any): AxiosPromise { - return UserApiFp(configuration).createUsersWithListInput(body, options).then((request) => request(axios, basePath)); + return localVarFp.createUsersWithListInput(body, options).then((request) => request(axios, basePath)); }, /** * This can only be done by the logged in user. @@ -1977,7 +1658,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ deleteUser(username: string, options?: any): AxiosPromise { - return UserApiFp(configuration).deleteUser(username, options).then((request) => request(axios, basePath)); + return localVarFp.deleteUser(username, options).then((request) => request(axios, basePath)); }, /** * @@ -1987,7 +1668,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ getUserByName(username: string, options?: any): AxiosPromise { - return UserApiFp(configuration).getUserByName(username, options).then((request) => request(axios, basePath)); + return localVarFp.getUserByName(username, options).then((request) => request(axios, basePath)); }, /** * @@ -1998,7 +1679,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ loginUser(username: string, password: string, options?: any): AxiosPromise { - return UserApiFp(configuration).loginUser(username, password, options).then((request) => request(axios, basePath)); + return localVarFp.loginUser(username, password, options).then((request) => request(axios, basePath)); }, /** * @@ -2007,7 +1688,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ logoutUser(options?: any): AxiosPromise { - return UserApiFp(configuration).logoutUser(options).then((request) => request(axios, basePath)); + return localVarFp.logoutUser(options).then((request) => request(axios, basePath)); }, /** * This can only be done by the logged in user. @@ -2018,7 +1699,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ updateUser(username: string, body: User, options?: any): AxiosPromise { - return UserApiFp(configuration).updateUser(username, body, options).then((request) => request(axios, basePath)); + return localVarFp.updateUser(username, body, options).then((request) => request(axios, basePath)); }, }; }; diff --git a/samples/client/petstore/typescript-axios/builds/default/common.ts b/samples/client/petstore/typescript-axios/builds/default/common.ts new file mode 100644 index 00000000000..23e6a699c68 --- /dev/null +++ b/samples/client/petstore/typescript-axios/builds/default/common.ts @@ -0,0 +1,131 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * OpenAPI Petstore + * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. + * + * The version of the OpenAPI document: 1.0.0 + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +import { Configuration } from "./configuration"; +import { RequiredError, RequestArgs } from "./base"; +import { AxiosInstance } from 'axios'; + +/** + * + * @export + */ +export const DUMMY_BASE_URL = 'https://example.com' + +/** + * + * @throws {RequiredError} + * @export + */ +export const assertParamExists = function (functionName: string, paramName: string, paramValue: unknown) { + if (paramValue === null || paramValue === undefined) { + throw new RequiredError(paramName, `Required parameter ${paramName} was null or undefined when calling ${functionName}.`); + } +} + +/** + * + * @export + */ +export const setApiKeyToObject = async function (object: any, keyParamName: string, configuration?: Configuration) { + if (configuration && configuration.apiKey) { + const localVarApiKeyValue = typeof configuration.apiKey === 'function' + ? await configuration.apiKey(keyParamName) + : await configuration.apiKey; + object[keyParamName] = localVarApiKeyValue; + } +} + +/** + * + * @export + */ +export const setBasicAuthToObject = function (object: any, configuration?: Configuration) { + if (configuration && (configuration.username || configuration.password)) { + object["auth"] = { username: configuration.username, password: configuration.password }; + } +} + +/** + * + * @export + */ +export const setBearerAuthToObject = async function (object: any, configuration?: Configuration) { + if (configuration && configuration.accessToken) { + const accessToken = typeof configuration.accessToken === 'function' + ? await configuration.accessToken() + : await configuration.accessToken; + object["Authorization"] = "Bearer " + accessToken; + } +} + +/** + * + * @export + */ +export const setOAuthToObject = async function (object: any, name: string, scopes: string[], configuration?: Configuration) { + if (configuration && configuration.accessToken) { + const localVarAccessTokenValue = typeof configuration.accessToken === 'function' + ? await configuration.accessToken(name, scopes) + : await configuration.accessToken; + object["Authorization"] = "Bearer " + localVarAccessTokenValue; + } +} + +/** + * + * @export + */ +export const setSearchParams = function (url: URL, ...objects: any[]) { + const searchParams = new URLSearchParams(url.search); + for (const object of objects) { + for (const key in object) { + searchParams.set(key, object[key]); + } + } + url.search = searchParams.toString(); +} + +/** + * + * @export + */ +export const serializeDataIfNeeded = function (value: any, requestOptions: any, configuration?: Configuration) { + const nonString = typeof value !== 'string'; + const needsSerialization = nonString && configuration && configuration.isJsonMime + ? configuration.isJsonMime(requestOptions.headers['Content-Type']) + : nonString; + return needsSerialization + ? JSON.stringify(value !== undefined ? value : {}) + : (value || ""); +} + +/** + * + * @export + */ +export const toPathString = function (url: URL) { + return url.pathname + url.search + url.hash +} + +/** + * + * @export + */ +export const createRequestFunction = function (axiosArgs: RequestArgs, globalAxios: AxiosInstance, BASE_PATH: string, configuration?: Configuration) { + return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { + const axiosRequestArgs = {...axiosArgs.options, url: (configuration?.basePath || basePath) + axiosArgs.url}; + return axios.request(axiosRequestArgs); + }; +} diff --git a/samples/client/petstore/typescript-axios/builds/es6-target/.openapi-generator/FILES b/samples/client/petstore/typescript-axios/builds/es6-target/.openapi-generator/FILES index 3a45f5700dd..534fae710fb 100644 --- a/samples/client/petstore/typescript-axios/builds/es6-target/.openapi-generator/FILES +++ b/samples/client/petstore/typescript-axios/builds/es6-target/.openapi-generator/FILES @@ -3,6 +3,7 @@ README.md api.ts base.ts +common.ts configuration.ts git_push.sh index.ts diff --git a/samples/client/petstore/typescript-axios/builds/es6-target/api.ts b/samples/client/petstore/typescript-axios/builds/es6-target/api.ts index 1aca2afe908..856fb0a4829 100644 --- a/samples/client/petstore/typescript-axios/builds/es6-target/api.ts +++ b/samples/client/petstore/typescript-axios/builds/es6-target/api.ts @@ -17,6 +17,8 @@ import { Configuration } from './configuration'; import globalAxios, { AxiosPromise, AxiosInstance } from 'axios'; // Some imports not used depending on template conditions // @ts-ignore +import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from './common'; +// @ts-ignore import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from './base'; /** @@ -261,12 +263,10 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ addPet: async (body: Pet, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling addPet.'); - } + assertParamExists('addPet', 'body', body) const localVarPath = `/pet`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -278,37 +278,19 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -322,13 +304,11 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ deletePet: async (petId: number, apiKey?: string, options: any = {}): Promise => { // verify required parameter 'petId' is not null or undefined - if (petId === null || petId === undefined) { - throw new RequiredError('petId','Required parameter petId was null or undefined when calling deletePet.'); - } + assertParamExists('deletePet', 'petId', petId) const localVarPath = `/pet/{petId}` .replace(`{${"petId"}}`, encodeURIComponent(String(petId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -340,12 +320,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (apiKey !== undefined && apiKey !== null) { localVarHeaderParameter['api_key'] = String(apiKey); @@ -353,19 +328,12 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -378,12 +346,10 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ findPetsByStatus: async (status: Array<'available' | 'pending' | 'sold'>, options: any = {}): Promise => { // verify required parameter 'status' is not null or undefined - if (status === null || status === undefined) { - throw new RequiredError('status','Required parameter status was null or undefined when calling findPetsByStatus.'); - } + assertParamExists('findPetsByStatus', 'status', status) const localVarPath = `/pet/findByStatus`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -395,12 +361,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (status) { localVarQueryParameter['status'] = status.join(COLLECTION_FORMATS.csv); @@ -408,19 +369,12 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -433,12 +387,10 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ findPetsByTags: async (tags: Array, options: any = {}): Promise => { // verify required parameter 'tags' is not null or undefined - if (tags === null || tags === undefined) { - throw new RequiredError('tags','Required parameter tags was null or undefined when calling findPetsByTags.'); - } + assertParamExists('findPetsByTags', 'tags', tags) const localVarPath = `/pet/findByTags`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -450,12 +402,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (tags) { localVarQueryParameter['tags'] = tags.join(COLLECTION_FORMATS.csv); @@ -463,19 +410,12 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -488,13 +428,11 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ getPetById: async (petId: number, options: any = {}): Promise => { // verify required parameter 'petId' is not null or undefined - if (petId === null || petId === undefined) { - throw new RequiredError('petId','Required parameter petId was null or undefined when calling getPetById.'); - } + assertParamExists('getPetById', 'petId', petId) const localVarPath = `/pet/{petId}` .replace(`{${"petId"}}`, encodeURIComponent(String(petId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -505,28 +443,16 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) const localVarQueryParameter = {} as any; // authentication api_key required - if (configuration && configuration.apiKey) { - const localVarApiKeyValue = typeof configuration.apiKey === 'function' - ? await configuration.apiKey("api_key") - : await configuration.apiKey; - localVarHeaderParameter["api_key"] = localVarApiKeyValue; - } + await setApiKeyToObject(localVarHeaderParameter, "api_key", configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -539,12 +465,10 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ updatePet: async (body: Pet, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling updatePet.'); - } + assertParamExists('updatePet', 'body', body) const localVarPath = `/pet`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -556,37 +480,19 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -601,13 +507,11 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ updatePetWithForm: async (petId: number, name?: string, status?: string, options: any = {}): Promise => { // verify required parameter 'petId' is not null or undefined - if (petId === null || petId === undefined) { - throw new RequiredError('petId','Required parameter petId was null or undefined when calling updatePetWithForm.'); - } + assertParamExists('updatePetWithForm', 'petId', petId) const localVarPath = `/pet/{petId}` .replace(`{${"petId"}}`, encodeURIComponent(String(petId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -620,12 +524,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (name !== undefined) { @@ -639,20 +538,13 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/x-www-form-urlencoded'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = localVarFormParams.toString(); return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -667,13 +559,11 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ uploadFile: async (petId: number, additionalMetadata?: string, file?: any, options: any = {}): Promise => { // verify required parameter 'petId' is not null or undefined - if (petId === null || petId === undefined) { - throw new RequiredError('petId','Required parameter petId was null or undefined when calling uploadFile.'); - } + assertParamExists('uploadFile', 'petId', petId) const localVarPath = `/pet/{petId}/uploadImage` .replace(`{${"petId"}}`, encodeURIComponent(String(petId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -686,12 +576,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (additionalMetadata !== undefined) { @@ -705,20 +590,13 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'multipart/form-data'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = localVarFormParams; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -730,6 +608,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) * @export */ export const PetApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = PetApiAxiosParamCreator(configuration) return { /** * @@ -739,11 +618,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async addPet(body: Pet, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).addPet(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.addPet(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -754,11 +630,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async deletePet(petId: number, apiKey?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).deletePet(petId, apiKey, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.deletePet(petId, apiKey, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Multiple status values can be provided with comma separated strings @@ -768,11 +641,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async findPetsByStatus(status: Array<'available' | 'pending' | 'sold'>, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).findPetsByStatus(status, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.findPetsByStatus(status, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. @@ -782,11 +652,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async findPetsByTags(tags: Array, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).findPetsByTags(tags, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.findPetsByTags(tags, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Returns a single pet @@ -796,11 +663,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async getPetById(petId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).getPetById(petId, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.getPetById(petId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -810,11 +674,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async updatePet(body: Pet, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).updatePet(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.updatePet(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -826,11 +687,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async updatePetWithForm(petId: number, name?: string, status?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).updatePetWithForm(petId, name, status, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.updatePetWithForm(petId, name, status, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -842,11 +700,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async uploadFile(petId: number, additionalMetadata?: string, file?: any, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).uploadFile(petId, additionalMetadata, file, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.uploadFile(petId, additionalMetadata, file, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; @@ -856,6 +711,7 @@ export const PetApiFp = function(configuration?: Configuration) { * @export */ export const PetApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = PetApiFp(configuration) return { /** * @@ -865,7 +721,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ addPet(body: Pet, options?: any): AxiosPromise { - return PetApiFp(configuration).addPet(body, options).then((request) => request(axios, basePath)); + return localVarFp.addPet(body, options).then((request) => request(axios, basePath)); }, /** * @@ -876,7 +732,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ deletePet(petId: number, apiKey?: string, options?: any): AxiosPromise { - return PetApiFp(configuration).deletePet(petId, apiKey, options).then((request) => request(axios, basePath)); + return localVarFp.deletePet(petId, apiKey, options).then((request) => request(axios, basePath)); }, /** * Multiple status values can be provided with comma separated strings @@ -886,7 +742,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ findPetsByStatus(status: Array<'available' | 'pending' | 'sold'>, options?: any): AxiosPromise> { - return PetApiFp(configuration).findPetsByStatus(status, options).then((request) => request(axios, basePath)); + return localVarFp.findPetsByStatus(status, options).then((request) => request(axios, basePath)); }, /** * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. @@ -896,7 +752,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ findPetsByTags(tags: Array, options?: any): AxiosPromise> { - return PetApiFp(configuration).findPetsByTags(tags, options).then((request) => request(axios, basePath)); + return localVarFp.findPetsByTags(tags, options).then((request) => request(axios, basePath)); }, /** * Returns a single pet @@ -906,7 +762,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ getPetById(petId: number, options?: any): AxiosPromise { - return PetApiFp(configuration).getPetById(petId, options).then((request) => request(axios, basePath)); + return localVarFp.getPetById(petId, options).then((request) => request(axios, basePath)); }, /** * @@ -916,7 +772,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ updatePet(body: Pet, options?: any): AxiosPromise { - return PetApiFp(configuration).updatePet(body, options).then((request) => request(axios, basePath)); + return localVarFp.updatePet(body, options).then((request) => request(axios, basePath)); }, /** * @@ -928,7 +784,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ updatePetWithForm(petId: number, name?: string, status?: string, options?: any): AxiosPromise { - return PetApiFp(configuration).updatePetWithForm(petId, name, status, options).then((request) => request(axios, basePath)); + return localVarFp.updatePetWithForm(petId, name, status, options).then((request) => request(axios, basePath)); }, /** * @@ -940,7 +796,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ uploadFile(petId: number, additionalMetadata?: string, file?: any, options?: any): AxiosPromise { - return PetApiFp(configuration).uploadFile(petId, additionalMetadata, file, options).then((request) => request(axios, basePath)); + return localVarFp.uploadFile(petId, additionalMetadata, file, options).then((request) => request(axios, basePath)); }, }; }; @@ -1070,13 +926,11 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration */ deleteOrder: async (orderId: string, options: any = {}): Promise => { // verify required parameter 'orderId' is not null or undefined - if (orderId === null || orderId === undefined) { - throw new RequiredError('orderId','Required parameter orderId was null or undefined when calling deleteOrder.'); - } + assertParamExists('deleteOrder', 'orderId', orderId) const localVarPath = `/store/order/{orderId}` .replace(`{${"orderId"}}`, encodeURIComponent(String(orderId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1088,19 +942,12 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1113,7 +960,7 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration getInventory: async (options: any = {}): Promise => { const localVarPath = `/store/inventory`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1124,28 +971,16 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration const localVarQueryParameter = {} as any; // authentication api_key required - if (configuration && configuration.apiKey) { - const localVarApiKeyValue = typeof configuration.apiKey === 'function' - ? await configuration.apiKey("api_key") - : await configuration.apiKey; - localVarHeaderParameter["api_key"] = localVarApiKeyValue; - } + await setApiKeyToObject(localVarHeaderParameter, "api_key", configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1158,13 +993,11 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration */ getOrderById: async (orderId: number, options: any = {}): Promise => { // verify required parameter 'orderId' is not null or undefined - if (orderId === null || orderId === undefined) { - throw new RequiredError('orderId','Required parameter orderId was null or undefined when calling getOrderById.'); - } + assertParamExists('getOrderById', 'orderId', orderId) const localVarPath = `/store/order/{orderId}` .replace(`{${"orderId"}}`, encodeURIComponent(String(orderId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1176,19 +1009,12 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1201,12 +1027,10 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration */ placeOrder: async (body: Order, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling placeOrder.'); - } + assertParamExists('placeOrder', 'body', body) const localVarPath = `/store/order`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1220,26 +1044,13 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1251,6 +1062,7 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration * @export */ export const StoreApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = StoreApiAxiosParamCreator(configuration) return { /** * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors @@ -1260,11 +1072,8 @@ export const StoreApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async deleteOrder(orderId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await StoreApiAxiosParamCreator(configuration).deleteOrder(orderId, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteOrder(orderId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Returns a map of status codes to quantities @@ -1273,11 +1082,8 @@ export const StoreApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async getInventory(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<{ [key: string]: number; }>> { - const localVarAxiosArgs = await StoreApiAxiosParamCreator(configuration).getInventory(options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.getInventory(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions @@ -1287,11 +1093,8 @@ export const StoreApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async getOrderById(orderId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await StoreApiAxiosParamCreator(configuration).getOrderById(orderId, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.getOrderById(orderId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -1301,11 +1104,8 @@ export const StoreApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async placeOrder(body: Order, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await StoreApiAxiosParamCreator(configuration).placeOrder(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.placeOrder(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; @@ -1315,6 +1115,7 @@ export const StoreApiFp = function(configuration?: Configuration) { * @export */ export const StoreApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = StoreApiFp(configuration) return { /** * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors @@ -1324,7 +1125,7 @@ export const StoreApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ deleteOrder(orderId: string, options?: any): AxiosPromise { - return StoreApiFp(configuration).deleteOrder(orderId, options).then((request) => request(axios, basePath)); + return localVarFp.deleteOrder(orderId, options).then((request) => request(axios, basePath)); }, /** * Returns a map of status codes to quantities @@ -1333,7 +1134,7 @@ export const StoreApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ getInventory(options?: any): AxiosPromise<{ [key: string]: number; }> { - return StoreApiFp(configuration).getInventory(options).then((request) => request(axios, basePath)); + return localVarFp.getInventory(options).then((request) => request(axios, basePath)); }, /** * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions @@ -1343,7 +1144,7 @@ export const StoreApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ getOrderById(orderId: number, options?: any): AxiosPromise { - return StoreApiFp(configuration).getOrderById(orderId, options).then((request) => request(axios, basePath)); + return localVarFp.getOrderById(orderId, options).then((request) => request(axios, basePath)); }, /** * @@ -1353,7 +1154,7 @@ export const StoreApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ placeOrder(body: Order, options?: any): AxiosPromise { - return StoreApiFp(configuration).placeOrder(body, options).then((request) => request(axios, basePath)); + return localVarFp.placeOrder(body, options).then((request) => request(axios, basePath)); }, }; }; @@ -1429,12 +1230,10 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ createUser: async (body: User, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling createUser.'); - } + assertParamExists('createUser', 'body', body) const localVarPath = `/user`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1448,26 +1247,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1480,12 +1266,10 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ createUsersWithArrayInput: async (body: Array, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling createUsersWithArrayInput.'); - } + assertParamExists('createUsersWithArrayInput', 'body', body) const localVarPath = `/user/createWithArray`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1499,26 +1283,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1531,12 +1302,10 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ createUsersWithListInput: async (body: Array, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling createUsersWithListInput.'); - } + assertParamExists('createUsersWithListInput', 'body', body) const localVarPath = `/user/createWithList`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1550,26 +1319,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1582,13 +1338,11 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ deleteUser: async (username: string, options: any = {}): Promise => { // verify required parameter 'username' is not null or undefined - if (username === null || username === undefined) { - throw new RequiredError('username','Required parameter username was null or undefined when calling deleteUser.'); - } + assertParamExists('deleteUser', 'username', username) const localVarPath = `/user/{username}` .replace(`{${"username"}}`, encodeURIComponent(String(username))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1600,19 +1354,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1625,13 +1372,11 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ getUserByName: async (username: string, options: any = {}): Promise => { // verify required parameter 'username' is not null or undefined - if (username === null || username === undefined) { - throw new RequiredError('username','Required parameter username was null or undefined when calling getUserByName.'); - } + assertParamExists('getUserByName', 'username', username) const localVarPath = `/user/{username}` .replace(`{${"username"}}`, encodeURIComponent(String(username))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1643,19 +1388,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1669,16 +1407,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ loginUser: async (username: string, password: string, options: any = {}): Promise => { // verify required parameter 'username' is not null or undefined - if (username === null || username === undefined) { - throw new RequiredError('username','Required parameter username was null or undefined when calling loginUser.'); - } + assertParamExists('loginUser', 'username', username) // verify required parameter 'password' is not null or undefined - if (password === null || password === undefined) { - throw new RequiredError('password','Required parameter password was null or undefined when calling loginUser.'); - } + assertParamExists('loginUser', 'password', password) const localVarPath = `/user/login`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1698,19 +1432,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1723,7 +1450,7 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) logoutUser: async (options: any = {}): Promise => { const localVarPath = `/user/logout`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1735,19 +1462,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1761,17 +1481,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ updateUser: async (username: string, body: User, options: any = {}): Promise => { // verify required parameter 'username' is not null or undefined - if (username === null || username === undefined) { - throw new RequiredError('username','Required parameter username was null or undefined when calling updateUser.'); - } + assertParamExists('updateUser', 'username', username) // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling updateUser.'); - } + assertParamExists('updateUser', 'body', body) const localVarPath = `/user/{username}` .replace(`{${"username"}}`, encodeURIComponent(String(username))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1785,26 +1501,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1816,6 +1519,7 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) * @export */ export const UserApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = UserApiAxiosParamCreator(configuration) return { /** * This can only be done by the logged in user. @@ -1825,11 +1529,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async createUser(body: User, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).createUser(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.createUser(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -1839,11 +1540,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async createUsersWithArrayInput(body: Array, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).createUsersWithArrayInput(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.createUsersWithArrayInput(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -1853,11 +1551,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async createUsersWithListInput(body: Array, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).createUsersWithListInput(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.createUsersWithListInput(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * This can only be done by the logged in user. @@ -1867,11 +1562,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async deleteUser(username: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).deleteUser(username, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteUser(username, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -1881,11 +1573,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async getUserByName(username: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).getUserByName(username, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.getUserByName(username, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -1896,11 +1585,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async loginUser(username: string, password: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).loginUser(username, password, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.loginUser(username, password, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -1909,11 +1595,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async logoutUser(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).logoutUser(options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.logoutUser(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * This can only be done by the logged in user. @@ -1924,11 +1607,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async updateUser(username: string, body: User, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).updateUser(username, body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.updateUser(username, body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; @@ -1938,6 +1618,7 @@ export const UserApiFp = function(configuration?: Configuration) { * @export */ export const UserApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = UserApiFp(configuration) return { /** * This can only be done by the logged in user. @@ -1947,7 +1628,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ createUser(body: User, options?: any): AxiosPromise { - return UserApiFp(configuration).createUser(body, options).then((request) => request(axios, basePath)); + return localVarFp.createUser(body, options).then((request) => request(axios, basePath)); }, /** * @@ -1957,7 +1638,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ createUsersWithArrayInput(body: Array, options?: any): AxiosPromise { - return UserApiFp(configuration).createUsersWithArrayInput(body, options).then((request) => request(axios, basePath)); + return localVarFp.createUsersWithArrayInput(body, options).then((request) => request(axios, basePath)); }, /** * @@ -1967,7 +1648,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ createUsersWithListInput(body: Array, options?: any): AxiosPromise { - return UserApiFp(configuration).createUsersWithListInput(body, options).then((request) => request(axios, basePath)); + return localVarFp.createUsersWithListInput(body, options).then((request) => request(axios, basePath)); }, /** * This can only be done by the logged in user. @@ -1977,7 +1658,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ deleteUser(username: string, options?: any): AxiosPromise { - return UserApiFp(configuration).deleteUser(username, options).then((request) => request(axios, basePath)); + return localVarFp.deleteUser(username, options).then((request) => request(axios, basePath)); }, /** * @@ -1987,7 +1668,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ getUserByName(username: string, options?: any): AxiosPromise { - return UserApiFp(configuration).getUserByName(username, options).then((request) => request(axios, basePath)); + return localVarFp.getUserByName(username, options).then((request) => request(axios, basePath)); }, /** * @@ -1998,7 +1679,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ loginUser(username: string, password: string, options?: any): AxiosPromise { - return UserApiFp(configuration).loginUser(username, password, options).then((request) => request(axios, basePath)); + return localVarFp.loginUser(username, password, options).then((request) => request(axios, basePath)); }, /** * @@ -2007,7 +1688,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ logoutUser(options?: any): AxiosPromise { - return UserApiFp(configuration).logoutUser(options).then((request) => request(axios, basePath)); + return localVarFp.logoutUser(options).then((request) => request(axios, basePath)); }, /** * This can only be done by the logged in user. @@ -2018,7 +1699,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ updateUser(username: string, body: User, options?: any): AxiosPromise { - return UserApiFp(configuration).updateUser(username, body, options).then((request) => request(axios, basePath)); + return localVarFp.updateUser(username, body, options).then((request) => request(axios, basePath)); }, }; }; diff --git a/samples/client/petstore/typescript-axios/builds/es6-target/common.ts b/samples/client/petstore/typescript-axios/builds/es6-target/common.ts new file mode 100644 index 00000000000..23e6a699c68 --- /dev/null +++ b/samples/client/petstore/typescript-axios/builds/es6-target/common.ts @@ -0,0 +1,131 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * OpenAPI Petstore + * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. + * + * The version of the OpenAPI document: 1.0.0 + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +import { Configuration } from "./configuration"; +import { RequiredError, RequestArgs } from "./base"; +import { AxiosInstance } from 'axios'; + +/** + * + * @export + */ +export const DUMMY_BASE_URL = 'https://example.com' + +/** + * + * @throws {RequiredError} + * @export + */ +export const assertParamExists = function (functionName: string, paramName: string, paramValue: unknown) { + if (paramValue === null || paramValue === undefined) { + throw new RequiredError(paramName, `Required parameter ${paramName} was null or undefined when calling ${functionName}.`); + } +} + +/** + * + * @export + */ +export const setApiKeyToObject = async function (object: any, keyParamName: string, configuration?: Configuration) { + if (configuration && configuration.apiKey) { + const localVarApiKeyValue = typeof configuration.apiKey === 'function' + ? await configuration.apiKey(keyParamName) + : await configuration.apiKey; + object[keyParamName] = localVarApiKeyValue; + } +} + +/** + * + * @export + */ +export const setBasicAuthToObject = function (object: any, configuration?: Configuration) { + if (configuration && (configuration.username || configuration.password)) { + object["auth"] = { username: configuration.username, password: configuration.password }; + } +} + +/** + * + * @export + */ +export const setBearerAuthToObject = async function (object: any, configuration?: Configuration) { + if (configuration && configuration.accessToken) { + const accessToken = typeof configuration.accessToken === 'function' + ? await configuration.accessToken() + : await configuration.accessToken; + object["Authorization"] = "Bearer " + accessToken; + } +} + +/** + * + * @export + */ +export const setOAuthToObject = async function (object: any, name: string, scopes: string[], configuration?: Configuration) { + if (configuration && configuration.accessToken) { + const localVarAccessTokenValue = typeof configuration.accessToken === 'function' + ? await configuration.accessToken(name, scopes) + : await configuration.accessToken; + object["Authorization"] = "Bearer " + localVarAccessTokenValue; + } +} + +/** + * + * @export + */ +export const setSearchParams = function (url: URL, ...objects: any[]) { + const searchParams = new URLSearchParams(url.search); + for (const object of objects) { + for (const key in object) { + searchParams.set(key, object[key]); + } + } + url.search = searchParams.toString(); +} + +/** + * + * @export + */ +export const serializeDataIfNeeded = function (value: any, requestOptions: any, configuration?: Configuration) { + const nonString = typeof value !== 'string'; + const needsSerialization = nonString && configuration && configuration.isJsonMime + ? configuration.isJsonMime(requestOptions.headers['Content-Type']) + : nonString; + return needsSerialization + ? JSON.stringify(value !== undefined ? value : {}) + : (value || ""); +} + +/** + * + * @export + */ +export const toPathString = function (url: URL) { + return url.pathname + url.search + url.hash +} + +/** + * + * @export + */ +export const createRequestFunction = function (axiosArgs: RequestArgs, globalAxios: AxiosInstance, BASE_PATH: string, configuration?: Configuration) { + return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { + const axiosRequestArgs = {...axiosArgs.options, url: (configuration?.basePath || basePath) + axiosArgs.url}; + return axios.request(axiosRequestArgs); + }; +} diff --git a/samples/client/petstore/typescript-axios/builds/with-complex-headers/.openapi-generator/FILES b/samples/client/petstore/typescript-axios/builds/with-complex-headers/.openapi-generator/FILES index 5bef353ae38..a80cd4f07b0 100644 --- a/samples/client/petstore/typescript-axios/builds/with-complex-headers/.openapi-generator/FILES +++ b/samples/client/petstore/typescript-axios/builds/with-complex-headers/.openapi-generator/FILES @@ -2,6 +2,7 @@ .npmignore api.ts base.ts +common.ts configuration.ts git_push.sh index.ts diff --git a/samples/client/petstore/typescript-axios/builds/with-complex-headers/api.ts b/samples/client/petstore/typescript-axios/builds/with-complex-headers/api.ts index 9b2c0fd3fed..85c32a979e2 100644 --- a/samples/client/petstore/typescript-axios/builds/with-complex-headers/api.ts +++ b/samples/client/petstore/typescript-axios/builds/with-complex-headers/api.ts @@ -17,6 +17,8 @@ import { Configuration } from './configuration'; import globalAxios, { AxiosPromise, AxiosInstance } from 'axios'; // Some imports not used depending on template conditions // @ts-ignore +import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from './common'; +// @ts-ignore import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from './base'; /** @@ -263,12 +265,10 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ addPet: async (pet: Pet, header1?: Pet, header2?: Array, options: any = {}): Promise => { // verify required parameter 'pet' is not null or undefined - if (pet === null || pet === undefined) { - throw new RequiredError('pet','Required parameter pet was null or undefined when calling addPet.'); - } + assertParamExists('addPet', 'pet', pet) const localVarPath = `/pet`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -280,12 +280,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (header1 !== undefined && header1 !== null) { localVarHeaderParameter['header1'] = String(JSON.stringify(header1)); @@ -300,26 +295,13 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof pet !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(pet !== undefined ? pet : {}) - : (pet || ""); + localVarRequestOptions.data = serializeDataIfNeeded(pet, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -333,13 +315,11 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ deletePet: async (petId: number, apiKey?: string, options: any = {}): Promise => { // verify required parameter 'petId' is not null or undefined - if (petId === null || petId === undefined) { - throw new RequiredError('petId','Required parameter petId was null or undefined when calling deletePet.'); - } + assertParamExists('deletePet', 'petId', petId) const localVarPath = `/pet/{petId}` .replace(`{${"petId"}}`, encodeURIComponent(String(petId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -351,12 +331,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (apiKey !== undefined && apiKey !== null) { localVarHeaderParameter['api_key'] = String(apiKey); @@ -364,19 +339,12 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -389,12 +357,10 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ findPetsByStatus: async (status: Array<'available' | 'pending' | 'sold'>, options: any = {}): Promise => { // verify required parameter 'status' is not null or undefined - if (status === null || status === undefined) { - throw new RequiredError('status','Required parameter status was null or undefined when calling findPetsByStatus.'); - } + assertParamExists('findPetsByStatus', 'status', status) const localVarPath = `/pet/findByStatus`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -406,12 +372,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (status) { localVarQueryParameter['status'] = status.join(COLLECTION_FORMATS.csv); @@ -419,19 +380,12 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -444,12 +398,10 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ findPetsByTags: async (tags: Array, options: any = {}): Promise => { // verify required parameter 'tags' is not null or undefined - if (tags === null || tags === undefined) { - throw new RequiredError('tags','Required parameter tags was null or undefined when calling findPetsByTags.'); - } + assertParamExists('findPetsByTags', 'tags', tags) const localVarPath = `/pet/findByTags`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -461,12 +413,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (tags) { localVarQueryParameter['tags'] = tags.join(COLLECTION_FORMATS.csv); @@ -474,19 +421,12 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -499,13 +439,11 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ getPetById: async (petId: number, options: any = {}): Promise => { // verify required parameter 'petId' is not null or undefined - if (petId === null || petId === undefined) { - throw new RequiredError('petId','Required parameter petId was null or undefined when calling getPetById.'); - } + assertParamExists('getPetById', 'petId', petId) const localVarPath = `/pet/{petId}` .replace(`{${"petId"}}`, encodeURIComponent(String(petId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -516,28 +454,16 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) const localVarQueryParameter = {} as any; // authentication api_key required - if (configuration && configuration.apiKey) { - const localVarApiKeyValue = typeof configuration.apiKey === 'function' - ? await configuration.apiKey("api_key") - : await configuration.apiKey; - localVarHeaderParameter["api_key"] = localVarApiKeyValue; - } + await setApiKeyToObject(localVarHeaderParameter, "api_key", configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -550,12 +476,10 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ updatePet: async (pet: Pet, options: any = {}): Promise => { // verify required parameter 'pet' is not null or undefined - if (pet === null || pet === undefined) { - throw new RequiredError('pet','Required parameter pet was null or undefined when calling updatePet.'); - } + assertParamExists('updatePet', 'pet', pet) const localVarPath = `/pet`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -567,37 +491,19 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof pet !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(pet !== undefined ? pet : {}) - : (pet || ""); + localVarRequestOptions.data = serializeDataIfNeeded(pet, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -612,13 +518,11 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ updatePetWithForm: async (petId: number, name?: string, status?: string, options: any = {}): Promise => { // verify required parameter 'petId' is not null or undefined - if (petId === null || petId === undefined) { - throw new RequiredError('petId','Required parameter petId was null or undefined when calling updatePetWithForm.'); - } + assertParamExists('updatePetWithForm', 'petId', petId) const localVarPath = `/pet/{petId}` .replace(`{${"petId"}}`, encodeURIComponent(String(petId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -631,12 +535,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (name !== undefined) { @@ -650,20 +549,13 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/x-www-form-urlencoded'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = localVarFormParams.toString(); return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -678,13 +570,11 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ uploadFile: async (petId: number, additionalMetadata?: string, file?: any, options: any = {}): Promise => { // verify required parameter 'petId' is not null or undefined - if (petId === null || petId === undefined) { - throw new RequiredError('petId','Required parameter petId was null or undefined when calling uploadFile.'); - } + assertParamExists('uploadFile', 'petId', petId) const localVarPath = `/pet/{petId}/uploadImage` .replace(`{${"petId"}}`, encodeURIComponent(String(petId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -697,12 +587,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (additionalMetadata !== undefined) { @@ -716,20 +601,13 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'multipart/form-data'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = localVarFormParams; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -741,6 +619,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) * @export */ export const PetApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = PetApiAxiosParamCreator(configuration) return { /** * @@ -752,11 +631,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async addPet(pet: Pet, header1?: Pet, header2?: Array, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).addPet(pet, header1, header2, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.addPet(pet, header1, header2, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -767,11 +643,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async deletePet(petId: number, apiKey?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).deletePet(petId, apiKey, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.deletePet(petId, apiKey, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Multiple status values can be provided with comma separated strings @@ -781,11 +654,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async findPetsByStatus(status: Array<'available' | 'pending' | 'sold'>, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).findPetsByStatus(status, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.findPetsByStatus(status, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. @@ -795,11 +665,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async findPetsByTags(tags: Array, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).findPetsByTags(tags, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.findPetsByTags(tags, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Returns a single pet @@ -809,11 +676,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async getPetById(petId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).getPetById(petId, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.getPetById(petId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -823,11 +687,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async updatePet(pet: Pet, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).updatePet(pet, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.updatePet(pet, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -839,11 +700,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async updatePetWithForm(petId: number, name?: string, status?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).updatePetWithForm(petId, name, status, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.updatePetWithForm(petId, name, status, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -855,11 +713,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async uploadFile(petId: number, additionalMetadata?: string, file?: any, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).uploadFile(petId, additionalMetadata, file, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.uploadFile(petId, additionalMetadata, file, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; @@ -869,6 +724,7 @@ export const PetApiFp = function(configuration?: Configuration) { * @export */ export const PetApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = PetApiFp(configuration) return { /** * @@ -880,7 +736,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ addPet(pet: Pet, header1?: Pet, header2?: Array, options?: any): AxiosPromise { - return PetApiFp(configuration).addPet(pet, header1, header2, options).then((request) => request(axios, basePath)); + return localVarFp.addPet(pet, header1, header2, options).then((request) => request(axios, basePath)); }, /** * @@ -891,7 +747,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ deletePet(petId: number, apiKey?: string, options?: any): AxiosPromise { - return PetApiFp(configuration).deletePet(petId, apiKey, options).then((request) => request(axios, basePath)); + return localVarFp.deletePet(petId, apiKey, options).then((request) => request(axios, basePath)); }, /** * Multiple status values can be provided with comma separated strings @@ -901,7 +757,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ findPetsByStatus(status: Array<'available' | 'pending' | 'sold'>, options?: any): AxiosPromise> { - return PetApiFp(configuration).findPetsByStatus(status, options).then((request) => request(axios, basePath)); + return localVarFp.findPetsByStatus(status, options).then((request) => request(axios, basePath)); }, /** * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. @@ -911,7 +767,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ findPetsByTags(tags: Array, options?: any): AxiosPromise> { - return PetApiFp(configuration).findPetsByTags(tags, options).then((request) => request(axios, basePath)); + return localVarFp.findPetsByTags(tags, options).then((request) => request(axios, basePath)); }, /** * Returns a single pet @@ -921,7 +777,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ getPetById(petId: number, options?: any): AxiosPromise { - return PetApiFp(configuration).getPetById(petId, options).then((request) => request(axios, basePath)); + return localVarFp.getPetById(petId, options).then((request) => request(axios, basePath)); }, /** * @@ -931,7 +787,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ updatePet(pet: Pet, options?: any): AxiosPromise { - return PetApiFp(configuration).updatePet(pet, options).then((request) => request(axios, basePath)); + return localVarFp.updatePet(pet, options).then((request) => request(axios, basePath)); }, /** * @@ -943,7 +799,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ updatePetWithForm(petId: number, name?: string, status?: string, options?: any): AxiosPromise { - return PetApiFp(configuration).updatePetWithForm(petId, name, status, options).then((request) => request(axios, basePath)); + return localVarFp.updatePetWithForm(petId, name, status, options).then((request) => request(axios, basePath)); }, /** * @@ -955,7 +811,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ uploadFile(petId: number, additionalMetadata?: string, file?: any, options?: any): AxiosPromise { - return PetApiFp(configuration).uploadFile(petId, additionalMetadata, file, options).then((request) => request(axios, basePath)); + return localVarFp.uploadFile(petId, additionalMetadata, file, options).then((request) => request(axios, basePath)); }, }; }; @@ -1087,13 +943,11 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration */ deleteOrder: async (orderId: string, options: any = {}): Promise => { // verify required parameter 'orderId' is not null or undefined - if (orderId === null || orderId === undefined) { - throw new RequiredError('orderId','Required parameter orderId was null or undefined when calling deleteOrder.'); - } + assertParamExists('deleteOrder', 'orderId', orderId) const localVarPath = `/store/order/{orderId}` .replace(`{${"orderId"}}`, encodeURIComponent(String(orderId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1105,19 +959,12 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1130,7 +977,7 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration getInventory: async (options: any = {}): Promise => { const localVarPath = `/store/inventory`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1141,28 +988,16 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration const localVarQueryParameter = {} as any; // authentication api_key required - if (configuration && configuration.apiKey) { - const localVarApiKeyValue = typeof configuration.apiKey === 'function' - ? await configuration.apiKey("api_key") - : await configuration.apiKey; - localVarHeaderParameter["api_key"] = localVarApiKeyValue; - } + await setApiKeyToObject(localVarHeaderParameter, "api_key", configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1175,13 +1010,11 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration */ getOrderById: async (orderId: number, options: any = {}): Promise => { // verify required parameter 'orderId' is not null or undefined - if (orderId === null || orderId === undefined) { - throw new RequiredError('orderId','Required parameter orderId was null or undefined when calling getOrderById.'); - } + assertParamExists('getOrderById', 'orderId', orderId) const localVarPath = `/store/order/{orderId}` .replace(`{${"orderId"}}`, encodeURIComponent(String(orderId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1193,19 +1026,12 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1218,12 +1044,10 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration */ placeOrder: async (order: Order, options: any = {}): Promise => { // verify required parameter 'order' is not null or undefined - if (order === null || order === undefined) { - throw new RequiredError('order','Required parameter order was null or undefined when calling placeOrder.'); - } + assertParamExists('placeOrder', 'order', order) const localVarPath = `/store/order`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1237,26 +1061,13 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof order !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(order !== undefined ? order : {}) - : (order || ""); + localVarRequestOptions.data = serializeDataIfNeeded(order, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1268,6 +1079,7 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration * @export */ export const StoreApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = StoreApiAxiosParamCreator(configuration) return { /** * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors @@ -1277,11 +1089,8 @@ export const StoreApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async deleteOrder(orderId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await StoreApiAxiosParamCreator(configuration).deleteOrder(orderId, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteOrder(orderId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Returns a map of status codes to quantities @@ -1290,11 +1099,8 @@ export const StoreApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async getInventory(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<{ [key: string]: number; }>> { - const localVarAxiosArgs = await StoreApiAxiosParamCreator(configuration).getInventory(options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.getInventory(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions @@ -1304,11 +1110,8 @@ export const StoreApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async getOrderById(orderId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await StoreApiAxiosParamCreator(configuration).getOrderById(orderId, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.getOrderById(orderId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -1318,11 +1121,8 @@ export const StoreApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async placeOrder(order: Order, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await StoreApiAxiosParamCreator(configuration).placeOrder(order, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.placeOrder(order, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; @@ -1332,6 +1132,7 @@ export const StoreApiFp = function(configuration?: Configuration) { * @export */ export const StoreApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = StoreApiFp(configuration) return { /** * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors @@ -1341,7 +1142,7 @@ export const StoreApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ deleteOrder(orderId: string, options?: any): AxiosPromise { - return StoreApiFp(configuration).deleteOrder(orderId, options).then((request) => request(axios, basePath)); + return localVarFp.deleteOrder(orderId, options).then((request) => request(axios, basePath)); }, /** * Returns a map of status codes to quantities @@ -1350,7 +1151,7 @@ export const StoreApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ getInventory(options?: any): AxiosPromise<{ [key: string]: number; }> { - return StoreApiFp(configuration).getInventory(options).then((request) => request(axios, basePath)); + return localVarFp.getInventory(options).then((request) => request(axios, basePath)); }, /** * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions @@ -1360,7 +1161,7 @@ export const StoreApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ getOrderById(orderId: number, options?: any): AxiosPromise { - return StoreApiFp(configuration).getOrderById(orderId, options).then((request) => request(axios, basePath)); + return localVarFp.getOrderById(orderId, options).then((request) => request(axios, basePath)); }, /** * @@ -1370,7 +1171,7 @@ export const StoreApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ placeOrder(order: Order, options?: any): AxiosPromise { - return StoreApiFp(configuration).placeOrder(order, options).then((request) => request(axios, basePath)); + return localVarFp.placeOrder(order, options).then((request) => request(axios, basePath)); }, }; }; @@ -1446,12 +1247,10 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ createUser: async (user: User, options: any = {}): Promise => { // verify required parameter 'user' is not null or undefined - if (user === null || user === undefined) { - throw new RequiredError('user','Required parameter user was null or undefined when calling createUser.'); - } + assertParamExists('createUser', 'user', user) const localVarPath = `/user`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1465,26 +1264,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof user !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(user !== undefined ? user : {}) - : (user || ""); + localVarRequestOptions.data = serializeDataIfNeeded(user, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1497,12 +1283,10 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ createUsersWithArrayInput: async (user: Array, options: any = {}): Promise => { // verify required parameter 'user' is not null or undefined - if (user === null || user === undefined) { - throw new RequiredError('user','Required parameter user was null or undefined when calling createUsersWithArrayInput.'); - } + assertParamExists('createUsersWithArrayInput', 'user', user) const localVarPath = `/user/createWithArray`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1516,26 +1300,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof user !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(user !== undefined ? user : {}) - : (user || ""); + localVarRequestOptions.data = serializeDataIfNeeded(user, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1548,12 +1319,10 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ createUsersWithListInput: async (user: Array, options: any = {}): Promise => { // verify required parameter 'user' is not null or undefined - if (user === null || user === undefined) { - throw new RequiredError('user','Required parameter user was null or undefined when calling createUsersWithListInput.'); - } + assertParamExists('createUsersWithListInput', 'user', user) const localVarPath = `/user/createWithList`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1567,26 +1336,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof user !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(user !== undefined ? user : {}) - : (user || ""); + localVarRequestOptions.data = serializeDataIfNeeded(user, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1599,13 +1355,11 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ deleteUser: async (username: string, options: any = {}): Promise => { // verify required parameter 'username' is not null or undefined - if (username === null || username === undefined) { - throw new RequiredError('username','Required parameter username was null or undefined when calling deleteUser.'); - } + assertParamExists('deleteUser', 'username', username) const localVarPath = `/user/{username}` .replace(`{${"username"}}`, encodeURIComponent(String(username))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1617,19 +1371,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1642,13 +1389,11 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ getUserByName: async (username: string, options: any = {}): Promise => { // verify required parameter 'username' is not null or undefined - if (username === null || username === undefined) { - throw new RequiredError('username','Required parameter username was null or undefined when calling getUserByName.'); - } + assertParamExists('getUserByName', 'username', username) const localVarPath = `/user/{username}` .replace(`{${"username"}}`, encodeURIComponent(String(username))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1660,19 +1405,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1686,16 +1424,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ loginUser: async (username: string, password: string, options: any = {}): Promise => { // verify required parameter 'username' is not null or undefined - if (username === null || username === undefined) { - throw new RequiredError('username','Required parameter username was null or undefined when calling loginUser.'); - } + assertParamExists('loginUser', 'username', username) // verify required parameter 'password' is not null or undefined - if (password === null || password === undefined) { - throw new RequiredError('password','Required parameter password was null or undefined when calling loginUser.'); - } + assertParamExists('loginUser', 'password', password) const localVarPath = `/user/login`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1715,19 +1449,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1740,7 +1467,7 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) logoutUser: async (options: any = {}): Promise => { const localVarPath = `/user/logout`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1752,19 +1479,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1778,17 +1498,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ updateUser: async (username: string, user: User, options: any = {}): Promise => { // verify required parameter 'username' is not null or undefined - if (username === null || username === undefined) { - throw new RequiredError('username','Required parameter username was null or undefined when calling updateUser.'); - } + assertParamExists('updateUser', 'username', username) // verify required parameter 'user' is not null or undefined - if (user === null || user === undefined) { - throw new RequiredError('user','Required parameter user was null or undefined when calling updateUser.'); - } + assertParamExists('updateUser', 'user', user) const localVarPath = `/user/{username}` .replace(`{${"username"}}`, encodeURIComponent(String(username))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1802,26 +1518,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof user !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(user !== undefined ? user : {}) - : (user || ""); + localVarRequestOptions.data = serializeDataIfNeeded(user, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1833,6 +1536,7 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) * @export */ export const UserApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = UserApiAxiosParamCreator(configuration) return { /** * This can only be done by the logged in user. @@ -1842,11 +1546,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async createUser(user: User, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).createUser(user, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.createUser(user, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -1856,11 +1557,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async createUsersWithArrayInput(user: Array, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).createUsersWithArrayInput(user, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.createUsersWithArrayInput(user, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -1870,11 +1568,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async createUsersWithListInput(user: Array, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).createUsersWithListInput(user, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.createUsersWithListInput(user, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * This can only be done by the logged in user. @@ -1884,11 +1579,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async deleteUser(username: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).deleteUser(username, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteUser(username, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -1898,11 +1590,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async getUserByName(username: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).getUserByName(username, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.getUserByName(username, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -1913,11 +1602,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async loginUser(username: string, password: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).loginUser(username, password, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.loginUser(username, password, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -1926,11 +1612,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async logoutUser(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).logoutUser(options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.logoutUser(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * This can only be done by the logged in user. @@ -1941,11 +1624,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async updateUser(username: string, user: User, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).updateUser(username, user, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.updateUser(username, user, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; @@ -1955,6 +1635,7 @@ export const UserApiFp = function(configuration?: Configuration) { * @export */ export const UserApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = UserApiFp(configuration) return { /** * This can only be done by the logged in user. @@ -1964,7 +1645,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ createUser(user: User, options?: any): AxiosPromise { - return UserApiFp(configuration).createUser(user, options).then((request) => request(axios, basePath)); + return localVarFp.createUser(user, options).then((request) => request(axios, basePath)); }, /** * @@ -1974,7 +1655,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ createUsersWithArrayInput(user: Array, options?: any): AxiosPromise { - return UserApiFp(configuration).createUsersWithArrayInput(user, options).then((request) => request(axios, basePath)); + return localVarFp.createUsersWithArrayInput(user, options).then((request) => request(axios, basePath)); }, /** * @@ -1984,7 +1665,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ createUsersWithListInput(user: Array, options?: any): AxiosPromise { - return UserApiFp(configuration).createUsersWithListInput(user, options).then((request) => request(axios, basePath)); + return localVarFp.createUsersWithListInput(user, options).then((request) => request(axios, basePath)); }, /** * This can only be done by the logged in user. @@ -1994,7 +1675,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ deleteUser(username: string, options?: any): AxiosPromise { - return UserApiFp(configuration).deleteUser(username, options).then((request) => request(axios, basePath)); + return localVarFp.deleteUser(username, options).then((request) => request(axios, basePath)); }, /** * @@ -2004,7 +1685,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ getUserByName(username: string, options?: any): AxiosPromise { - return UserApiFp(configuration).getUserByName(username, options).then((request) => request(axios, basePath)); + return localVarFp.getUserByName(username, options).then((request) => request(axios, basePath)); }, /** * @@ -2015,7 +1696,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ loginUser(username: string, password: string, options?: any): AxiosPromise { - return UserApiFp(configuration).loginUser(username, password, options).then((request) => request(axios, basePath)); + return localVarFp.loginUser(username, password, options).then((request) => request(axios, basePath)); }, /** * @@ -2024,7 +1705,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ logoutUser(options?: any): AxiosPromise { - return UserApiFp(configuration).logoutUser(options).then((request) => request(axios, basePath)); + return localVarFp.logoutUser(options).then((request) => request(axios, basePath)); }, /** * This can only be done by the logged in user. @@ -2035,7 +1716,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ updateUser(username: string, user: User, options?: any): AxiosPromise { - return UserApiFp(configuration).updateUser(username, user, options).then((request) => request(axios, basePath)); + return localVarFp.updateUser(username, user, options).then((request) => request(axios, basePath)); }, }; }; diff --git a/samples/client/petstore/typescript-axios/builds/with-complex-headers/common.ts b/samples/client/petstore/typescript-axios/builds/with-complex-headers/common.ts new file mode 100644 index 00000000000..23e6a699c68 --- /dev/null +++ b/samples/client/petstore/typescript-axios/builds/with-complex-headers/common.ts @@ -0,0 +1,131 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * OpenAPI Petstore + * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. + * + * The version of the OpenAPI document: 1.0.0 + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +import { Configuration } from "./configuration"; +import { RequiredError, RequestArgs } from "./base"; +import { AxiosInstance } from 'axios'; + +/** + * + * @export + */ +export const DUMMY_BASE_URL = 'https://example.com' + +/** + * + * @throws {RequiredError} + * @export + */ +export const assertParamExists = function (functionName: string, paramName: string, paramValue: unknown) { + if (paramValue === null || paramValue === undefined) { + throw new RequiredError(paramName, `Required parameter ${paramName} was null or undefined when calling ${functionName}.`); + } +} + +/** + * + * @export + */ +export const setApiKeyToObject = async function (object: any, keyParamName: string, configuration?: Configuration) { + if (configuration && configuration.apiKey) { + const localVarApiKeyValue = typeof configuration.apiKey === 'function' + ? await configuration.apiKey(keyParamName) + : await configuration.apiKey; + object[keyParamName] = localVarApiKeyValue; + } +} + +/** + * + * @export + */ +export const setBasicAuthToObject = function (object: any, configuration?: Configuration) { + if (configuration && (configuration.username || configuration.password)) { + object["auth"] = { username: configuration.username, password: configuration.password }; + } +} + +/** + * + * @export + */ +export const setBearerAuthToObject = async function (object: any, configuration?: Configuration) { + if (configuration && configuration.accessToken) { + const accessToken = typeof configuration.accessToken === 'function' + ? await configuration.accessToken() + : await configuration.accessToken; + object["Authorization"] = "Bearer " + accessToken; + } +} + +/** + * + * @export + */ +export const setOAuthToObject = async function (object: any, name: string, scopes: string[], configuration?: Configuration) { + if (configuration && configuration.accessToken) { + const localVarAccessTokenValue = typeof configuration.accessToken === 'function' + ? await configuration.accessToken(name, scopes) + : await configuration.accessToken; + object["Authorization"] = "Bearer " + localVarAccessTokenValue; + } +} + +/** + * + * @export + */ +export const setSearchParams = function (url: URL, ...objects: any[]) { + const searchParams = new URLSearchParams(url.search); + for (const object of objects) { + for (const key in object) { + searchParams.set(key, object[key]); + } + } + url.search = searchParams.toString(); +} + +/** + * + * @export + */ +export const serializeDataIfNeeded = function (value: any, requestOptions: any, configuration?: Configuration) { + const nonString = typeof value !== 'string'; + const needsSerialization = nonString && configuration && configuration.isJsonMime + ? configuration.isJsonMime(requestOptions.headers['Content-Type']) + : nonString; + return needsSerialization + ? JSON.stringify(value !== undefined ? value : {}) + : (value || ""); +} + +/** + * + * @export + */ +export const toPathString = function (url: URL) { + return url.pathname + url.search + url.hash +} + +/** + * + * @export + */ +export const createRequestFunction = function (axiosArgs: RequestArgs, globalAxios: AxiosInstance, BASE_PATH: string, configuration?: Configuration) { + return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { + const axiosRequestArgs = {...axiosArgs.options, url: (configuration?.basePath || basePath) + axiosArgs.url}; + return axios.request(axiosRequestArgs); + }; +} diff --git a/samples/client/petstore/typescript-axios/builds/with-interfaces/.openapi-generator/FILES b/samples/client/petstore/typescript-axios/builds/with-interfaces/.openapi-generator/FILES index 5bef353ae38..a80cd4f07b0 100644 --- a/samples/client/petstore/typescript-axios/builds/with-interfaces/.openapi-generator/FILES +++ b/samples/client/petstore/typescript-axios/builds/with-interfaces/.openapi-generator/FILES @@ -2,6 +2,7 @@ .npmignore api.ts base.ts +common.ts configuration.ts git_push.sh index.ts diff --git a/samples/client/petstore/typescript-axios/builds/with-interfaces/api.ts b/samples/client/petstore/typescript-axios/builds/with-interfaces/api.ts index 132c7cc9635..0368b1d5703 100644 --- a/samples/client/petstore/typescript-axios/builds/with-interfaces/api.ts +++ b/samples/client/petstore/typescript-axios/builds/with-interfaces/api.ts @@ -17,6 +17,8 @@ import { Configuration } from './configuration'; import globalAxios, { AxiosPromise, AxiosInstance } from 'axios'; // Some imports not used depending on template conditions // @ts-ignore +import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from './common'; +// @ts-ignore import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from './base'; /** @@ -261,12 +263,10 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ addPet: async (body: Pet, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling addPet.'); - } + assertParamExists('addPet', 'body', body) const localVarPath = `/pet`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -278,37 +278,19 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -322,13 +304,11 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ deletePet: async (petId: number, apiKey?: string, options: any = {}): Promise => { // verify required parameter 'petId' is not null or undefined - if (petId === null || petId === undefined) { - throw new RequiredError('petId','Required parameter petId was null or undefined when calling deletePet.'); - } + assertParamExists('deletePet', 'petId', petId) const localVarPath = `/pet/{petId}` .replace(`{${"petId"}}`, encodeURIComponent(String(petId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -340,12 +320,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (apiKey !== undefined && apiKey !== null) { localVarHeaderParameter['api_key'] = String(apiKey); @@ -353,19 +328,12 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -378,12 +346,10 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ findPetsByStatus: async (status: Array<'available' | 'pending' | 'sold'>, options: any = {}): Promise => { // verify required parameter 'status' is not null or undefined - if (status === null || status === undefined) { - throw new RequiredError('status','Required parameter status was null or undefined when calling findPetsByStatus.'); - } + assertParamExists('findPetsByStatus', 'status', status) const localVarPath = `/pet/findByStatus`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -395,12 +361,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (status) { localVarQueryParameter['status'] = status.join(COLLECTION_FORMATS.csv); @@ -408,19 +369,12 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -433,12 +387,10 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ findPetsByTags: async (tags: Array, options: any = {}): Promise => { // verify required parameter 'tags' is not null or undefined - if (tags === null || tags === undefined) { - throw new RequiredError('tags','Required parameter tags was null or undefined when calling findPetsByTags.'); - } + assertParamExists('findPetsByTags', 'tags', tags) const localVarPath = `/pet/findByTags`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -450,12 +402,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (tags) { localVarQueryParameter['tags'] = tags.join(COLLECTION_FORMATS.csv); @@ -463,19 +410,12 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -488,13 +428,11 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ getPetById: async (petId: number, options: any = {}): Promise => { // verify required parameter 'petId' is not null or undefined - if (petId === null || petId === undefined) { - throw new RequiredError('petId','Required parameter petId was null or undefined when calling getPetById.'); - } + assertParamExists('getPetById', 'petId', petId) const localVarPath = `/pet/{petId}` .replace(`{${"petId"}}`, encodeURIComponent(String(petId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -505,28 +443,16 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) const localVarQueryParameter = {} as any; // authentication api_key required - if (configuration && configuration.apiKey) { - const localVarApiKeyValue = typeof configuration.apiKey === 'function' - ? await configuration.apiKey("api_key") - : await configuration.apiKey; - localVarHeaderParameter["api_key"] = localVarApiKeyValue; - } + await setApiKeyToObject(localVarHeaderParameter, "api_key", configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -539,12 +465,10 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ updatePet: async (body: Pet, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling updatePet.'); - } + assertParamExists('updatePet', 'body', body) const localVarPath = `/pet`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -556,37 +480,19 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -601,13 +507,11 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ updatePetWithForm: async (petId: number, name?: string, status?: string, options: any = {}): Promise => { // verify required parameter 'petId' is not null or undefined - if (petId === null || petId === undefined) { - throw new RequiredError('petId','Required parameter petId was null or undefined when calling updatePetWithForm.'); - } + assertParamExists('updatePetWithForm', 'petId', petId) const localVarPath = `/pet/{petId}` .replace(`{${"petId"}}`, encodeURIComponent(String(petId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -620,12 +524,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (name !== undefined) { @@ -639,20 +538,13 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/x-www-form-urlencoded'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = localVarFormParams.toString(); return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -667,13 +559,11 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ uploadFile: async (petId: number, additionalMetadata?: string, file?: any, options: any = {}): Promise => { // verify required parameter 'petId' is not null or undefined - if (petId === null || petId === undefined) { - throw new RequiredError('petId','Required parameter petId was null or undefined when calling uploadFile.'); - } + assertParamExists('uploadFile', 'petId', petId) const localVarPath = `/pet/{petId}/uploadImage` .replace(`{${"petId"}}`, encodeURIComponent(String(petId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -686,12 +576,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (additionalMetadata !== undefined) { @@ -705,20 +590,13 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'multipart/form-data'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = localVarFormParams; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -730,6 +608,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) * @export */ export const PetApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = PetApiAxiosParamCreator(configuration) return { /** * @@ -739,11 +618,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async addPet(body: Pet, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).addPet(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.addPet(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -754,11 +630,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async deletePet(petId: number, apiKey?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).deletePet(petId, apiKey, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.deletePet(petId, apiKey, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Multiple status values can be provided with comma separated strings @@ -768,11 +641,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async findPetsByStatus(status: Array<'available' | 'pending' | 'sold'>, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).findPetsByStatus(status, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.findPetsByStatus(status, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. @@ -782,11 +652,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async findPetsByTags(tags: Array, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).findPetsByTags(tags, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.findPetsByTags(tags, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Returns a single pet @@ -796,11 +663,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async getPetById(petId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).getPetById(petId, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.getPetById(petId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -810,11 +674,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async updatePet(body: Pet, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).updatePet(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.updatePet(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -826,11 +687,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async updatePetWithForm(petId: number, name?: string, status?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).updatePetWithForm(petId, name, status, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.updatePetWithForm(petId, name, status, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -842,11 +700,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async uploadFile(petId: number, additionalMetadata?: string, file?: any, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).uploadFile(petId, additionalMetadata, file, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.uploadFile(petId, additionalMetadata, file, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; @@ -856,6 +711,7 @@ export const PetApiFp = function(configuration?: Configuration) { * @export */ export const PetApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = PetApiFp(configuration) return { /** * @@ -865,7 +721,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ addPet(body: Pet, options?: any): AxiosPromise { - return PetApiFp(configuration).addPet(body, options).then((request) => request(axios, basePath)); + return localVarFp.addPet(body, options).then((request) => request(axios, basePath)); }, /** * @@ -876,7 +732,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ deletePet(petId: number, apiKey?: string, options?: any): AxiosPromise { - return PetApiFp(configuration).deletePet(petId, apiKey, options).then((request) => request(axios, basePath)); + return localVarFp.deletePet(petId, apiKey, options).then((request) => request(axios, basePath)); }, /** * Multiple status values can be provided with comma separated strings @@ -886,7 +742,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ findPetsByStatus(status: Array<'available' | 'pending' | 'sold'>, options?: any): AxiosPromise> { - return PetApiFp(configuration).findPetsByStatus(status, options).then((request) => request(axios, basePath)); + return localVarFp.findPetsByStatus(status, options).then((request) => request(axios, basePath)); }, /** * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. @@ -896,7 +752,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ findPetsByTags(tags: Array, options?: any): AxiosPromise> { - return PetApiFp(configuration).findPetsByTags(tags, options).then((request) => request(axios, basePath)); + return localVarFp.findPetsByTags(tags, options).then((request) => request(axios, basePath)); }, /** * Returns a single pet @@ -906,7 +762,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ getPetById(petId: number, options?: any): AxiosPromise { - return PetApiFp(configuration).getPetById(petId, options).then((request) => request(axios, basePath)); + return localVarFp.getPetById(petId, options).then((request) => request(axios, basePath)); }, /** * @@ -916,7 +772,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ updatePet(body: Pet, options?: any): AxiosPromise { - return PetApiFp(configuration).updatePet(body, options).then((request) => request(axios, basePath)); + return localVarFp.updatePet(body, options).then((request) => request(axios, basePath)); }, /** * @@ -928,7 +784,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ updatePetWithForm(petId: number, name?: string, status?: string, options?: any): AxiosPromise { - return PetApiFp(configuration).updatePetWithForm(petId, name, status, options).then((request) => request(axios, basePath)); + return localVarFp.updatePetWithForm(petId, name, status, options).then((request) => request(axios, basePath)); }, /** * @@ -940,7 +796,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ uploadFile(petId: number, additionalMetadata?: string, file?: any, options?: any): AxiosPromise { - return PetApiFp(configuration).uploadFile(petId, additionalMetadata, file, options).then((request) => request(axios, basePath)); + return localVarFp.uploadFile(petId, additionalMetadata, file, options).then((request) => request(axios, basePath)); }, }; }; @@ -1163,13 +1019,11 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration */ deleteOrder: async (orderId: string, options: any = {}): Promise => { // verify required parameter 'orderId' is not null or undefined - if (orderId === null || orderId === undefined) { - throw new RequiredError('orderId','Required parameter orderId was null or undefined when calling deleteOrder.'); - } + assertParamExists('deleteOrder', 'orderId', orderId) const localVarPath = `/store/order/{orderId}` .replace(`{${"orderId"}}`, encodeURIComponent(String(orderId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1181,19 +1035,12 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1206,7 +1053,7 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration getInventory: async (options: any = {}): Promise => { const localVarPath = `/store/inventory`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1217,28 +1064,16 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration const localVarQueryParameter = {} as any; // authentication api_key required - if (configuration && configuration.apiKey) { - const localVarApiKeyValue = typeof configuration.apiKey === 'function' - ? await configuration.apiKey("api_key") - : await configuration.apiKey; - localVarHeaderParameter["api_key"] = localVarApiKeyValue; - } + await setApiKeyToObject(localVarHeaderParameter, "api_key", configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1251,13 +1086,11 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration */ getOrderById: async (orderId: number, options: any = {}): Promise => { // verify required parameter 'orderId' is not null or undefined - if (orderId === null || orderId === undefined) { - throw new RequiredError('orderId','Required parameter orderId was null or undefined when calling getOrderById.'); - } + assertParamExists('getOrderById', 'orderId', orderId) const localVarPath = `/store/order/{orderId}` .replace(`{${"orderId"}}`, encodeURIComponent(String(orderId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1269,19 +1102,12 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1294,12 +1120,10 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration */ placeOrder: async (body: Order, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling placeOrder.'); - } + assertParamExists('placeOrder', 'body', body) const localVarPath = `/store/order`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1313,26 +1137,13 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1344,6 +1155,7 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration * @export */ export const StoreApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = StoreApiAxiosParamCreator(configuration) return { /** * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors @@ -1353,11 +1165,8 @@ export const StoreApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async deleteOrder(orderId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await StoreApiAxiosParamCreator(configuration).deleteOrder(orderId, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteOrder(orderId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Returns a map of status codes to quantities @@ -1366,11 +1175,8 @@ export const StoreApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async getInventory(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<{ [key: string]: number; }>> { - const localVarAxiosArgs = await StoreApiAxiosParamCreator(configuration).getInventory(options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.getInventory(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions @@ -1380,11 +1186,8 @@ export const StoreApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async getOrderById(orderId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await StoreApiAxiosParamCreator(configuration).getOrderById(orderId, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.getOrderById(orderId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -1394,11 +1197,8 @@ export const StoreApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async placeOrder(body: Order, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await StoreApiAxiosParamCreator(configuration).placeOrder(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.placeOrder(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; @@ -1408,6 +1208,7 @@ export const StoreApiFp = function(configuration?: Configuration) { * @export */ export const StoreApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = StoreApiFp(configuration) return { /** * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors @@ -1417,7 +1218,7 @@ export const StoreApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ deleteOrder(orderId: string, options?: any): AxiosPromise { - return StoreApiFp(configuration).deleteOrder(orderId, options).then((request) => request(axios, basePath)); + return localVarFp.deleteOrder(orderId, options).then((request) => request(axios, basePath)); }, /** * Returns a map of status codes to quantities @@ -1426,7 +1227,7 @@ export const StoreApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ getInventory(options?: any): AxiosPromise<{ [key: string]: number; }> { - return StoreApiFp(configuration).getInventory(options).then((request) => request(axios, basePath)); + return localVarFp.getInventory(options).then((request) => request(axios, basePath)); }, /** * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions @@ -1436,7 +1237,7 @@ export const StoreApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ getOrderById(orderId: number, options?: any): AxiosPromise { - return StoreApiFp(configuration).getOrderById(orderId, options).then((request) => request(axios, basePath)); + return localVarFp.getOrderById(orderId, options).then((request) => request(axios, basePath)); }, /** * @@ -1446,7 +1247,7 @@ export const StoreApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ placeOrder(body: Order, options?: any): AxiosPromise { - return StoreApiFp(configuration).placeOrder(body, options).then((request) => request(axios, basePath)); + return localVarFp.placeOrder(body, options).then((request) => request(axios, basePath)); }, }; }; @@ -1569,12 +1370,10 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ createUser: async (body: User, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling createUser.'); - } + assertParamExists('createUser', 'body', body) const localVarPath = `/user`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1588,26 +1387,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1620,12 +1406,10 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ createUsersWithArrayInput: async (body: Array, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling createUsersWithArrayInput.'); - } + assertParamExists('createUsersWithArrayInput', 'body', body) const localVarPath = `/user/createWithArray`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1639,26 +1423,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1671,12 +1442,10 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ createUsersWithListInput: async (body: Array, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling createUsersWithListInput.'); - } + assertParamExists('createUsersWithListInput', 'body', body) const localVarPath = `/user/createWithList`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1690,26 +1459,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1722,13 +1478,11 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ deleteUser: async (username: string, options: any = {}): Promise => { // verify required parameter 'username' is not null or undefined - if (username === null || username === undefined) { - throw new RequiredError('username','Required parameter username was null or undefined when calling deleteUser.'); - } + assertParamExists('deleteUser', 'username', username) const localVarPath = `/user/{username}` .replace(`{${"username"}}`, encodeURIComponent(String(username))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1740,19 +1494,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1765,13 +1512,11 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ getUserByName: async (username: string, options: any = {}): Promise => { // verify required parameter 'username' is not null or undefined - if (username === null || username === undefined) { - throw new RequiredError('username','Required parameter username was null or undefined when calling getUserByName.'); - } + assertParamExists('getUserByName', 'username', username) const localVarPath = `/user/{username}` .replace(`{${"username"}}`, encodeURIComponent(String(username))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1783,19 +1528,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1809,16 +1547,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ loginUser: async (username: string, password: string, options: any = {}): Promise => { // verify required parameter 'username' is not null or undefined - if (username === null || username === undefined) { - throw new RequiredError('username','Required parameter username was null or undefined when calling loginUser.'); - } + assertParamExists('loginUser', 'username', username) // verify required parameter 'password' is not null or undefined - if (password === null || password === undefined) { - throw new RequiredError('password','Required parameter password was null or undefined when calling loginUser.'); - } + assertParamExists('loginUser', 'password', password) const localVarPath = `/user/login`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1838,19 +1572,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1863,7 +1590,7 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) logoutUser: async (options: any = {}): Promise => { const localVarPath = `/user/logout`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1875,19 +1602,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1901,17 +1621,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ updateUser: async (username: string, body: User, options: any = {}): Promise => { // verify required parameter 'username' is not null or undefined - if (username === null || username === undefined) { - throw new RequiredError('username','Required parameter username was null or undefined when calling updateUser.'); - } + assertParamExists('updateUser', 'username', username) // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling updateUser.'); - } + assertParamExists('updateUser', 'body', body) const localVarPath = `/user/{username}` .replace(`{${"username"}}`, encodeURIComponent(String(username))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1925,26 +1641,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1956,6 +1659,7 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) * @export */ export const UserApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = UserApiAxiosParamCreator(configuration) return { /** * This can only be done by the logged in user. @@ -1965,11 +1669,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async createUser(body: User, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).createUser(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.createUser(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -1979,11 +1680,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async createUsersWithArrayInput(body: Array, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).createUsersWithArrayInput(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.createUsersWithArrayInput(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -1993,11 +1691,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async createUsersWithListInput(body: Array, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).createUsersWithListInput(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.createUsersWithListInput(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * This can only be done by the logged in user. @@ -2007,11 +1702,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async deleteUser(username: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).deleteUser(username, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteUser(username, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -2021,11 +1713,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async getUserByName(username: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).getUserByName(username, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.getUserByName(username, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -2036,11 +1725,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async loginUser(username: string, password: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).loginUser(username, password, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.loginUser(username, password, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -2049,11 +1735,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async logoutUser(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).logoutUser(options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.logoutUser(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * This can only be done by the logged in user. @@ -2064,11 +1747,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async updateUser(username: string, body: User, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).updateUser(username, body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.updateUser(username, body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; @@ -2078,6 +1758,7 @@ export const UserApiFp = function(configuration?: Configuration) { * @export */ export const UserApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = UserApiFp(configuration) return { /** * This can only be done by the logged in user. @@ -2087,7 +1768,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ createUser(body: User, options?: any): AxiosPromise { - return UserApiFp(configuration).createUser(body, options).then((request) => request(axios, basePath)); + return localVarFp.createUser(body, options).then((request) => request(axios, basePath)); }, /** * @@ -2097,7 +1778,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ createUsersWithArrayInput(body: Array, options?: any): AxiosPromise { - return UserApiFp(configuration).createUsersWithArrayInput(body, options).then((request) => request(axios, basePath)); + return localVarFp.createUsersWithArrayInput(body, options).then((request) => request(axios, basePath)); }, /** * @@ -2107,7 +1788,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ createUsersWithListInput(body: Array, options?: any): AxiosPromise { - return UserApiFp(configuration).createUsersWithListInput(body, options).then((request) => request(axios, basePath)); + return localVarFp.createUsersWithListInput(body, options).then((request) => request(axios, basePath)); }, /** * This can only be done by the logged in user. @@ -2117,7 +1798,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ deleteUser(username: string, options?: any): AxiosPromise { - return UserApiFp(configuration).deleteUser(username, options).then((request) => request(axios, basePath)); + return localVarFp.deleteUser(username, options).then((request) => request(axios, basePath)); }, /** * @@ -2127,7 +1808,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ getUserByName(username: string, options?: any): AxiosPromise { - return UserApiFp(configuration).getUserByName(username, options).then((request) => request(axios, basePath)); + return localVarFp.getUserByName(username, options).then((request) => request(axios, basePath)); }, /** * @@ -2138,7 +1819,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ loginUser(username: string, password: string, options?: any): AxiosPromise { - return UserApiFp(configuration).loginUser(username, password, options).then((request) => request(axios, basePath)); + return localVarFp.loginUser(username, password, options).then((request) => request(axios, basePath)); }, /** * @@ -2147,7 +1828,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ logoutUser(options?: any): AxiosPromise { - return UserApiFp(configuration).logoutUser(options).then((request) => request(axios, basePath)); + return localVarFp.logoutUser(options).then((request) => request(axios, basePath)); }, /** * This can only be done by the logged in user. @@ -2158,7 +1839,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ updateUser(username: string, body: User, options?: any): AxiosPromise { - return UserApiFp(configuration).updateUser(username, body, options).then((request) => request(axios, basePath)); + return localVarFp.updateUser(username, body, options).then((request) => request(axios, basePath)); }, }; }; diff --git a/samples/client/petstore/typescript-axios/builds/with-interfaces/common.ts b/samples/client/petstore/typescript-axios/builds/with-interfaces/common.ts new file mode 100644 index 00000000000..23e6a699c68 --- /dev/null +++ b/samples/client/petstore/typescript-axios/builds/with-interfaces/common.ts @@ -0,0 +1,131 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * OpenAPI Petstore + * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. + * + * The version of the OpenAPI document: 1.0.0 + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +import { Configuration } from "./configuration"; +import { RequiredError, RequestArgs } from "./base"; +import { AxiosInstance } from 'axios'; + +/** + * + * @export + */ +export const DUMMY_BASE_URL = 'https://example.com' + +/** + * + * @throws {RequiredError} + * @export + */ +export const assertParamExists = function (functionName: string, paramName: string, paramValue: unknown) { + if (paramValue === null || paramValue === undefined) { + throw new RequiredError(paramName, `Required parameter ${paramName} was null or undefined when calling ${functionName}.`); + } +} + +/** + * + * @export + */ +export const setApiKeyToObject = async function (object: any, keyParamName: string, configuration?: Configuration) { + if (configuration && configuration.apiKey) { + const localVarApiKeyValue = typeof configuration.apiKey === 'function' + ? await configuration.apiKey(keyParamName) + : await configuration.apiKey; + object[keyParamName] = localVarApiKeyValue; + } +} + +/** + * + * @export + */ +export const setBasicAuthToObject = function (object: any, configuration?: Configuration) { + if (configuration && (configuration.username || configuration.password)) { + object["auth"] = { username: configuration.username, password: configuration.password }; + } +} + +/** + * + * @export + */ +export const setBearerAuthToObject = async function (object: any, configuration?: Configuration) { + if (configuration && configuration.accessToken) { + const accessToken = typeof configuration.accessToken === 'function' + ? await configuration.accessToken() + : await configuration.accessToken; + object["Authorization"] = "Bearer " + accessToken; + } +} + +/** + * + * @export + */ +export const setOAuthToObject = async function (object: any, name: string, scopes: string[], configuration?: Configuration) { + if (configuration && configuration.accessToken) { + const localVarAccessTokenValue = typeof configuration.accessToken === 'function' + ? await configuration.accessToken(name, scopes) + : await configuration.accessToken; + object["Authorization"] = "Bearer " + localVarAccessTokenValue; + } +} + +/** + * + * @export + */ +export const setSearchParams = function (url: URL, ...objects: any[]) { + const searchParams = new URLSearchParams(url.search); + for (const object of objects) { + for (const key in object) { + searchParams.set(key, object[key]); + } + } + url.search = searchParams.toString(); +} + +/** + * + * @export + */ +export const serializeDataIfNeeded = function (value: any, requestOptions: any, configuration?: Configuration) { + const nonString = typeof value !== 'string'; + const needsSerialization = nonString && configuration && configuration.isJsonMime + ? configuration.isJsonMime(requestOptions.headers['Content-Type']) + : nonString; + return needsSerialization + ? JSON.stringify(value !== undefined ? value : {}) + : (value || ""); +} + +/** + * + * @export + */ +export const toPathString = function (url: URL) { + return url.pathname + url.search + url.hash +} + +/** + * + * @export + */ +export const createRequestFunction = function (axiosArgs: RequestArgs, globalAxios: AxiosInstance, BASE_PATH: string, configuration?: Configuration) { + return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { + const axiosRequestArgs = {...axiosArgs.options, url: (configuration?.basePath || basePath) + axiosArgs.url}; + return axios.request(axiosRequestArgs); + }; +} diff --git a/samples/client/petstore/typescript-axios/builds/with-npm-version-and-separate-models-and-api/.openapi-generator/FILES b/samples/client/petstore/typescript-axios/builds/with-npm-version-and-separate-models-and-api/.openapi-generator/FILES index 94156a16c6b..aded8aa37a1 100644 --- a/samples/client/petstore/typescript-axios/builds/with-npm-version-and-separate-models-and-api/.openapi-generator/FILES +++ b/samples/client/petstore/typescript-axios/builds/with-npm-version-and-separate-models-and-api/.openapi-generator/FILES @@ -6,6 +6,7 @@ api/another/level/pet-api.ts api/another/level/store-api.ts api/another/level/user-api.ts base.ts +common.ts configuration.ts git_push.sh index.ts diff --git a/samples/client/petstore/typescript-axios/builds/with-npm-version-and-separate-models-and-api/api/another/level/pet-api.ts b/samples/client/petstore/typescript-axios/builds/with-npm-version-and-separate-models-and-api/api/another/level/pet-api.ts index 338ebcd3fc4..fc66c5184fa 100644 --- a/samples/client/petstore/typescript-axios/builds/with-npm-version-and-separate-models-and-api/api/another/level/pet-api.ts +++ b/samples/client/petstore/typescript-axios/builds/with-npm-version-and-separate-models-and-api/api/another/level/pet-api.ts @@ -17,6 +17,8 @@ import globalAxios, { AxiosPromise, AxiosInstance } from 'axios'; import { Configuration } from '../../../configuration'; // Some imports not used depending on template conditions // @ts-ignore +import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from '../../../common'; +// @ts-ignore import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../../../base'; // @ts-ignore import { ApiResponse } from '../../../model/some/levels/deep'; @@ -37,12 +39,10 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ addPet: async (body: Pet, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling addPet.'); - } + assertParamExists('addPet', 'body', body) const localVarPath = `/pet`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -54,37 +54,19 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -98,13 +80,11 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ deletePet: async (petId: number, apiKey?: string, options: any = {}): Promise => { // verify required parameter 'petId' is not null or undefined - if (petId === null || petId === undefined) { - throw new RequiredError('petId','Required parameter petId was null or undefined when calling deletePet.'); - } + assertParamExists('deletePet', 'petId', petId) const localVarPath = `/pet/{petId}` .replace(`{${"petId"}}`, encodeURIComponent(String(petId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -116,12 +96,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (apiKey !== undefined && apiKey !== null) { localVarHeaderParameter['api_key'] = String(apiKey); @@ -129,19 +104,12 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -154,12 +122,10 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ findPetsByStatus: async (status: Array<'available' | 'pending' | 'sold'>, options: any = {}): Promise => { // verify required parameter 'status' is not null or undefined - if (status === null || status === undefined) { - throw new RequiredError('status','Required parameter status was null or undefined when calling findPetsByStatus.'); - } + assertParamExists('findPetsByStatus', 'status', status) const localVarPath = `/pet/findByStatus`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -171,12 +137,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (status) { localVarQueryParameter['status'] = status.join(COLLECTION_FORMATS.csv); @@ -184,19 +145,12 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -209,12 +163,10 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ findPetsByTags: async (tags: Array, options: any = {}): Promise => { // verify required parameter 'tags' is not null or undefined - if (tags === null || tags === undefined) { - throw new RequiredError('tags','Required parameter tags was null or undefined when calling findPetsByTags.'); - } + assertParamExists('findPetsByTags', 'tags', tags) const localVarPath = `/pet/findByTags`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -226,12 +178,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (tags) { localVarQueryParameter['tags'] = tags.join(COLLECTION_FORMATS.csv); @@ -239,19 +186,12 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -264,13 +204,11 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ getPetById: async (petId: number, options: any = {}): Promise => { // verify required parameter 'petId' is not null or undefined - if (petId === null || petId === undefined) { - throw new RequiredError('petId','Required parameter petId was null or undefined when calling getPetById.'); - } + assertParamExists('getPetById', 'petId', petId) const localVarPath = `/pet/{petId}` .replace(`{${"petId"}}`, encodeURIComponent(String(petId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -281,28 +219,16 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) const localVarQueryParameter = {} as any; // authentication api_key required - if (configuration && configuration.apiKey) { - const localVarApiKeyValue = typeof configuration.apiKey === 'function' - ? await configuration.apiKey("api_key") - : await configuration.apiKey; - localVarHeaderParameter["api_key"] = localVarApiKeyValue; - } + await setApiKeyToObject(localVarHeaderParameter, "api_key", configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -315,12 +241,10 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ updatePet: async (body: Pet, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling updatePet.'); - } + assertParamExists('updatePet', 'body', body) const localVarPath = `/pet`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -332,37 +256,19 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -377,13 +283,11 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ updatePetWithForm: async (petId: number, name?: string, status?: string, options: any = {}): Promise => { // verify required parameter 'petId' is not null or undefined - if (petId === null || petId === undefined) { - throw new RequiredError('petId','Required parameter petId was null or undefined when calling updatePetWithForm.'); - } + assertParamExists('updatePetWithForm', 'petId', petId) const localVarPath = `/pet/{petId}` .replace(`{${"petId"}}`, encodeURIComponent(String(petId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -396,12 +300,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (name !== undefined) { @@ -415,20 +314,13 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/x-www-form-urlencoded'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = localVarFormParams.toString(); return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -443,13 +335,11 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ uploadFile: async (petId: number, additionalMetadata?: string, file?: any, options: any = {}): Promise => { // verify required parameter 'petId' is not null or undefined - if (petId === null || petId === undefined) { - throw new RequiredError('petId','Required parameter petId was null or undefined when calling uploadFile.'); - } + assertParamExists('uploadFile', 'petId', petId) const localVarPath = `/pet/{petId}/uploadImage` .replace(`{${"petId"}}`, encodeURIComponent(String(petId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -462,12 +352,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (additionalMetadata !== undefined) { @@ -481,20 +366,13 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'multipart/form-data'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = localVarFormParams; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -506,6 +384,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) * @export */ export const PetApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = PetApiAxiosParamCreator(configuration) return { /** * @@ -515,11 +394,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async addPet(body: Pet, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).addPet(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.addPet(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -530,11 +406,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async deletePet(petId: number, apiKey?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).deletePet(petId, apiKey, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.deletePet(petId, apiKey, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Multiple status values can be provided with comma separated strings @@ -544,11 +417,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async findPetsByStatus(status: Array<'available' | 'pending' | 'sold'>, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).findPetsByStatus(status, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.findPetsByStatus(status, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. @@ -558,11 +428,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async findPetsByTags(tags: Array, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).findPetsByTags(tags, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.findPetsByTags(tags, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Returns a single pet @@ -572,11 +439,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async getPetById(petId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).getPetById(petId, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.getPetById(petId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -586,11 +450,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async updatePet(body: Pet, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).updatePet(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.updatePet(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -602,11 +463,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async updatePetWithForm(petId: number, name?: string, status?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).updatePetWithForm(petId, name, status, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.updatePetWithForm(petId, name, status, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -618,11 +476,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async uploadFile(petId: number, additionalMetadata?: string, file?: any, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).uploadFile(petId, additionalMetadata, file, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.uploadFile(petId, additionalMetadata, file, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; @@ -632,6 +487,7 @@ export const PetApiFp = function(configuration?: Configuration) { * @export */ export const PetApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = PetApiFp(configuration) return { /** * @@ -641,7 +497,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ addPet(body: Pet, options?: any): AxiosPromise { - return PetApiFp(configuration).addPet(body, options).then((request) => request(axios, basePath)); + return localVarFp.addPet(body, options).then((request) => request(axios, basePath)); }, /** * @@ -652,7 +508,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ deletePet(petId: number, apiKey?: string, options?: any): AxiosPromise { - return PetApiFp(configuration).deletePet(petId, apiKey, options).then((request) => request(axios, basePath)); + return localVarFp.deletePet(petId, apiKey, options).then((request) => request(axios, basePath)); }, /** * Multiple status values can be provided with comma separated strings @@ -662,7 +518,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ findPetsByStatus(status: Array<'available' | 'pending' | 'sold'>, options?: any): AxiosPromise> { - return PetApiFp(configuration).findPetsByStatus(status, options).then((request) => request(axios, basePath)); + return localVarFp.findPetsByStatus(status, options).then((request) => request(axios, basePath)); }, /** * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. @@ -672,7 +528,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ findPetsByTags(tags: Array, options?: any): AxiosPromise> { - return PetApiFp(configuration).findPetsByTags(tags, options).then((request) => request(axios, basePath)); + return localVarFp.findPetsByTags(tags, options).then((request) => request(axios, basePath)); }, /** * Returns a single pet @@ -682,7 +538,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ getPetById(petId: number, options?: any): AxiosPromise { - return PetApiFp(configuration).getPetById(petId, options).then((request) => request(axios, basePath)); + return localVarFp.getPetById(petId, options).then((request) => request(axios, basePath)); }, /** * @@ -692,7 +548,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ updatePet(body: Pet, options?: any): AxiosPromise { - return PetApiFp(configuration).updatePet(body, options).then((request) => request(axios, basePath)); + return localVarFp.updatePet(body, options).then((request) => request(axios, basePath)); }, /** * @@ -704,7 +560,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ updatePetWithForm(petId: number, name?: string, status?: string, options?: any): AxiosPromise { - return PetApiFp(configuration).updatePetWithForm(petId, name, status, options).then((request) => request(axios, basePath)); + return localVarFp.updatePetWithForm(petId, name, status, options).then((request) => request(axios, basePath)); }, /** * @@ -716,7 +572,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ uploadFile(petId: number, additionalMetadata?: string, file?: any, options?: any): AxiosPromise { - return PetApiFp(configuration).uploadFile(petId, additionalMetadata, file, options).then((request) => request(axios, basePath)); + return localVarFp.uploadFile(petId, additionalMetadata, file, options).then((request) => request(axios, basePath)); }, }; }; diff --git a/samples/client/petstore/typescript-axios/builds/with-npm-version-and-separate-models-and-api/api/another/level/store-api.ts b/samples/client/petstore/typescript-axios/builds/with-npm-version-and-separate-models-and-api/api/another/level/store-api.ts index ca42fa29018..d9f74b95dbb 100644 --- a/samples/client/petstore/typescript-axios/builds/with-npm-version-and-separate-models-and-api/api/another/level/store-api.ts +++ b/samples/client/petstore/typescript-axios/builds/with-npm-version-and-separate-models-and-api/api/another/level/store-api.ts @@ -17,6 +17,8 @@ import globalAxios, { AxiosPromise, AxiosInstance } from 'axios'; import { Configuration } from '../../../configuration'; // Some imports not used depending on template conditions // @ts-ignore +import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from '../../../common'; +// @ts-ignore import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../../../base'; // @ts-ignore import { Order } from '../../../model/some/levels/deep'; @@ -35,13 +37,11 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration */ deleteOrder: async (orderId: string, options: any = {}): Promise => { // verify required parameter 'orderId' is not null or undefined - if (orderId === null || orderId === undefined) { - throw new RequiredError('orderId','Required parameter orderId was null or undefined when calling deleteOrder.'); - } + assertParamExists('deleteOrder', 'orderId', orderId) const localVarPath = `/store/order/{orderId}` .replace(`{${"orderId"}}`, encodeURIComponent(String(orderId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -53,19 +53,12 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -78,7 +71,7 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration getInventory: async (options: any = {}): Promise => { const localVarPath = `/store/inventory`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -89,28 +82,16 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration const localVarQueryParameter = {} as any; // authentication api_key required - if (configuration && configuration.apiKey) { - const localVarApiKeyValue = typeof configuration.apiKey === 'function' - ? await configuration.apiKey("api_key") - : await configuration.apiKey; - localVarHeaderParameter["api_key"] = localVarApiKeyValue; - } + await setApiKeyToObject(localVarHeaderParameter, "api_key", configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -123,13 +104,11 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration */ getOrderById: async (orderId: number, options: any = {}): Promise => { // verify required parameter 'orderId' is not null or undefined - if (orderId === null || orderId === undefined) { - throw new RequiredError('orderId','Required parameter orderId was null or undefined when calling getOrderById.'); - } + assertParamExists('getOrderById', 'orderId', orderId) const localVarPath = `/store/order/{orderId}` .replace(`{${"orderId"}}`, encodeURIComponent(String(orderId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -141,19 +120,12 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -166,12 +138,10 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration */ placeOrder: async (body: Order, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling placeOrder.'); - } + assertParamExists('placeOrder', 'body', body) const localVarPath = `/store/order`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -185,26 +155,13 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -216,6 +173,7 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration * @export */ export const StoreApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = StoreApiAxiosParamCreator(configuration) return { /** * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors @@ -225,11 +183,8 @@ export const StoreApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async deleteOrder(orderId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await StoreApiAxiosParamCreator(configuration).deleteOrder(orderId, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteOrder(orderId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Returns a map of status codes to quantities @@ -238,11 +193,8 @@ export const StoreApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async getInventory(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<{ [key: string]: number; }>> { - const localVarAxiosArgs = await StoreApiAxiosParamCreator(configuration).getInventory(options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.getInventory(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions @@ -252,11 +204,8 @@ export const StoreApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async getOrderById(orderId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await StoreApiAxiosParamCreator(configuration).getOrderById(orderId, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.getOrderById(orderId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -266,11 +215,8 @@ export const StoreApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async placeOrder(body: Order, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await StoreApiAxiosParamCreator(configuration).placeOrder(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.placeOrder(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; @@ -280,6 +226,7 @@ export const StoreApiFp = function(configuration?: Configuration) { * @export */ export const StoreApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = StoreApiFp(configuration) return { /** * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors @@ -289,7 +236,7 @@ export const StoreApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ deleteOrder(orderId: string, options?: any): AxiosPromise { - return StoreApiFp(configuration).deleteOrder(orderId, options).then((request) => request(axios, basePath)); + return localVarFp.deleteOrder(orderId, options).then((request) => request(axios, basePath)); }, /** * Returns a map of status codes to quantities @@ -298,7 +245,7 @@ export const StoreApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ getInventory(options?: any): AxiosPromise<{ [key: string]: number; }> { - return StoreApiFp(configuration).getInventory(options).then((request) => request(axios, basePath)); + return localVarFp.getInventory(options).then((request) => request(axios, basePath)); }, /** * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions @@ -308,7 +255,7 @@ export const StoreApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ getOrderById(orderId: number, options?: any): AxiosPromise { - return StoreApiFp(configuration).getOrderById(orderId, options).then((request) => request(axios, basePath)); + return localVarFp.getOrderById(orderId, options).then((request) => request(axios, basePath)); }, /** * @@ -318,7 +265,7 @@ export const StoreApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ placeOrder(body: Order, options?: any): AxiosPromise { - return StoreApiFp(configuration).placeOrder(body, options).then((request) => request(axios, basePath)); + return localVarFp.placeOrder(body, options).then((request) => request(axios, basePath)); }, }; }; diff --git a/samples/client/petstore/typescript-axios/builds/with-npm-version-and-separate-models-and-api/api/another/level/user-api.ts b/samples/client/petstore/typescript-axios/builds/with-npm-version-and-separate-models-and-api/api/another/level/user-api.ts index bc264d72753..3e63c7e2f36 100644 --- a/samples/client/petstore/typescript-axios/builds/with-npm-version-and-separate-models-and-api/api/another/level/user-api.ts +++ b/samples/client/petstore/typescript-axios/builds/with-npm-version-and-separate-models-and-api/api/another/level/user-api.ts @@ -17,6 +17,8 @@ import globalAxios, { AxiosPromise, AxiosInstance } from 'axios'; import { Configuration } from '../../../configuration'; // Some imports not used depending on template conditions // @ts-ignore +import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from '../../../common'; +// @ts-ignore import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from '../../../base'; // @ts-ignore import { User } from '../../../model/some/levels/deep'; @@ -35,12 +37,10 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ createUser: async (body: User, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling createUser.'); - } + assertParamExists('createUser', 'body', body) const localVarPath = `/user`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -54,26 +54,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -86,12 +73,10 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ createUsersWithArrayInput: async (body: Array, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling createUsersWithArrayInput.'); - } + assertParamExists('createUsersWithArrayInput', 'body', body) const localVarPath = `/user/createWithArray`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -105,26 +90,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -137,12 +109,10 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ createUsersWithListInput: async (body: Array, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling createUsersWithListInput.'); - } + assertParamExists('createUsersWithListInput', 'body', body) const localVarPath = `/user/createWithList`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -156,26 +126,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -188,13 +145,11 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ deleteUser: async (username: string, options: any = {}): Promise => { // verify required parameter 'username' is not null or undefined - if (username === null || username === undefined) { - throw new RequiredError('username','Required parameter username was null or undefined when calling deleteUser.'); - } + assertParamExists('deleteUser', 'username', username) const localVarPath = `/user/{username}` .replace(`{${"username"}}`, encodeURIComponent(String(username))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -206,19 +161,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -231,13 +179,11 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ getUserByName: async (username: string, options: any = {}): Promise => { // verify required parameter 'username' is not null or undefined - if (username === null || username === undefined) { - throw new RequiredError('username','Required parameter username was null or undefined when calling getUserByName.'); - } + assertParamExists('getUserByName', 'username', username) const localVarPath = `/user/{username}` .replace(`{${"username"}}`, encodeURIComponent(String(username))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -249,19 +195,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -275,16 +214,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ loginUser: async (username: string, password: string, options: any = {}): Promise => { // verify required parameter 'username' is not null or undefined - if (username === null || username === undefined) { - throw new RequiredError('username','Required parameter username was null or undefined when calling loginUser.'); - } + assertParamExists('loginUser', 'username', username) // verify required parameter 'password' is not null or undefined - if (password === null || password === undefined) { - throw new RequiredError('password','Required parameter password was null or undefined when calling loginUser.'); - } + assertParamExists('loginUser', 'password', password) const localVarPath = `/user/login`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -304,19 +239,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -329,7 +257,7 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) logoutUser: async (options: any = {}): Promise => { const localVarPath = `/user/logout`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -341,19 +269,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -367,17 +288,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ updateUser: async (username: string, body: User, options: any = {}): Promise => { // verify required parameter 'username' is not null or undefined - if (username === null || username === undefined) { - throw new RequiredError('username','Required parameter username was null or undefined when calling updateUser.'); - } + assertParamExists('updateUser', 'username', username) // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling updateUser.'); - } + assertParamExists('updateUser', 'body', body) const localVarPath = `/user/{username}` .replace(`{${"username"}}`, encodeURIComponent(String(username))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -391,26 +308,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -422,6 +326,7 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) * @export */ export const UserApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = UserApiAxiosParamCreator(configuration) return { /** * This can only be done by the logged in user. @@ -431,11 +336,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async createUser(body: User, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).createUser(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.createUser(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -445,11 +347,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async createUsersWithArrayInput(body: Array, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).createUsersWithArrayInput(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.createUsersWithArrayInput(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -459,11 +358,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async createUsersWithListInput(body: Array, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).createUsersWithListInput(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.createUsersWithListInput(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * This can only be done by the logged in user. @@ -473,11 +369,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async deleteUser(username: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).deleteUser(username, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteUser(username, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -487,11 +380,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async getUserByName(username: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).getUserByName(username, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.getUserByName(username, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -502,11 +392,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async loginUser(username: string, password: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).loginUser(username, password, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.loginUser(username, password, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -515,11 +402,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async logoutUser(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).logoutUser(options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.logoutUser(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * This can only be done by the logged in user. @@ -530,11 +414,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async updateUser(username: string, body: User, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).updateUser(username, body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.updateUser(username, body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; @@ -544,6 +425,7 @@ export const UserApiFp = function(configuration?: Configuration) { * @export */ export const UserApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = UserApiFp(configuration) return { /** * This can only be done by the logged in user. @@ -553,7 +435,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ createUser(body: User, options?: any): AxiosPromise { - return UserApiFp(configuration).createUser(body, options).then((request) => request(axios, basePath)); + return localVarFp.createUser(body, options).then((request) => request(axios, basePath)); }, /** * @@ -563,7 +445,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ createUsersWithArrayInput(body: Array, options?: any): AxiosPromise { - return UserApiFp(configuration).createUsersWithArrayInput(body, options).then((request) => request(axios, basePath)); + return localVarFp.createUsersWithArrayInput(body, options).then((request) => request(axios, basePath)); }, /** * @@ -573,7 +455,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ createUsersWithListInput(body: Array, options?: any): AxiosPromise { - return UserApiFp(configuration).createUsersWithListInput(body, options).then((request) => request(axios, basePath)); + return localVarFp.createUsersWithListInput(body, options).then((request) => request(axios, basePath)); }, /** * This can only be done by the logged in user. @@ -583,7 +465,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ deleteUser(username: string, options?: any): AxiosPromise { - return UserApiFp(configuration).deleteUser(username, options).then((request) => request(axios, basePath)); + return localVarFp.deleteUser(username, options).then((request) => request(axios, basePath)); }, /** * @@ -593,7 +475,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ getUserByName(username: string, options?: any): AxiosPromise { - return UserApiFp(configuration).getUserByName(username, options).then((request) => request(axios, basePath)); + return localVarFp.getUserByName(username, options).then((request) => request(axios, basePath)); }, /** * @@ -604,7 +486,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ loginUser(username: string, password: string, options?: any): AxiosPromise { - return UserApiFp(configuration).loginUser(username, password, options).then((request) => request(axios, basePath)); + return localVarFp.loginUser(username, password, options).then((request) => request(axios, basePath)); }, /** * @@ -613,7 +495,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ logoutUser(options?: any): AxiosPromise { - return UserApiFp(configuration).logoutUser(options).then((request) => request(axios, basePath)); + return localVarFp.logoutUser(options).then((request) => request(axios, basePath)); }, /** * This can only be done by the logged in user. @@ -624,7 +506,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ updateUser(username: string, body: User, options?: any): AxiosPromise { - return UserApiFp(configuration).updateUser(username, body, options).then((request) => request(axios, basePath)); + return localVarFp.updateUser(username, body, options).then((request) => request(axios, basePath)); }, }; }; diff --git a/samples/client/petstore/typescript-axios/builds/with-npm-version-and-separate-models-and-api/common.ts b/samples/client/petstore/typescript-axios/builds/with-npm-version-and-separate-models-and-api/common.ts new file mode 100644 index 00000000000..23e6a699c68 --- /dev/null +++ b/samples/client/petstore/typescript-axios/builds/with-npm-version-and-separate-models-and-api/common.ts @@ -0,0 +1,131 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * OpenAPI Petstore + * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. + * + * The version of the OpenAPI document: 1.0.0 + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +import { Configuration } from "./configuration"; +import { RequiredError, RequestArgs } from "./base"; +import { AxiosInstance } from 'axios'; + +/** + * + * @export + */ +export const DUMMY_BASE_URL = 'https://example.com' + +/** + * + * @throws {RequiredError} + * @export + */ +export const assertParamExists = function (functionName: string, paramName: string, paramValue: unknown) { + if (paramValue === null || paramValue === undefined) { + throw new RequiredError(paramName, `Required parameter ${paramName} was null or undefined when calling ${functionName}.`); + } +} + +/** + * + * @export + */ +export const setApiKeyToObject = async function (object: any, keyParamName: string, configuration?: Configuration) { + if (configuration && configuration.apiKey) { + const localVarApiKeyValue = typeof configuration.apiKey === 'function' + ? await configuration.apiKey(keyParamName) + : await configuration.apiKey; + object[keyParamName] = localVarApiKeyValue; + } +} + +/** + * + * @export + */ +export const setBasicAuthToObject = function (object: any, configuration?: Configuration) { + if (configuration && (configuration.username || configuration.password)) { + object["auth"] = { username: configuration.username, password: configuration.password }; + } +} + +/** + * + * @export + */ +export const setBearerAuthToObject = async function (object: any, configuration?: Configuration) { + if (configuration && configuration.accessToken) { + const accessToken = typeof configuration.accessToken === 'function' + ? await configuration.accessToken() + : await configuration.accessToken; + object["Authorization"] = "Bearer " + accessToken; + } +} + +/** + * + * @export + */ +export const setOAuthToObject = async function (object: any, name: string, scopes: string[], configuration?: Configuration) { + if (configuration && configuration.accessToken) { + const localVarAccessTokenValue = typeof configuration.accessToken === 'function' + ? await configuration.accessToken(name, scopes) + : await configuration.accessToken; + object["Authorization"] = "Bearer " + localVarAccessTokenValue; + } +} + +/** + * + * @export + */ +export const setSearchParams = function (url: URL, ...objects: any[]) { + const searchParams = new URLSearchParams(url.search); + for (const object of objects) { + for (const key in object) { + searchParams.set(key, object[key]); + } + } + url.search = searchParams.toString(); +} + +/** + * + * @export + */ +export const serializeDataIfNeeded = function (value: any, requestOptions: any, configuration?: Configuration) { + const nonString = typeof value !== 'string'; + const needsSerialization = nonString && configuration && configuration.isJsonMime + ? configuration.isJsonMime(requestOptions.headers['Content-Type']) + : nonString; + return needsSerialization + ? JSON.stringify(value !== undefined ? value : {}) + : (value || ""); +} + +/** + * + * @export + */ +export const toPathString = function (url: URL) { + return url.pathname + url.search + url.hash +} + +/** + * + * @export + */ +export const createRequestFunction = function (axiosArgs: RequestArgs, globalAxios: AxiosInstance, BASE_PATH: string, configuration?: Configuration) { + return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { + const axiosRequestArgs = {...axiosArgs.options, url: (configuration?.basePath || basePath) + axiosArgs.url}; + return axios.request(axiosRequestArgs); + }; +} diff --git a/samples/client/petstore/typescript-axios/builds/with-npm-version/.openapi-generator/FILES b/samples/client/petstore/typescript-axios/builds/with-npm-version/.openapi-generator/FILES index 3a45f5700dd..534fae710fb 100644 --- a/samples/client/petstore/typescript-axios/builds/with-npm-version/.openapi-generator/FILES +++ b/samples/client/petstore/typescript-axios/builds/with-npm-version/.openapi-generator/FILES @@ -3,6 +3,7 @@ README.md api.ts base.ts +common.ts configuration.ts git_push.sh index.ts diff --git a/samples/client/petstore/typescript-axios/builds/with-npm-version/api.ts b/samples/client/petstore/typescript-axios/builds/with-npm-version/api.ts index 1aca2afe908..856fb0a4829 100644 --- a/samples/client/petstore/typescript-axios/builds/with-npm-version/api.ts +++ b/samples/client/petstore/typescript-axios/builds/with-npm-version/api.ts @@ -17,6 +17,8 @@ import { Configuration } from './configuration'; import globalAxios, { AxiosPromise, AxiosInstance } from 'axios'; // Some imports not used depending on template conditions // @ts-ignore +import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from './common'; +// @ts-ignore import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from './base'; /** @@ -261,12 +263,10 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ addPet: async (body: Pet, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling addPet.'); - } + assertParamExists('addPet', 'body', body) const localVarPath = `/pet`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -278,37 +278,19 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -322,13 +304,11 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ deletePet: async (petId: number, apiKey?: string, options: any = {}): Promise => { // verify required parameter 'petId' is not null or undefined - if (petId === null || petId === undefined) { - throw new RequiredError('petId','Required parameter petId was null or undefined when calling deletePet.'); - } + assertParamExists('deletePet', 'petId', petId) const localVarPath = `/pet/{petId}` .replace(`{${"petId"}}`, encodeURIComponent(String(petId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -340,12 +320,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (apiKey !== undefined && apiKey !== null) { localVarHeaderParameter['api_key'] = String(apiKey); @@ -353,19 +328,12 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -378,12 +346,10 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ findPetsByStatus: async (status: Array<'available' | 'pending' | 'sold'>, options: any = {}): Promise => { // verify required parameter 'status' is not null or undefined - if (status === null || status === undefined) { - throw new RequiredError('status','Required parameter status was null or undefined when calling findPetsByStatus.'); - } + assertParamExists('findPetsByStatus', 'status', status) const localVarPath = `/pet/findByStatus`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -395,12 +361,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (status) { localVarQueryParameter['status'] = status.join(COLLECTION_FORMATS.csv); @@ -408,19 +369,12 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -433,12 +387,10 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ findPetsByTags: async (tags: Array, options: any = {}): Promise => { // verify required parameter 'tags' is not null or undefined - if (tags === null || tags === undefined) { - throw new RequiredError('tags','Required parameter tags was null or undefined when calling findPetsByTags.'); - } + assertParamExists('findPetsByTags', 'tags', tags) const localVarPath = `/pet/findByTags`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -450,12 +402,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (tags) { localVarQueryParameter['tags'] = tags.join(COLLECTION_FORMATS.csv); @@ -463,19 +410,12 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -488,13 +428,11 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ getPetById: async (petId: number, options: any = {}): Promise => { // verify required parameter 'petId' is not null or undefined - if (petId === null || petId === undefined) { - throw new RequiredError('petId','Required parameter petId was null or undefined when calling getPetById.'); - } + assertParamExists('getPetById', 'petId', petId) const localVarPath = `/pet/{petId}` .replace(`{${"petId"}}`, encodeURIComponent(String(petId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -505,28 +443,16 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) const localVarQueryParameter = {} as any; // authentication api_key required - if (configuration && configuration.apiKey) { - const localVarApiKeyValue = typeof configuration.apiKey === 'function' - ? await configuration.apiKey("api_key") - : await configuration.apiKey; - localVarHeaderParameter["api_key"] = localVarApiKeyValue; - } + await setApiKeyToObject(localVarHeaderParameter, "api_key", configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -539,12 +465,10 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ updatePet: async (body: Pet, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling updatePet.'); - } + assertParamExists('updatePet', 'body', body) const localVarPath = `/pet`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -556,37 +480,19 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -601,13 +507,11 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ updatePetWithForm: async (petId: number, name?: string, status?: string, options: any = {}): Promise => { // verify required parameter 'petId' is not null or undefined - if (petId === null || petId === undefined) { - throw new RequiredError('petId','Required parameter petId was null or undefined when calling updatePetWithForm.'); - } + assertParamExists('updatePetWithForm', 'petId', petId) const localVarPath = `/pet/{petId}` .replace(`{${"petId"}}`, encodeURIComponent(String(petId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -620,12 +524,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (name !== undefined) { @@ -639,20 +538,13 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/x-www-form-urlencoded'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = localVarFormParams.toString(); return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -667,13 +559,11 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ uploadFile: async (petId: number, additionalMetadata?: string, file?: any, options: any = {}): Promise => { // verify required parameter 'petId' is not null or undefined - if (petId === null || petId === undefined) { - throw new RequiredError('petId','Required parameter petId was null or undefined when calling uploadFile.'); - } + assertParamExists('uploadFile', 'petId', petId) const localVarPath = `/pet/{petId}/uploadImage` .replace(`{${"petId"}}`, encodeURIComponent(String(petId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -686,12 +576,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (additionalMetadata !== undefined) { @@ -705,20 +590,13 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'multipart/form-data'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = localVarFormParams; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -730,6 +608,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) * @export */ export const PetApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = PetApiAxiosParamCreator(configuration) return { /** * @@ -739,11 +618,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async addPet(body: Pet, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).addPet(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.addPet(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -754,11 +630,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async deletePet(petId: number, apiKey?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).deletePet(petId, apiKey, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.deletePet(petId, apiKey, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Multiple status values can be provided with comma separated strings @@ -768,11 +641,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async findPetsByStatus(status: Array<'available' | 'pending' | 'sold'>, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).findPetsByStatus(status, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.findPetsByStatus(status, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. @@ -782,11 +652,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async findPetsByTags(tags: Array, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).findPetsByTags(tags, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.findPetsByTags(tags, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Returns a single pet @@ -796,11 +663,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async getPetById(petId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).getPetById(petId, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.getPetById(petId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -810,11 +674,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async updatePet(body: Pet, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).updatePet(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.updatePet(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -826,11 +687,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async updatePetWithForm(petId: number, name?: string, status?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).updatePetWithForm(petId, name, status, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.updatePetWithForm(petId, name, status, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -842,11 +700,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async uploadFile(petId: number, additionalMetadata?: string, file?: any, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).uploadFile(petId, additionalMetadata, file, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.uploadFile(petId, additionalMetadata, file, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; @@ -856,6 +711,7 @@ export const PetApiFp = function(configuration?: Configuration) { * @export */ export const PetApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = PetApiFp(configuration) return { /** * @@ -865,7 +721,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ addPet(body: Pet, options?: any): AxiosPromise { - return PetApiFp(configuration).addPet(body, options).then((request) => request(axios, basePath)); + return localVarFp.addPet(body, options).then((request) => request(axios, basePath)); }, /** * @@ -876,7 +732,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ deletePet(petId: number, apiKey?: string, options?: any): AxiosPromise { - return PetApiFp(configuration).deletePet(petId, apiKey, options).then((request) => request(axios, basePath)); + return localVarFp.deletePet(petId, apiKey, options).then((request) => request(axios, basePath)); }, /** * Multiple status values can be provided with comma separated strings @@ -886,7 +742,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ findPetsByStatus(status: Array<'available' | 'pending' | 'sold'>, options?: any): AxiosPromise> { - return PetApiFp(configuration).findPetsByStatus(status, options).then((request) => request(axios, basePath)); + return localVarFp.findPetsByStatus(status, options).then((request) => request(axios, basePath)); }, /** * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. @@ -896,7 +752,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ findPetsByTags(tags: Array, options?: any): AxiosPromise> { - return PetApiFp(configuration).findPetsByTags(tags, options).then((request) => request(axios, basePath)); + return localVarFp.findPetsByTags(tags, options).then((request) => request(axios, basePath)); }, /** * Returns a single pet @@ -906,7 +762,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ getPetById(petId: number, options?: any): AxiosPromise { - return PetApiFp(configuration).getPetById(petId, options).then((request) => request(axios, basePath)); + return localVarFp.getPetById(petId, options).then((request) => request(axios, basePath)); }, /** * @@ -916,7 +772,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ updatePet(body: Pet, options?: any): AxiosPromise { - return PetApiFp(configuration).updatePet(body, options).then((request) => request(axios, basePath)); + return localVarFp.updatePet(body, options).then((request) => request(axios, basePath)); }, /** * @@ -928,7 +784,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ updatePetWithForm(petId: number, name?: string, status?: string, options?: any): AxiosPromise { - return PetApiFp(configuration).updatePetWithForm(petId, name, status, options).then((request) => request(axios, basePath)); + return localVarFp.updatePetWithForm(petId, name, status, options).then((request) => request(axios, basePath)); }, /** * @@ -940,7 +796,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ uploadFile(petId: number, additionalMetadata?: string, file?: any, options?: any): AxiosPromise { - return PetApiFp(configuration).uploadFile(petId, additionalMetadata, file, options).then((request) => request(axios, basePath)); + return localVarFp.uploadFile(petId, additionalMetadata, file, options).then((request) => request(axios, basePath)); }, }; }; @@ -1070,13 +926,11 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration */ deleteOrder: async (orderId: string, options: any = {}): Promise => { // verify required parameter 'orderId' is not null or undefined - if (orderId === null || orderId === undefined) { - throw new RequiredError('orderId','Required parameter orderId was null or undefined when calling deleteOrder.'); - } + assertParamExists('deleteOrder', 'orderId', orderId) const localVarPath = `/store/order/{orderId}` .replace(`{${"orderId"}}`, encodeURIComponent(String(orderId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1088,19 +942,12 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1113,7 +960,7 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration getInventory: async (options: any = {}): Promise => { const localVarPath = `/store/inventory`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1124,28 +971,16 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration const localVarQueryParameter = {} as any; // authentication api_key required - if (configuration && configuration.apiKey) { - const localVarApiKeyValue = typeof configuration.apiKey === 'function' - ? await configuration.apiKey("api_key") - : await configuration.apiKey; - localVarHeaderParameter["api_key"] = localVarApiKeyValue; - } + await setApiKeyToObject(localVarHeaderParameter, "api_key", configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1158,13 +993,11 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration */ getOrderById: async (orderId: number, options: any = {}): Promise => { // verify required parameter 'orderId' is not null or undefined - if (orderId === null || orderId === undefined) { - throw new RequiredError('orderId','Required parameter orderId was null or undefined when calling getOrderById.'); - } + assertParamExists('getOrderById', 'orderId', orderId) const localVarPath = `/store/order/{orderId}` .replace(`{${"orderId"}}`, encodeURIComponent(String(orderId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1176,19 +1009,12 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1201,12 +1027,10 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration */ placeOrder: async (body: Order, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling placeOrder.'); - } + assertParamExists('placeOrder', 'body', body) const localVarPath = `/store/order`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1220,26 +1044,13 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1251,6 +1062,7 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration * @export */ export const StoreApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = StoreApiAxiosParamCreator(configuration) return { /** * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors @@ -1260,11 +1072,8 @@ export const StoreApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async deleteOrder(orderId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await StoreApiAxiosParamCreator(configuration).deleteOrder(orderId, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteOrder(orderId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Returns a map of status codes to quantities @@ -1273,11 +1082,8 @@ export const StoreApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async getInventory(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<{ [key: string]: number; }>> { - const localVarAxiosArgs = await StoreApiAxiosParamCreator(configuration).getInventory(options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.getInventory(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions @@ -1287,11 +1093,8 @@ export const StoreApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async getOrderById(orderId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await StoreApiAxiosParamCreator(configuration).getOrderById(orderId, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.getOrderById(orderId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -1301,11 +1104,8 @@ export const StoreApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async placeOrder(body: Order, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await StoreApiAxiosParamCreator(configuration).placeOrder(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.placeOrder(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; @@ -1315,6 +1115,7 @@ export const StoreApiFp = function(configuration?: Configuration) { * @export */ export const StoreApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = StoreApiFp(configuration) return { /** * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors @@ -1324,7 +1125,7 @@ export const StoreApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ deleteOrder(orderId: string, options?: any): AxiosPromise { - return StoreApiFp(configuration).deleteOrder(orderId, options).then((request) => request(axios, basePath)); + return localVarFp.deleteOrder(orderId, options).then((request) => request(axios, basePath)); }, /** * Returns a map of status codes to quantities @@ -1333,7 +1134,7 @@ export const StoreApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ getInventory(options?: any): AxiosPromise<{ [key: string]: number; }> { - return StoreApiFp(configuration).getInventory(options).then((request) => request(axios, basePath)); + return localVarFp.getInventory(options).then((request) => request(axios, basePath)); }, /** * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions @@ -1343,7 +1144,7 @@ export const StoreApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ getOrderById(orderId: number, options?: any): AxiosPromise { - return StoreApiFp(configuration).getOrderById(orderId, options).then((request) => request(axios, basePath)); + return localVarFp.getOrderById(orderId, options).then((request) => request(axios, basePath)); }, /** * @@ -1353,7 +1154,7 @@ export const StoreApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ placeOrder(body: Order, options?: any): AxiosPromise { - return StoreApiFp(configuration).placeOrder(body, options).then((request) => request(axios, basePath)); + return localVarFp.placeOrder(body, options).then((request) => request(axios, basePath)); }, }; }; @@ -1429,12 +1230,10 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ createUser: async (body: User, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling createUser.'); - } + assertParamExists('createUser', 'body', body) const localVarPath = `/user`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1448,26 +1247,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1480,12 +1266,10 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ createUsersWithArrayInput: async (body: Array, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling createUsersWithArrayInput.'); - } + assertParamExists('createUsersWithArrayInput', 'body', body) const localVarPath = `/user/createWithArray`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1499,26 +1283,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1531,12 +1302,10 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ createUsersWithListInput: async (body: Array, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling createUsersWithListInput.'); - } + assertParamExists('createUsersWithListInput', 'body', body) const localVarPath = `/user/createWithList`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1550,26 +1319,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1582,13 +1338,11 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ deleteUser: async (username: string, options: any = {}): Promise => { // verify required parameter 'username' is not null or undefined - if (username === null || username === undefined) { - throw new RequiredError('username','Required parameter username was null or undefined when calling deleteUser.'); - } + assertParamExists('deleteUser', 'username', username) const localVarPath = `/user/{username}` .replace(`{${"username"}}`, encodeURIComponent(String(username))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1600,19 +1354,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1625,13 +1372,11 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ getUserByName: async (username: string, options: any = {}): Promise => { // verify required parameter 'username' is not null or undefined - if (username === null || username === undefined) { - throw new RequiredError('username','Required parameter username was null or undefined when calling getUserByName.'); - } + assertParamExists('getUserByName', 'username', username) const localVarPath = `/user/{username}` .replace(`{${"username"}}`, encodeURIComponent(String(username))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1643,19 +1388,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1669,16 +1407,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ loginUser: async (username: string, password: string, options: any = {}): Promise => { // verify required parameter 'username' is not null or undefined - if (username === null || username === undefined) { - throw new RequiredError('username','Required parameter username was null or undefined when calling loginUser.'); - } + assertParamExists('loginUser', 'username', username) // verify required parameter 'password' is not null or undefined - if (password === null || password === undefined) { - throw new RequiredError('password','Required parameter password was null or undefined when calling loginUser.'); - } + assertParamExists('loginUser', 'password', password) const localVarPath = `/user/login`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1698,19 +1432,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1723,7 +1450,7 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) logoutUser: async (options: any = {}): Promise => { const localVarPath = `/user/logout`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1735,19 +1462,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1761,17 +1481,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ updateUser: async (username: string, body: User, options: any = {}): Promise => { // verify required parameter 'username' is not null or undefined - if (username === null || username === undefined) { - throw new RequiredError('username','Required parameter username was null or undefined when calling updateUser.'); - } + assertParamExists('updateUser', 'username', username) // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling updateUser.'); - } + assertParamExists('updateUser', 'body', body) const localVarPath = `/user/{username}` .replace(`{${"username"}}`, encodeURIComponent(String(username))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1785,26 +1501,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1816,6 +1519,7 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) * @export */ export const UserApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = UserApiAxiosParamCreator(configuration) return { /** * This can only be done by the logged in user. @@ -1825,11 +1529,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async createUser(body: User, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).createUser(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.createUser(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -1839,11 +1540,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async createUsersWithArrayInput(body: Array, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).createUsersWithArrayInput(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.createUsersWithArrayInput(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -1853,11 +1551,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async createUsersWithListInput(body: Array, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).createUsersWithListInput(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.createUsersWithListInput(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * This can only be done by the logged in user. @@ -1867,11 +1562,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async deleteUser(username: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).deleteUser(username, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteUser(username, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -1881,11 +1573,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async getUserByName(username: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).getUserByName(username, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.getUserByName(username, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -1896,11 +1585,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async loginUser(username: string, password: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).loginUser(username, password, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.loginUser(username, password, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -1909,11 +1595,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async logoutUser(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).logoutUser(options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.logoutUser(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * This can only be done by the logged in user. @@ -1924,11 +1607,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async updateUser(username: string, body: User, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).updateUser(username, body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.updateUser(username, body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; @@ -1938,6 +1618,7 @@ export const UserApiFp = function(configuration?: Configuration) { * @export */ export const UserApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = UserApiFp(configuration) return { /** * This can only be done by the logged in user. @@ -1947,7 +1628,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ createUser(body: User, options?: any): AxiosPromise { - return UserApiFp(configuration).createUser(body, options).then((request) => request(axios, basePath)); + return localVarFp.createUser(body, options).then((request) => request(axios, basePath)); }, /** * @@ -1957,7 +1638,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ createUsersWithArrayInput(body: Array, options?: any): AxiosPromise { - return UserApiFp(configuration).createUsersWithArrayInput(body, options).then((request) => request(axios, basePath)); + return localVarFp.createUsersWithArrayInput(body, options).then((request) => request(axios, basePath)); }, /** * @@ -1967,7 +1648,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ createUsersWithListInput(body: Array, options?: any): AxiosPromise { - return UserApiFp(configuration).createUsersWithListInput(body, options).then((request) => request(axios, basePath)); + return localVarFp.createUsersWithListInput(body, options).then((request) => request(axios, basePath)); }, /** * This can only be done by the logged in user. @@ -1977,7 +1658,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ deleteUser(username: string, options?: any): AxiosPromise { - return UserApiFp(configuration).deleteUser(username, options).then((request) => request(axios, basePath)); + return localVarFp.deleteUser(username, options).then((request) => request(axios, basePath)); }, /** * @@ -1987,7 +1668,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ getUserByName(username: string, options?: any): AxiosPromise { - return UserApiFp(configuration).getUserByName(username, options).then((request) => request(axios, basePath)); + return localVarFp.getUserByName(username, options).then((request) => request(axios, basePath)); }, /** * @@ -1998,7 +1679,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ loginUser(username: string, password: string, options?: any): AxiosPromise { - return UserApiFp(configuration).loginUser(username, password, options).then((request) => request(axios, basePath)); + return localVarFp.loginUser(username, password, options).then((request) => request(axios, basePath)); }, /** * @@ -2007,7 +1688,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ logoutUser(options?: any): AxiosPromise { - return UserApiFp(configuration).logoutUser(options).then((request) => request(axios, basePath)); + return localVarFp.logoutUser(options).then((request) => request(axios, basePath)); }, /** * This can only be done by the logged in user. @@ -2018,7 +1699,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ updateUser(username: string, body: User, options?: any): AxiosPromise { - return UserApiFp(configuration).updateUser(username, body, options).then((request) => request(axios, basePath)); + return localVarFp.updateUser(username, body, options).then((request) => request(axios, basePath)); }, }; }; diff --git a/samples/client/petstore/typescript-axios/builds/with-npm-version/common.ts b/samples/client/petstore/typescript-axios/builds/with-npm-version/common.ts new file mode 100644 index 00000000000..23e6a699c68 --- /dev/null +++ b/samples/client/petstore/typescript-axios/builds/with-npm-version/common.ts @@ -0,0 +1,131 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * OpenAPI Petstore + * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. + * + * The version of the OpenAPI document: 1.0.0 + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +import { Configuration } from "./configuration"; +import { RequiredError, RequestArgs } from "./base"; +import { AxiosInstance } from 'axios'; + +/** + * + * @export + */ +export const DUMMY_BASE_URL = 'https://example.com' + +/** + * + * @throws {RequiredError} + * @export + */ +export const assertParamExists = function (functionName: string, paramName: string, paramValue: unknown) { + if (paramValue === null || paramValue === undefined) { + throw new RequiredError(paramName, `Required parameter ${paramName} was null or undefined when calling ${functionName}.`); + } +} + +/** + * + * @export + */ +export const setApiKeyToObject = async function (object: any, keyParamName: string, configuration?: Configuration) { + if (configuration && configuration.apiKey) { + const localVarApiKeyValue = typeof configuration.apiKey === 'function' + ? await configuration.apiKey(keyParamName) + : await configuration.apiKey; + object[keyParamName] = localVarApiKeyValue; + } +} + +/** + * + * @export + */ +export const setBasicAuthToObject = function (object: any, configuration?: Configuration) { + if (configuration && (configuration.username || configuration.password)) { + object["auth"] = { username: configuration.username, password: configuration.password }; + } +} + +/** + * + * @export + */ +export const setBearerAuthToObject = async function (object: any, configuration?: Configuration) { + if (configuration && configuration.accessToken) { + const accessToken = typeof configuration.accessToken === 'function' + ? await configuration.accessToken() + : await configuration.accessToken; + object["Authorization"] = "Bearer " + accessToken; + } +} + +/** + * + * @export + */ +export const setOAuthToObject = async function (object: any, name: string, scopes: string[], configuration?: Configuration) { + if (configuration && configuration.accessToken) { + const localVarAccessTokenValue = typeof configuration.accessToken === 'function' + ? await configuration.accessToken(name, scopes) + : await configuration.accessToken; + object["Authorization"] = "Bearer " + localVarAccessTokenValue; + } +} + +/** + * + * @export + */ +export const setSearchParams = function (url: URL, ...objects: any[]) { + const searchParams = new URLSearchParams(url.search); + for (const object of objects) { + for (const key in object) { + searchParams.set(key, object[key]); + } + } + url.search = searchParams.toString(); +} + +/** + * + * @export + */ +export const serializeDataIfNeeded = function (value: any, requestOptions: any, configuration?: Configuration) { + const nonString = typeof value !== 'string'; + const needsSerialization = nonString && configuration && configuration.isJsonMime + ? configuration.isJsonMime(requestOptions.headers['Content-Type']) + : nonString; + return needsSerialization + ? JSON.stringify(value !== undefined ? value : {}) + : (value || ""); +} + +/** + * + * @export + */ +export const toPathString = function (url: URL) { + return url.pathname + url.search + url.hash +} + +/** + * + * @export + */ +export const createRequestFunction = function (axiosArgs: RequestArgs, globalAxios: AxiosInstance, BASE_PATH: string, configuration?: Configuration) { + return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { + const axiosRequestArgs = {...axiosArgs.options, url: (configuration?.basePath || basePath) + axiosArgs.url}; + return axios.request(axiosRequestArgs); + }; +} diff --git a/samples/client/petstore/typescript-axios/builds/with-single-request-parameters/.openapi-generator/FILES b/samples/client/petstore/typescript-axios/builds/with-single-request-parameters/.openapi-generator/FILES index 5bef353ae38..a80cd4f07b0 100644 --- a/samples/client/petstore/typescript-axios/builds/with-single-request-parameters/.openapi-generator/FILES +++ b/samples/client/petstore/typescript-axios/builds/with-single-request-parameters/.openapi-generator/FILES @@ -2,6 +2,7 @@ .npmignore api.ts base.ts +common.ts configuration.ts git_push.sh index.ts diff --git a/samples/client/petstore/typescript-axios/builds/with-single-request-parameters/api.ts b/samples/client/petstore/typescript-axios/builds/with-single-request-parameters/api.ts index 601ae3dd581..ec156334713 100644 --- a/samples/client/petstore/typescript-axios/builds/with-single-request-parameters/api.ts +++ b/samples/client/petstore/typescript-axios/builds/with-single-request-parameters/api.ts @@ -17,6 +17,8 @@ import { Configuration } from './configuration'; import globalAxios, { AxiosPromise, AxiosInstance } from 'axios'; // Some imports not used depending on template conditions // @ts-ignore +import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from './common'; +// @ts-ignore import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from './base'; /** @@ -261,12 +263,10 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ addPet: async (body: Pet, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling addPet.'); - } + assertParamExists('addPet', 'body', body) const localVarPath = `/pet`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -278,37 +278,19 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -322,13 +304,11 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ deletePet: async (petId: number, apiKey?: string, options: any = {}): Promise => { // verify required parameter 'petId' is not null or undefined - if (petId === null || petId === undefined) { - throw new RequiredError('petId','Required parameter petId was null or undefined when calling deletePet.'); - } + assertParamExists('deletePet', 'petId', petId) const localVarPath = `/pet/{petId}` .replace(`{${"petId"}}`, encodeURIComponent(String(petId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -340,12 +320,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (apiKey !== undefined && apiKey !== null) { localVarHeaderParameter['api_key'] = String(apiKey); @@ -353,19 +328,12 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -378,12 +346,10 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ findPetsByStatus: async (status: Array<'available' | 'pending' | 'sold'>, options: any = {}): Promise => { // verify required parameter 'status' is not null or undefined - if (status === null || status === undefined) { - throw new RequiredError('status','Required parameter status was null or undefined when calling findPetsByStatus.'); - } + assertParamExists('findPetsByStatus', 'status', status) const localVarPath = `/pet/findByStatus`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -395,12 +361,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (status) { localVarQueryParameter['status'] = status.join(COLLECTION_FORMATS.csv); @@ -408,19 +369,12 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -433,12 +387,10 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ findPetsByTags: async (tags: Array, options: any = {}): Promise => { // verify required parameter 'tags' is not null or undefined - if (tags === null || tags === undefined) { - throw new RequiredError('tags','Required parameter tags was null or undefined when calling findPetsByTags.'); - } + assertParamExists('findPetsByTags', 'tags', tags) const localVarPath = `/pet/findByTags`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -450,12 +402,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (tags) { localVarQueryParameter['tags'] = tags.join(COLLECTION_FORMATS.csv); @@ -463,19 +410,12 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -488,13 +428,11 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ getPetById: async (petId: number, options: any = {}): Promise => { // verify required parameter 'petId' is not null or undefined - if (petId === null || petId === undefined) { - throw new RequiredError('petId','Required parameter petId was null or undefined when calling getPetById.'); - } + assertParamExists('getPetById', 'petId', petId) const localVarPath = `/pet/{petId}` .replace(`{${"petId"}}`, encodeURIComponent(String(petId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -505,28 +443,16 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) const localVarQueryParameter = {} as any; // authentication api_key required - if (configuration && configuration.apiKey) { - const localVarApiKeyValue = typeof configuration.apiKey === 'function' - ? await configuration.apiKey("api_key") - : await configuration.apiKey; - localVarHeaderParameter["api_key"] = localVarApiKeyValue; - } + await setApiKeyToObject(localVarHeaderParameter, "api_key", configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -539,12 +465,10 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ updatePet: async (body: Pet, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling updatePet.'); - } + assertParamExists('updatePet', 'body', body) const localVarPath = `/pet`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -556,37 +480,19 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -601,13 +507,11 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ updatePetWithForm: async (petId: number, name?: string, status?: string, options: any = {}): Promise => { // verify required parameter 'petId' is not null or undefined - if (petId === null || petId === undefined) { - throw new RequiredError('petId','Required parameter petId was null or undefined when calling updatePetWithForm.'); - } + assertParamExists('updatePetWithForm', 'petId', petId) const localVarPath = `/pet/{petId}` .replace(`{${"petId"}}`, encodeURIComponent(String(petId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -620,12 +524,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (name !== undefined) { @@ -639,20 +538,13 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/x-www-form-urlencoded'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = localVarFormParams.toString(); return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -667,13 +559,11 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) */ uploadFile: async (petId: number, additionalMetadata?: string, file?: any, options: any = {}): Promise => { // verify required parameter 'petId' is not null or undefined - if (petId === null || petId === undefined) { - throw new RequiredError('petId','Required parameter petId was null or undefined when calling uploadFile.'); - } + assertParamExists('uploadFile', 'petId', petId) const localVarPath = `/pet/{petId}/uploadImage` .replace(`{${"petId"}}`, encodeURIComponent(String(petId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -686,12 +576,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) // authentication petstore_auth required // oauth required - if (configuration && configuration.accessToken) { - const localVarAccessTokenValue = typeof configuration.accessToken === 'function' - ? await configuration.accessToken("petstore_auth", ["write:pets", "read:pets"]) - : await configuration.accessToken; - localVarHeaderParameter["Authorization"] = "Bearer " + localVarAccessTokenValue; - } + await setOAuthToObject(localVarHeaderParameter, "petstore_auth", ["write:pets", "read:pets"], configuration) if (additionalMetadata !== undefined) { @@ -705,20 +590,13 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'multipart/form-data'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; localVarRequestOptions.data = localVarFormParams; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -730,6 +608,7 @@ export const PetApiAxiosParamCreator = function (configuration?: Configuration) * @export */ export const PetApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = PetApiAxiosParamCreator(configuration) return { /** * @@ -739,11 +618,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async addPet(body: Pet, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).addPet(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.addPet(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -754,11 +630,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async deletePet(petId: number, apiKey?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).deletePet(petId, apiKey, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.deletePet(petId, apiKey, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Multiple status values can be provided with comma separated strings @@ -768,11 +641,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async findPetsByStatus(status: Array<'available' | 'pending' | 'sold'>, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).findPetsByStatus(status, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.findPetsByStatus(status, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. @@ -782,11 +652,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async findPetsByTags(tags: Array, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).findPetsByTags(tags, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.findPetsByTags(tags, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Returns a single pet @@ -796,11 +663,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async getPetById(petId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).getPetById(petId, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.getPetById(petId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -810,11 +674,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async updatePet(body: Pet, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).updatePet(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.updatePet(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -826,11 +687,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async updatePetWithForm(petId: number, name?: string, status?: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).updatePetWithForm(petId, name, status, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.updatePetWithForm(petId, name, status, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -842,11 +700,8 @@ export const PetApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async uploadFile(petId: number, additionalMetadata?: string, file?: any, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await PetApiAxiosParamCreator(configuration).uploadFile(petId, additionalMetadata, file, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.uploadFile(petId, additionalMetadata, file, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; @@ -856,6 +711,7 @@ export const PetApiFp = function(configuration?: Configuration) { * @export */ export const PetApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = PetApiFp(configuration) return { /** * @@ -865,7 +721,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ addPet(body: Pet, options?: any): AxiosPromise { - return PetApiFp(configuration).addPet(body, options).then((request) => request(axios, basePath)); + return localVarFp.addPet(body, options).then((request) => request(axios, basePath)); }, /** * @@ -876,7 +732,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ deletePet(petId: number, apiKey?: string, options?: any): AxiosPromise { - return PetApiFp(configuration).deletePet(petId, apiKey, options).then((request) => request(axios, basePath)); + return localVarFp.deletePet(petId, apiKey, options).then((request) => request(axios, basePath)); }, /** * Multiple status values can be provided with comma separated strings @@ -886,7 +742,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ findPetsByStatus(status: Array<'available' | 'pending' | 'sold'>, options?: any): AxiosPromise> { - return PetApiFp(configuration).findPetsByStatus(status, options).then((request) => request(axios, basePath)); + return localVarFp.findPetsByStatus(status, options).then((request) => request(axios, basePath)); }, /** * Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing. @@ -896,7 +752,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ findPetsByTags(tags: Array, options?: any): AxiosPromise> { - return PetApiFp(configuration).findPetsByTags(tags, options).then((request) => request(axios, basePath)); + return localVarFp.findPetsByTags(tags, options).then((request) => request(axios, basePath)); }, /** * Returns a single pet @@ -906,7 +762,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ getPetById(petId: number, options?: any): AxiosPromise { - return PetApiFp(configuration).getPetById(petId, options).then((request) => request(axios, basePath)); + return localVarFp.getPetById(petId, options).then((request) => request(axios, basePath)); }, /** * @@ -916,7 +772,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ updatePet(body: Pet, options?: any): AxiosPromise { - return PetApiFp(configuration).updatePet(body, options).then((request) => request(axios, basePath)); + return localVarFp.updatePet(body, options).then((request) => request(axios, basePath)); }, /** * @@ -928,7 +784,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ updatePetWithForm(petId: number, name?: string, status?: string, options?: any): AxiosPromise { - return PetApiFp(configuration).updatePetWithForm(petId, name, status, options).then((request) => request(axios, basePath)); + return localVarFp.updatePetWithForm(petId, name, status, options).then((request) => request(axios, basePath)); }, /** * @@ -940,7 +796,7 @@ export const PetApiFactory = function (configuration?: Configuration, basePath?: * @throws {RequiredError} */ uploadFile(petId: number, additionalMetadata?: string, file?: any, options?: any): AxiosPromise { - return PetApiFp(configuration).uploadFile(petId, additionalMetadata, file, options).then((request) => request(axios, basePath)); + return localVarFp.uploadFile(petId, additionalMetadata, file, options).then((request) => request(axios, basePath)); }, }; }; @@ -1212,13 +1068,11 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration */ deleteOrder: async (orderId: string, options: any = {}): Promise => { // verify required parameter 'orderId' is not null or undefined - if (orderId === null || orderId === undefined) { - throw new RequiredError('orderId','Required parameter orderId was null or undefined when calling deleteOrder.'); - } + assertParamExists('deleteOrder', 'orderId', orderId) const localVarPath = `/store/order/{orderId}` .replace(`{${"orderId"}}`, encodeURIComponent(String(orderId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1230,19 +1084,12 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1255,7 +1102,7 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration getInventory: async (options: any = {}): Promise => { const localVarPath = `/store/inventory`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1266,28 +1113,16 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration const localVarQueryParameter = {} as any; // authentication api_key required - if (configuration && configuration.apiKey) { - const localVarApiKeyValue = typeof configuration.apiKey === 'function' - ? await configuration.apiKey("api_key") - : await configuration.apiKey; - localVarHeaderParameter["api_key"] = localVarApiKeyValue; - } + await setApiKeyToObject(localVarHeaderParameter, "api_key", configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1300,13 +1135,11 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration */ getOrderById: async (orderId: number, options: any = {}): Promise => { // verify required parameter 'orderId' is not null or undefined - if (orderId === null || orderId === undefined) { - throw new RequiredError('orderId','Required parameter orderId was null or undefined when calling getOrderById.'); - } + assertParamExists('getOrderById', 'orderId', orderId) const localVarPath = `/store/order/{orderId}` .replace(`{${"orderId"}}`, encodeURIComponent(String(orderId))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1318,19 +1151,12 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1344,7 +1170,7 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration placeOrder: async (body?: Order, options: any = {}): Promise => { const localVarPath = `/store/order`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1358,26 +1184,13 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1389,6 +1202,7 @@ export const StoreApiAxiosParamCreator = function (configuration?: Configuration * @export */ export const StoreApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = StoreApiAxiosParamCreator(configuration) return { /** * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors @@ -1398,11 +1212,8 @@ export const StoreApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async deleteOrder(orderId: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await StoreApiAxiosParamCreator(configuration).deleteOrder(orderId, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteOrder(orderId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * Returns a map of status codes to quantities @@ -1411,11 +1222,8 @@ export const StoreApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async getInventory(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<{ [key: string]: number; }>> { - const localVarAxiosArgs = await StoreApiAxiosParamCreator(configuration).getInventory(options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.getInventory(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions @@ -1425,11 +1233,8 @@ export const StoreApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async getOrderById(orderId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await StoreApiAxiosParamCreator(configuration).getOrderById(orderId, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.getOrderById(orderId, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -1439,11 +1244,8 @@ export const StoreApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async placeOrder(body?: Order, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await StoreApiAxiosParamCreator(configuration).placeOrder(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.placeOrder(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; @@ -1453,6 +1255,7 @@ export const StoreApiFp = function(configuration?: Configuration) { * @export */ export const StoreApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = StoreApiFp(configuration) return { /** * For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors @@ -1462,7 +1265,7 @@ export const StoreApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ deleteOrder(orderId: string, options?: any): AxiosPromise { - return StoreApiFp(configuration).deleteOrder(orderId, options).then((request) => request(axios, basePath)); + return localVarFp.deleteOrder(orderId, options).then((request) => request(axios, basePath)); }, /** * Returns a map of status codes to quantities @@ -1471,7 +1274,7 @@ export const StoreApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ getInventory(options?: any): AxiosPromise<{ [key: string]: number; }> { - return StoreApiFp(configuration).getInventory(options).then((request) => request(axios, basePath)); + return localVarFp.getInventory(options).then((request) => request(axios, basePath)); }, /** * For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions @@ -1481,7 +1284,7 @@ export const StoreApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ getOrderById(orderId: number, options?: any): AxiosPromise { - return StoreApiFp(configuration).getOrderById(orderId, options).then((request) => request(axios, basePath)); + return localVarFp.getOrderById(orderId, options).then((request) => request(axios, basePath)); }, /** * @@ -1491,7 +1294,7 @@ export const StoreApiFactory = function (configuration?: Configuration, basePath * @throws {RequiredError} */ placeOrder(body?: Order, options?: any): AxiosPromise { - return StoreApiFp(configuration).placeOrder(body, options).then((request) => request(axios, basePath)); + return localVarFp.placeOrder(body, options).then((request) => request(axios, basePath)); }, }; }; @@ -1609,12 +1412,10 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ createUser: async (body: User, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling createUser.'); - } + assertParamExists('createUser', 'body', body) const localVarPath = `/user`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1628,26 +1429,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1660,12 +1448,10 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ createUsersWithArrayInput: async (body: Array, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling createUsersWithArrayInput.'); - } + assertParamExists('createUsersWithArrayInput', 'body', body) const localVarPath = `/user/createWithArray`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1679,26 +1465,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1711,12 +1484,10 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ createUsersWithListInput: async (body: Array, options: any = {}): Promise => { // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling createUsersWithListInput.'); - } + assertParamExists('createUsersWithListInput', 'body', body) const localVarPath = `/user/createWithList`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1730,26 +1501,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1762,13 +1520,11 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ deleteUser: async (username: string, options: any = {}): Promise => { // verify required parameter 'username' is not null or undefined - if (username === null || username === undefined) { - throw new RequiredError('username','Required parameter username was null or undefined when calling deleteUser.'); - } + assertParamExists('deleteUser', 'username', username) const localVarPath = `/user/{username}` .replace(`{${"username"}}`, encodeURIComponent(String(username))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1780,19 +1536,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1805,13 +1554,11 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ getUserByName: async (username: string, options: any = {}): Promise => { // verify required parameter 'username' is not null or undefined - if (username === null || username === undefined) { - throw new RequiredError('username','Required parameter username was null or undefined when calling getUserByName.'); - } + assertParamExists('getUserByName', 'username', username) const localVarPath = `/user/{username}` .replace(`{${"username"}}`, encodeURIComponent(String(username))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1823,19 +1570,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1849,16 +1589,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ loginUser: async (username: string, password: string, options: any = {}): Promise => { // verify required parameter 'username' is not null or undefined - if (username === null || username === undefined) { - throw new RequiredError('username','Required parameter username was null or undefined when calling loginUser.'); - } + assertParamExists('loginUser', 'username', username) // verify required parameter 'password' is not null or undefined - if (password === null || password === undefined) { - throw new RequiredError('password','Required parameter password was null or undefined when calling loginUser.'); - } + assertParamExists('loginUser', 'password', password) const localVarPath = `/user/login`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1878,19 +1614,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1903,7 +1632,7 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) logoutUser: async (options: any = {}): Promise => { const localVarPath = `/user/logout`; // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1915,19 +1644,12 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1941,17 +1663,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) */ updateUser: async (username: string, body: User, options: any = {}): Promise => { // verify required parameter 'username' is not null or undefined - if (username === null || username === undefined) { - throw new RequiredError('username','Required parameter username was null or undefined when calling updateUser.'); - } + assertParamExists('updateUser', 'username', username) // verify required parameter 'body' is not null or undefined - if (body === null || body === undefined) { - throw new RequiredError('body','Required parameter body was null or undefined when calling updateUser.'); - } + assertParamExists('updateUser', 'body', body) const localVarPath = `/user/{username}` .replace(`{${"username"}}`, encodeURIComponent(String(username))); // use dummy base URL string because the URL constructor only accepts absolute URLs. - const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; @@ -1965,26 +1683,13 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) localVarHeaderParameter['Content-Type'] = 'application/json'; - const queryParameters = new URLSearchParams(localVarUrlObj.search); - for (const key in localVarQueryParameter) { - queryParameters.set(key, localVarQueryParameter[key]); - } - for (const key in options.query) { - queryParameters.set(key, options.query[key]); - } - localVarUrlObj.search = (new URLSearchParams(queryParameters)).toString(); + setSearchParams(localVarUrlObj, localVarQueryParameter, options.query); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - const nonString = typeof body !== 'string'; - const needsSerialization = nonString && configuration && configuration.isJsonMime - ? configuration.isJsonMime(localVarRequestOptions.headers['Content-Type']) - : nonString; - localVarRequestOptions.data = needsSerialization - ? JSON.stringify(body !== undefined ? body : {}) - : (body || ""); + localVarRequestOptions.data = serializeDataIfNeeded(body, localVarRequestOptions, configuration) return { - url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + url: toPathString(localVarUrlObj), options: localVarRequestOptions, }; }, @@ -1996,6 +1701,7 @@ export const UserApiAxiosParamCreator = function (configuration?: Configuration) * @export */ export const UserApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = UserApiAxiosParamCreator(configuration) return { /** * This can only be done by the logged in user. @@ -2005,11 +1711,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async createUser(body: User, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).createUser(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.createUser(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -2019,11 +1722,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async createUsersWithArrayInput(body: Array, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).createUsersWithArrayInput(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.createUsersWithArrayInput(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -2033,11 +1733,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async createUsersWithListInput(body: Array, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).createUsersWithListInput(body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.createUsersWithListInput(body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * This can only be done by the logged in user. @@ -2047,11 +1744,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async deleteUser(username: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).deleteUser(username, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteUser(username, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -2061,11 +1755,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async getUserByName(username: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).getUserByName(username, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.getUserByName(username, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -2076,11 +1767,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async loginUser(username: string, password: string, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).loginUser(username, password, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.loginUser(username, password, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * @@ -2089,11 +1777,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async logoutUser(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).logoutUser(options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.logoutUser(options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** * This can only be done by the logged in user. @@ -2104,11 +1789,8 @@ export const UserApiFp = function(configuration?: Configuration) { * @throws {RequiredError} */ async updateUser(username: string, body: User, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await UserApiAxiosParamCreator(configuration).updateUser(username, body, options); - return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { - const axiosRequestArgs = {...localVarAxiosArgs.options, url: (configuration?.basePath || basePath) + localVarAxiosArgs.url}; - return axios.request(axiosRequestArgs); - }; + const localVarAxiosArgs = await localVarAxiosParamCreator.updateUser(username, body, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, } }; @@ -2118,6 +1800,7 @@ export const UserApiFp = function(configuration?: Configuration) { * @export */ export const UserApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = UserApiFp(configuration) return { /** * This can only be done by the logged in user. @@ -2127,7 +1810,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ createUser(body: User, options?: any): AxiosPromise { - return UserApiFp(configuration).createUser(body, options).then((request) => request(axios, basePath)); + return localVarFp.createUser(body, options).then((request) => request(axios, basePath)); }, /** * @@ -2137,7 +1820,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ createUsersWithArrayInput(body: Array, options?: any): AxiosPromise { - return UserApiFp(configuration).createUsersWithArrayInput(body, options).then((request) => request(axios, basePath)); + return localVarFp.createUsersWithArrayInput(body, options).then((request) => request(axios, basePath)); }, /** * @@ -2147,7 +1830,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ createUsersWithListInput(body: Array, options?: any): AxiosPromise { - return UserApiFp(configuration).createUsersWithListInput(body, options).then((request) => request(axios, basePath)); + return localVarFp.createUsersWithListInput(body, options).then((request) => request(axios, basePath)); }, /** * This can only be done by the logged in user. @@ -2157,7 +1840,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ deleteUser(username: string, options?: any): AxiosPromise { - return UserApiFp(configuration).deleteUser(username, options).then((request) => request(axios, basePath)); + return localVarFp.deleteUser(username, options).then((request) => request(axios, basePath)); }, /** * @@ -2167,7 +1850,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ getUserByName(username: string, options?: any): AxiosPromise { - return UserApiFp(configuration).getUserByName(username, options).then((request) => request(axios, basePath)); + return localVarFp.getUserByName(username, options).then((request) => request(axios, basePath)); }, /** * @@ -2178,7 +1861,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ loginUser(username: string, password: string, options?: any): AxiosPromise { - return UserApiFp(configuration).loginUser(username, password, options).then((request) => request(axios, basePath)); + return localVarFp.loginUser(username, password, options).then((request) => request(axios, basePath)); }, /** * @@ -2187,7 +1870,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ logoutUser(options?: any): AxiosPromise { - return UserApiFp(configuration).logoutUser(options).then((request) => request(axios, basePath)); + return localVarFp.logoutUser(options).then((request) => request(axios, basePath)); }, /** * This can only be done by the logged in user. @@ -2198,7 +1881,7 @@ export const UserApiFactory = function (configuration?: Configuration, basePath? * @throws {RequiredError} */ updateUser(username: string, body: User, options?: any): AxiosPromise { - return UserApiFp(configuration).updateUser(username, body, options).then((request) => request(axios, basePath)); + return localVarFp.updateUser(username, body, options).then((request) => request(axios, basePath)); }, }; }; diff --git a/samples/client/petstore/typescript-axios/builds/with-single-request-parameters/common.ts b/samples/client/petstore/typescript-axios/builds/with-single-request-parameters/common.ts new file mode 100644 index 00000000000..23e6a699c68 --- /dev/null +++ b/samples/client/petstore/typescript-axios/builds/with-single-request-parameters/common.ts @@ -0,0 +1,131 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * OpenAPI Petstore + * This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters. + * + * The version of the OpenAPI document: 1.0.0 + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +import { Configuration } from "./configuration"; +import { RequiredError, RequestArgs } from "./base"; +import { AxiosInstance } from 'axios'; + +/** + * + * @export + */ +export const DUMMY_BASE_URL = 'https://example.com' + +/** + * + * @throws {RequiredError} + * @export + */ +export const assertParamExists = function (functionName: string, paramName: string, paramValue: unknown) { + if (paramValue === null || paramValue === undefined) { + throw new RequiredError(paramName, `Required parameter ${paramName} was null or undefined when calling ${functionName}.`); + } +} + +/** + * + * @export + */ +export const setApiKeyToObject = async function (object: any, keyParamName: string, configuration?: Configuration) { + if (configuration && configuration.apiKey) { + const localVarApiKeyValue = typeof configuration.apiKey === 'function' + ? await configuration.apiKey(keyParamName) + : await configuration.apiKey; + object[keyParamName] = localVarApiKeyValue; + } +} + +/** + * + * @export + */ +export const setBasicAuthToObject = function (object: any, configuration?: Configuration) { + if (configuration && (configuration.username || configuration.password)) { + object["auth"] = { username: configuration.username, password: configuration.password }; + } +} + +/** + * + * @export + */ +export const setBearerAuthToObject = async function (object: any, configuration?: Configuration) { + if (configuration && configuration.accessToken) { + const accessToken = typeof configuration.accessToken === 'function' + ? await configuration.accessToken() + : await configuration.accessToken; + object["Authorization"] = "Bearer " + accessToken; + } +} + +/** + * + * @export + */ +export const setOAuthToObject = async function (object: any, name: string, scopes: string[], configuration?: Configuration) { + if (configuration && configuration.accessToken) { + const localVarAccessTokenValue = typeof configuration.accessToken === 'function' + ? await configuration.accessToken(name, scopes) + : await configuration.accessToken; + object["Authorization"] = "Bearer " + localVarAccessTokenValue; + } +} + +/** + * + * @export + */ +export const setSearchParams = function (url: URL, ...objects: any[]) { + const searchParams = new URLSearchParams(url.search); + for (const object of objects) { + for (const key in object) { + searchParams.set(key, object[key]); + } + } + url.search = searchParams.toString(); +} + +/** + * + * @export + */ +export const serializeDataIfNeeded = function (value: any, requestOptions: any, configuration?: Configuration) { + const nonString = typeof value !== 'string'; + const needsSerialization = nonString && configuration && configuration.isJsonMime + ? configuration.isJsonMime(requestOptions.headers['Content-Type']) + : nonString; + return needsSerialization + ? JSON.stringify(value !== undefined ? value : {}) + : (value || ""); +} + +/** + * + * @export + */ +export const toPathString = function (url: URL) { + return url.pathname + url.search + url.hash +} + +/** + * + * @export + */ +export const createRequestFunction = function (axiosArgs: RequestArgs, globalAxios: AxiosInstance, BASE_PATH: string, configuration?: Configuration) { + return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { + const axiosRequestArgs = {...axiosArgs.options, url: (configuration?.basePath || basePath) + axiosArgs.url}; + return axios.request(axiosRequestArgs); + }; +}