- Simplified sort

- Updated axios client to use getHeaders when available
This commit is contained in:
Ferdi Koomen 2021-10-11 22:38:58 +02:00
parent 22b30e04f5
commit 4b5060ed01
3 changed files with 10 additions and 37 deletions

View File

@ -1,23 +1,9 @@
import type { OperationParameter } from '../../../client/interfaces/OperationParameter';
export function sortByRequired(a: OperationParameter, b: OperationParameter): number {
const aIsRequiredWithoutDefaultValue = a.isRequired && a.default === undefined;
const bIsRequiredWithoutDefaultValue = b.isRequired && b.default === undefined;
const aIsRequiredWithDefaultValue = a.isRequired && a.default !== undefined;
const bIsRequiredWithDefaultValue = b.isRequired && b.default !== undefined;
const aIsOptionalWithDefaultValue = !a.isRequired && a.default !== undefined;
const bIsOptionalWithDefaultValue = !b.isRequired && b.default !== undefined;
const aIsOptionalWithoutDefaultValue = !a.isRequired && a.default === undefined;
const bIsOptionalWithoutDefaultValue = !b.isRequired && b.default === undefined;
if (aIsRequiredWithoutDefaultValue && !bIsRequiredWithoutDefaultValue) return -1;
if (bIsRequiredWithoutDefaultValue && !aIsRequiredWithoutDefaultValue) return 1;
if (aIsRequiredWithDefaultValue && !bIsRequiredWithDefaultValue) return -1;
if (bIsRequiredWithDefaultValue && !aIsRequiredWithDefaultValue) return 1;
if (aIsOptionalWithDefaultValue && !bIsOptionalWithDefaultValue) return -1;
if (bIsOptionalWithDefaultValue && !aIsOptionalWithDefaultValue) return 1;
if (aIsOptionalWithoutDefaultValue && !bIsOptionalWithoutDefaultValue) return -1;
if (bIsOptionalWithoutDefaultValue && !aIsOptionalWithoutDefaultValue) return 1;
const aNeedsValue = a.isRequired && a.default === undefined;
const bNeedsValue = b.isRequired && b.default === undefined;
if (aNeedsValue && !bNeedsValue) return -1;
if (bNeedsValue && !aNeedsValue) return 1;
return 0;
}

View File

@ -1,23 +1,9 @@
import type { OperationParameter } from '../../../client/interfaces/OperationParameter';
export function sortByRequired(a: OperationParameter, b: OperationParameter): number {
const aIsRequiredWithoutDefaultValue = a.isRequired && a.default === undefined;
const bIsRequiredWithoutDefaultValue = b.isRequired && b.default === undefined;
const aIsRequiredWithDefaultValue = a.isRequired && a.default !== undefined;
const bIsRequiredWithDefaultValue = b.isRequired && b.default !== undefined;
const aIsOptionalWithDefaultValue = !a.isRequired && a.default !== undefined;
const bIsOptionalWithDefaultValue = !b.isRequired && b.default !== undefined;
const aIsOptionalWithoutDefaultValue = !a.isRequired && a.default === undefined;
const bIsOptionalWithoutDefaultValue = !b.isRequired && b.default === undefined;
if (aIsRequiredWithoutDefaultValue && !bIsRequiredWithoutDefaultValue) return -1;
if (bIsRequiredWithoutDefaultValue && !aIsRequiredWithoutDefaultValue) return 1;
if (aIsRequiredWithDefaultValue && !bIsRequiredWithDefaultValue) return -1;
if (bIsRequiredWithDefaultValue && !aIsRequiredWithDefaultValue) return 1;
if (aIsOptionalWithDefaultValue && !bIsOptionalWithDefaultValue) return -1;
if (bIsOptionalWithDefaultValue && !aIsOptionalWithDefaultValue) return 1;
if (aIsOptionalWithoutDefaultValue && !bIsOptionalWithoutDefaultValue) return -1;
if (bIsOptionalWithoutDefaultValue && !aIsOptionalWithoutDefaultValue) return 1;
const aNeedsValue = a.isRequired && a.default === undefined;
const bNeedsValue = b.isRequired && b.default === undefined;
if (aNeedsValue && !bNeedsValue) return -1;
if (bNeedsValue && !aNeedsValue) return 1;
return 0;
}

View File

@ -3,12 +3,13 @@ async function getHeaders(options: ApiRequestOptions, formData?: FormData): Prom
const username = await resolve(options, OpenAPI.USERNAME);
const password = await resolve(options, OpenAPI.PASSWORD);
const additionalHeaders = await resolve(options, OpenAPI.HEADERS);
const formHeaders = typeof formData?.getHeaders === 'function' && formData?.getHeaders() || {}
const headers = Object.entries({
Accept: 'application/json',
...additionalHeaders,
...options.headers,
...formData?.getHeaders()
...formHeaders,
})
.filter(([key, value]) => isDefined(value))
.reduce((headers, [key, value]) => ({