Skip to content

Commit 2896d0e

Browse files
committed
re-gen api to /generated, add path mapping
1 parent 394d1b3 commit 2896d0e

File tree

19 files changed

+267
-187
lines changed

19 files changed

+267
-187
lines changed

src/Umbraco.Cms.Integrations.Search.Algolia/Client/src/api/core/ApiRequestOptions.ts renamed to src/Umbraco.Cms.Integrations.Search.Algolia/Client/generated/core/ApiRequestOptions.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,5 +9,5 @@ export type ApiRequestOptions = {
99
readonly body?: any;
1010
readonly mediaType?: string;
1111
readonly responseHeader?: string;
12-
readonly errors?: Record<number, string>;
12+
readonly errors?: Record<number | string, string>;
1313
};

src/Umbraco.Cms.Integrations.Search.Algolia/Client/src/api/core/OpenAPI.ts renamed to src/Umbraco.Cms.Integrations.Search.Algolia/Client/generated/core/OpenAPI.ts

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -11,17 +11,14 @@ export class Interceptors<T> {
1111
this._fns = [];
1212
}
1313

14-
eject(fn: Middleware<T>) {
14+
eject(fn: Middleware<T>): void {
1515
const index = this._fns.indexOf(fn);
1616
if (index !== -1) {
17-
this._fns = [
18-
...this._fns.slice(0, index),
19-
...this._fns.slice(index + 1),
20-
];
17+
this._fns = [...this._fns.slice(0, index), ...this._fns.slice(index + 1)];
2118
}
2219
}
2320

24-
use(fn: Middleware<T>) {
21+
use(fn: Middleware<T>): void {
2522
this._fns = [...this._fns, fn];
2623
}
2724
}
@@ -36,8 +33,10 @@ export type OpenAPIConfig = {
3633
USERNAME?: string | Resolver<string> | undefined;
3734
VERSION: string;
3835
WITH_CREDENTIALS: boolean;
39-
interceptors: {request: Interceptors<RequestInit>;
40-
response: Interceptors<Response>;};
36+
interceptors: {
37+
request: Interceptors<RequestInit>;
38+
response: Interceptors<Response>;
39+
};
4140
};
4241

4342
export const OpenAPI: OpenAPIConfig = {
@@ -50,6 +49,8 @@ export const OpenAPI: OpenAPIConfig = {
5049
USERNAME: undefined,
5150
VERSION: 'Latest',
5251
WITH_CREDENTIALS: false,
53-
interceptors: {request: new Interceptors(),response: new Interceptors(),
52+
interceptors: {
53+
request: new Interceptors(),
54+
response: new Interceptors(),
5455
},
5556
};

src/Umbraco.Cms.Integrations.Search.Algolia/Client/src/api/core/request.ts renamed to src/Umbraco.Cms.Integrations.Search.Algolia/Client/generated/core/request.ts

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,9 @@ export const getQueryString = (params: Record<string, unknown>): string => {
4242
return;
4343
}
4444

45-
if (Array.isArray(value)) {
45+
if (value instanceof Date) {
46+
append(key, value.toISOString());
47+
} else if (Array.isArray(value)) {
4648
value.forEach(v => encodePair(key, v));
4749
} else if (typeof value === 'object') {
4850
Object.entries(value).forEach(([k, v]) => encodePair(`${key}[${k}]`, v));
@@ -154,7 +156,7 @@ export const getHeaders = async (config: OpenAPIConfig, options: ApiRequestOptio
154156
export const getRequestBody = (options: ApiRequestOptions): unknown => {
155157
if (options.body !== undefined) {
156158
if (options.mediaType?.includes('application/json') || options.mediaType?.includes('+json')) {
157-
return JSON.stringify(options.body)
159+
return JSON.stringify(options.body);
158160
} else if (isString(options.body) || isBlob(options.body) || isFormData(options.body)) {
159161
return options.body;
160162
} else {
@@ -187,7 +189,7 @@ export const sendRequest = async (
187189
}
188190

189191
for (const fn of config.interceptors.request._fns) {
190-
request = await fn(request)
192+
request = await fn(request);
191193
}
192194

193195
onCancel(() => controller.abort());
@@ -314,7 +316,7 @@ export const request = <T>(config: OpenAPIConfig, options: ApiRequestOptions): C
314316
let response = await sendRequest(config, options, url, body, formData, headers, onCancel);
315317

316318
for (const fn of config.interceptors.response._fns) {
317-
response = await fn(response)
319+
response = await fn(response);
318320
}
319321

320322
const responseBody = await getResponseBody(response);
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
1+
// This file is auto-generated by @hey-api/openapi-ts
22
export { ApiError } from './core/ApiError';
33
export { CancelablePromise, CancelError } from './core/CancelablePromise';
44
export { OpenAPI, type OpenAPIConfig } from './core/OpenAPI';
5-
export * from './models';
6-
export * from './services';
5+
export * from './services.gen';
6+
export * from './types.gen';
Original file line numberDiff line numberDiff line change
@@ -1,142 +1,129 @@
1+
// This file is auto-generated by @hey-api/openapi-ts
2+
13
import type { CancelablePromise } from './core/CancelablePromise';
24
import { OpenAPI } from './core/OpenAPI';
35
import { request as __request } from './core/request';
4-
import type { AlgoliaSearchData } from './models';
6+
import type { GetContentTypesResponse, GetContentTypesByIndexIdData, GetContentTypesByIndexIdResponse, GetIndicesResponse, SaveIndexData, SaveIndexResponse, DeleteIndexData, DeleteIndexResponse, GetIndexByIdData, GetIndexByIdResponse, SearchData, SearchResponse, BuildIndexData, BuildIndexResponse } from './types.gen';
57

68
export class AlgoliaSearchService {
7-
89
/**
910
* @returns unknown OK
1011
* @throws ApiError
1112
*/
12-
public static getContentTypes(): CancelablePromise<AlgoliaSearchData['responses']['GetContentTypes']> {
13-
13+
public static getContentTypes(): CancelablePromise<GetContentTypesResponse> {
1414
return __request(OpenAPI, {
1515
method: 'GET',
16-
url: '/umbraco/algolia-search/management/api/v1/search/content-type',
16+
url: '/umbraco/algolia-search/management/api/v1/search/content-type'
1717
});
1818
}
19-
19+
2020
/**
21+
* @param data The data for the request.
22+
* @param data.id
2123
* @returns unknown OK
2224
* @throws ApiError
2325
*/
24-
public static getContentTypesByIndexId(data: AlgoliaSearchData['payloads']['GetContentTypesByIndexId']): CancelablePromise<AlgoliaSearchData['responses']['GetContentTypesByIndexId']> {
25-
const {
26-
27-
id
28-
} = data;
26+
public static getContentTypesByIndexId(data: GetContentTypesByIndexIdData): CancelablePromise<GetContentTypesByIndexIdResponse> {
2927
return __request(OpenAPI, {
3028
method: 'GET',
3129
url: '/umbraco/algolia-search/management/api/v1/search/content-type/index/{id}',
3230
path: {
33-
id
34-
},
31+
id: data.id
32+
}
3533
});
3634
}
37-
35+
3836
/**
3937
* @returns unknown OK
4038
* @throws ApiError
4139
*/
42-
public static getIndices(): CancelablePromise<AlgoliaSearchData['responses']['GetIndices']> {
43-
40+
public static getIndices(): CancelablePromise<GetIndicesResponse> {
4441
return __request(OpenAPI, {
4542
method: 'GET',
46-
url: '/umbraco/algolia-search/management/api/v1/search/index',
43+
url: '/umbraco/algolia-search/management/api/v1/search/index'
4744
});
4845
}
49-
46+
5047
/**
48+
* @param data The data for the request.
49+
* @param data.requestBody
5150
* @returns unknown OK
5251
* @throws ApiError
5352
*/
54-
public static saveIndex(data: AlgoliaSearchData['payloads']['SaveIndex'] = {}): CancelablePromise<AlgoliaSearchData['responses']['SaveIndex']> {
55-
const {
56-
57-
requestBody
58-
} = data;
53+
public static saveIndex(data: SaveIndexData = {}): CancelablePromise<SaveIndexResponse> {
5954
return __request(OpenAPI, {
6055
method: 'POST',
6156
url: '/umbraco/algolia-search/management/api/v1/search/index',
62-
body: requestBody,
63-
mediaType: 'application/json',
57+
body: data.requestBody,
58+
mediaType: 'application/json'
6459
});
6560
}
66-
61+
6762
/**
63+
* @param data The data for the request.
64+
* @param data.id
6865
* @returns unknown OK
6966
* @throws ApiError
7067
*/
71-
public static deleteIndex(data: AlgoliaSearchData['payloads']['DeleteIndex']): CancelablePromise<AlgoliaSearchData['responses']['DeleteIndex']> {
72-
const {
73-
74-
id
75-
} = data;
68+
public static deleteIndex(data: DeleteIndexData): CancelablePromise<DeleteIndexResponse> {
7669
return __request(OpenAPI, {
7770
method: 'DELETE',
7871
url: '/umbraco/algolia-search/management/api/v1/search/index/{id}',
7972
path: {
80-
id
81-
},
73+
id: data.id
74+
}
8275
});
8376
}
84-
77+
8578
/**
79+
* @param data The data for the request.
80+
* @param data.id
8681
* @returns unknown OK
8782
* @throws ApiError
8883
*/
89-
public static getIndexById(data: AlgoliaSearchData['payloads']['GetIndexById']): CancelablePromise<AlgoliaSearchData['responses']['GetIndexById']> {
90-
const {
91-
92-
id
93-
} = data;
84+
public static getIndexById(data: GetIndexByIdData): CancelablePromise<GetIndexByIdResponse> {
9485
return __request(OpenAPI, {
9586
method: 'GET',
9687
url: '/umbraco/algolia-search/management/api/v1/search/index/{id}',
9788
path: {
98-
id
99-
},
89+
id: data.id
90+
}
10091
});
10192
}
102-
93+
10394
/**
95+
* @param data The data for the request.
96+
* @param data.indexId
97+
* @param data.query
10498
* @returns unknown OK
10599
* @throws ApiError
106100
*/
107-
public static search(data: AlgoliaSearchData['payloads']['Search']): CancelablePromise<AlgoliaSearchData['responses']['Search']> {
108-
const {
109-
110-
indexId,
111-
query
112-
} = data;
101+
public static search(data: SearchData): CancelablePromise<SearchResponse> {
113102
return __request(OpenAPI, {
114103
method: 'GET',
115104
url: '/umbraco/algolia-search/management/api/v1/search/index/{indexId}/search',
116105
path: {
117-
indexId
106+
indexId: data.indexId
118107
},
119108
query: {
120-
query
121-
},
109+
query: data.query
110+
}
122111
});
123112
}
124-
113+
125114
/**
115+
* @param data The data for the request.
116+
* @param data.requestBody
126117
* @returns unknown OK
127118
* @throws ApiError
128119
*/
129-
public static buildIndex(data: AlgoliaSearchData['payloads']['BuildIndex'] = {}): CancelablePromise<AlgoliaSearchData['responses']['BuildIndex']> {
130-
const {
131-
132-
requestBody
133-
} = data;
120+
public static buildIndex(data: BuildIndexData = {}): CancelablePromise<BuildIndexResponse> {
134121
return __request(OpenAPI, {
135122
method: 'POST',
136123
url: '/umbraco/algolia-search/management/api/v1/search/index/build',
137-
body: requestBody,
138-
mediaType: 'application/json',
124+
body: data.requestBody,
125+
mediaType: 'application/json'
139126
});
140127
}
141-
128+
142129
}

0 commit comments

Comments
 (0)