@omerikanec/api-client-demo 2.0.2 → 2.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. package/dist/{api.schemas.ts → api.schemas.d.ts} +2 -3
  2. package/dist/api.schemas.js +1 -0
  3. package/dist/auth/auth.d.ts +82 -0
  4. package/dist/auth/auth.js +71 -0
  5. package/dist/breed/breed.d.ts +147 -0
  6. package/dist/breed/breed.js +148 -0
  7. package/dist/club-documents/club-documents.d.ts +76 -0
  8. package/dist/club-documents/club-documents.js +78 -0
  9. package/dist/club-stats/club-stats.d.ts +37 -0
  10. package/dist/club-stats/club-stats.js +40 -0
  11. package/dist/content-dictionary/content-dictionary.d.ts +119 -0
  12. package/dist/content-dictionary/content-dictionary.js +116 -0
  13. package/dist/dog-references/dog-references.d.ts +360 -0
  14. package/dist/dog-references/dog-references.js +358 -0
  15. package/dist/dogs/dogs.d.ts +351 -0
  16. package/dist/dogs/dogs.js +329 -0
  17. package/dist/event-reports/event-reports.d.ts +76 -0
  18. package/dist/event-reports/event-reports.js +78 -0
  19. package/dist/events/events.d.ts +76 -0
  20. package/dist/events/events.js +78 -0
  21. package/dist/galleries/galleries.d.ts +108 -0
  22. package/dist/galleries/galleries.js +117 -0
  23. package/dist/home/home.d.ts +37 -0
  24. package/dist/home/home.js +40 -0
  25. package/dist/import-breedarchive/import-breedarchive.d.ts +177 -0
  26. package/dist/import-breedarchive/import-breedarchive.js +140 -0
  27. package/dist/import-hybrid/import-hybrid.d.ts +134 -0
  28. package/dist/import-hybrid/import-hybrid.js +107 -0
  29. package/dist/import-hybrid-full/import-hybrid-full.d.ts +134 -0
  30. package/dist/import-hybrid-full/import-hybrid-full.js +107 -0
  31. package/dist/import-zooportal/import-zooportal.d.ts +146 -0
  32. package/dist/import-zooportal/import-zooportal.js +107 -0
  33. package/dist/{index.ts → index.d.ts} +0 -1
  34. package/dist/index.js +31 -0
  35. package/dist/judges/judges.d.ts +147 -0
  36. package/dist/judges/judges.js +148 -0
  37. package/dist/leadership/leadership.d.ts +146 -0
  38. package/dist/leadership/leadership.js +148 -0
  39. package/dist/my-achievements/my-achievements.d.ts +87 -0
  40. package/dist/my-achievements/my-achievements.js +77 -0
  41. package/dist/my-applications/my-applications.d.ts +290 -0
  42. package/dist/my-applications/my-applications.js +207 -0
  43. package/dist/my-dogs/my-dogs.d.ts +329 -0
  44. package/dist/my-dogs/my-dogs.js +245 -0
  45. package/dist/my-kennels/my-kennels.d.ts +290 -0
  46. package/dist/my-kennels/my-kennels.js +207 -0
  47. package/dist/my-litters/my-litters.d.ts +290 -0
  48. package/dist/my-litters/my-litters.js +207 -0
  49. package/dist/news/news.d.ts +76 -0
  50. package/dist/news/news.js +78 -0
  51. package/dist/pages/pages.d.ts +76 -0
  52. package/dist/pages/pages.js +78 -0
  53. package/dist/profile/profile.d.ts +99 -0
  54. package/dist/profile/profile.js +72 -0
  55. package/dist/status-of-import-task/status-of-import-task.d.ts +44 -0
  56. package/dist/status-of-import-task/status-of-import-task.js +39 -0
  57. package/package.json +1 -1
  58. package/dist/.api-sync/incremental-spec.json +0 -71
  59. package/dist/auth/auth.ts +0 -221
  60. package/dist/breed/breed.ts +0 -434
  61. package/dist/club-documents/club-documents.ts +0 -231
  62. package/dist/club-stats/club-stats.ts +0 -122
  63. package/dist/content-dictionary/content-dictionary.ts +0 -345
  64. package/dist/dog-references/dog-references.ts +0 -1043
  65. package/dist/dogs/dogs.ts +0 -972
  66. package/dist/event-reports/event-reports.ts +0 -231
  67. package/dist/events/events.ts +0 -231
  68. package/dist/galleries/galleries.ts +0 -332
  69. package/dist/home/home.ts +0 -122
  70. package/dist/import-breedarchive/import-breedarchive.ts +0 -417
  71. package/dist/import-hybrid/import-hybrid.ts +0 -320
  72. package/dist/import-hybrid-full/import-hybrid-full.ts +0 -320
  73. package/dist/import-zooportal/import-zooportal.ts +0 -335
  74. package/dist/judges/judges.ts +0 -434
  75. package/dist/leadership/leadership.ts +0 -433
  76. package/dist/my-achievements/my-achievements.ts +0 -243
  77. package/dist/my-applications/my-applications.ts +0 -665
  78. package/dist/my-dogs/my-dogs.ts +0 -772
  79. package/dist/my-kennels/my-kennels.ts +0 -665
  80. package/dist/my-litters/my-litters.ts +0 -665
  81. package/dist/news/news.ts +0 -231
  82. package/dist/pages/pages.ts +0 -231
  83. package/dist/profile/profile.ts +0 -246
  84. package/dist/status-of-import-task/status-of-import-task.ts +0 -129
@@ -0,0 +1,290 @@
1
+ import type { QueryKey, UseMutationOptions, UseMutationResult, UseQueryOptions, UseQueryResult } from '@tanstack/react-query';
2
+ import type { Litter, LitterRequest, MeLittersListParams, PaginatedLitterList, PatchedLitterRequest } from '../api.schemas';
3
+ type AwaitedInput<T> = PromiseLike<T> | T;
4
+ type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;
5
+ /**
6
+ * API пометов пользователя
7
+ * @summary Список моих помётов
8
+ */
9
+ export type meLittersListResponse200 = {
10
+ data: PaginatedLitterList;
11
+ status: 200;
12
+ };
13
+ export type meLittersListResponse401 = {
14
+ data: void;
15
+ status: 401;
16
+ };
17
+ export type meLittersListResponseSuccess = (meLittersListResponse200) & {
18
+ headers: Headers;
19
+ };
20
+ export type meLittersListResponseError = (meLittersListResponse401) & {
21
+ headers: Headers;
22
+ };
23
+ export type meLittersListResponse = (meLittersListResponseSuccess | meLittersListResponseError);
24
+ export declare const getMeLittersListUrl: (params?: MeLittersListParams) => string;
25
+ export declare const meLittersList: (params?: MeLittersListParams, options?: RequestInit) => Promise<meLittersListResponse>;
26
+ export declare const getMeLittersListQueryKey: (params?: MeLittersListParams) => readonly ["/api/me/litters/", ...MeLittersListParams[]];
27
+ export declare const getMeLittersListQueryOptions: <TData = Awaited<ReturnType<typeof meLittersList>>, TError = void>(params?: MeLittersListParams, options?: {
28
+ query?: UseQueryOptions<Awaited<ReturnType<typeof meLittersList>>, TError, TData>;
29
+ fetch?: RequestInit;
30
+ }) => UseQueryOptions<Awaited<ReturnType<typeof meLittersList>>, TError, TData> & {
31
+ queryKey: QueryKey;
32
+ };
33
+ export type MeLittersListQueryResult = NonNullable<Awaited<ReturnType<typeof meLittersList>>>;
34
+ export type MeLittersListQueryError = void;
35
+ /**
36
+ * @summary Список моих помётов
37
+ */
38
+ export declare function useMeLittersList<TData = Awaited<ReturnType<typeof meLittersList>>, TError = void>(params?: MeLittersListParams, options?: {
39
+ query?: UseQueryOptions<Awaited<ReturnType<typeof meLittersList>>, TError, TData>;
40
+ fetch?: RequestInit;
41
+ }): UseQueryResult<TData, TError> & {
42
+ queryKey: QueryKey;
43
+ };
44
+ /**
45
+ * API пометов пользователя
46
+ * @summary Создать помёт
47
+ */
48
+ export type meLittersCreateResponse201 = {
49
+ data: Litter;
50
+ status: 201;
51
+ };
52
+ export type meLittersCreateResponse400 = {
53
+ data: void;
54
+ status: 400;
55
+ };
56
+ export type meLittersCreateResponse401 = {
57
+ data: void;
58
+ status: 401;
59
+ };
60
+ export type meLittersCreateResponseSuccess = (meLittersCreateResponse201) & {
61
+ headers: Headers;
62
+ };
63
+ export type meLittersCreateResponseError = (meLittersCreateResponse400 | meLittersCreateResponse401) & {
64
+ headers: Headers;
65
+ };
66
+ export type meLittersCreateResponse = (meLittersCreateResponseSuccess | meLittersCreateResponseError);
67
+ export declare const getMeLittersCreateUrl: () => string;
68
+ export declare const meLittersCreate: (litterRequest: LitterRequest, options?: RequestInit) => Promise<meLittersCreateResponse>;
69
+ export declare const getMeLittersCreateMutationOptions: <TError = void, TContext = unknown>(options?: {
70
+ mutation?: UseMutationOptions<Awaited<ReturnType<typeof meLittersCreate>>, TError, {
71
+ data: LitterRequest;
72
+ }, TContext>;
73
+ fetch?: RequestInit;
74
+ }) => UseMutationOptions<Awaited<ReturnType<typeof meLittersCreate>>, TError, {
75
+ data: LitterRequest;
76
+ }, TContext>;
77
+ export type MeLittersCreateMutationResult = NonNullable<Awaited<ReturnType<typeof meLittersCreate>>>;
78
+ export type MeLittersCreateMutationBody = LitterRequest;
79
+ export type MeLittersCreateMutationError = void;
80
+ /**
81
+ * @summary Создать помёт
82
+ */
83
+ export declare const useMeLittersCreate: <TError = void, TContext = unknown>(options?: {
84
+ mutation?: UseMutationOptions<Awaited<ReturnType<typeof meLittersCreate>>, TError, {
85
+ data: LitterRequest;
86
+ }, TContext>;
87
+ fetch?: RequestInit;
88
+ }) => UseMutationResult<Awaited<ReturnType<typeof meLittersCreate>>, TError, {
89
+ data: LitterRequest;
90
+ }, TContext>;
91
+ /**
92
+ * API пометов пользователя
93
+ * @summary Получить мой помёт по ID
94
+ */
95
+ export type meLittersRetrieveResponse200 = {
96
+ data: Litter;
97
+ status: 200;
98
+ };
99
+ export type meLittersRetrieveResponse401 = {
100
+ data: void;
101
+ status: 401;
102
+ };
103
+ export type meLittersRetrieveResponse404 = {
104
+ data: void;
105
+ status: 404;
106
+ };
107
+ export type meLittersRetrieveResponseSuccess = (meLittersRetrieveResponse200) & {
108
+ headers: Headers;
109
+ };
110
+ export type meLittersRetrieveResponseError = (meLittersRetrieveResponse401 | meLittersRetrieveResponse404) & {
111
+ headers: Headers;
112
+ };
113
+ export type meLittersRetrieveResponse = (meLittersRetrieveResponseSuccess | meLittersRetrieveResponseError);
114
+ export declare const getMeLittersRetrieveUrl: (id: string) => string;
115
+ export declare const meLittersRetrieve: (id: string, options?: RequestInit) => Promise<meLittersRetrieveResponse>;
116
+ export declare const getMeLittersRetrieveQueryKey: (id: string) => readonly [`/api/me/litters/${string}/`];
117
+ export declare const getMeLittersRetrieveQueryOptions: <TData = Awaited<ReturnType<typeof meLittersRetrieve>>, TError = void>(id: string, options?: {
118
+ query?: UseQueryOptions<Awaited<ReturnType<typeof meLittersRetrieve>>, TError, TData>;
119
+ fetch?: RequestInit;
120
+ }) => UseQueryOptions<Awaited<ReturnType<typeof meLittersRetrieve>>, TError, TData> & {
121
+ queryKey: QueryKey;
122
+ };
123
+ export type MeLittersRetrieveQueryResult = NonNullable<Awaited<ReturnType<typeof meLittersRetrieve>>>;
124
+ export type MeLittersRetrieveQueryError = void;
125
+ /**
126
+ * @summary Получить мой помёт по ID
127
+ */
128
+ export declare function useMeLittersRetrieve<TData = Awaited<ReturnType<typeof meLittersRetrieve>>, TError = void>(id: string, options?: {
129
+ query?: UseQueryOptions<Awaited<ReturnType<typeof meLittersRetrieve>>, TError, TData>;
130
+ fetch?: RequestInit;
131
+ }): UseQueryResult<TData, TError> & {
132
+ queryKey: QueryKey;
133
+ };
134
+ /**
135
+ * API пометов пользователя
136
+ * @summary Обновить помёт
137
+ */
138
+ export type meLittersUpdateResponse200 = {
139
+ data: Litter;
140
+ status: 200;
141
+ };
142
+ export type meLittersUpdateResponse400 = {
143
+ data: void;
144
+ status: 400;
145
+ };
146
+ export type meLittersUpdateResponse401 = {
147
+ data: void;
148
+ status: 401;
149
+ };
150
+ export type meLittersUpdateResponse404 = {
151
+ data: void;
152
+ status: 404;
153
+ };
154
+ export type meLittersUpdateResponseSuccess = (meLittersUpdateResponse200) & {
155
+ headers: Headers;
156
+ };
157
+ export type meLittersUpdateResponseError = (meLittersUpdateResponse400 | meLittersUpdateResponse401 | meLittersUpdateResponse404) & {
158
+ headers: Headers;
159
+ };
160
+ export type meLittersUpdateResponse = (meLittersUpdateResponseSuccess | meLittersUpdateResponseError);
161
+ export declare const getMeLittersUpdateUrl: (id: string) => string;
162
+ export declare const meLittersUpdate: (id: string, litterRequest: LitterRequest, options?: RequestInit) => Promise<meLittersUpdateResponse>;
163
+ export declare const getMeLittersUpdateMutationOptions: <TError = void, TContext = unknown>(options?: {
164
+ mutation?: UseMutationOptions<Awaited<ReturnType<typeof meLittersUpdate>>, TError, {
165
+ id: string;
166
+ data: LitterRequest;
167
+ }, TContext>;
168
+ fetch?: RequestInit;
169
+ }) => UseMutationOptions<Awaited<ReturnType<typeof meLittersUpdate>>, TError, {
170
+ id: string;
171
+ data: LitterRequest;
172
+ }, TContext>;
173
+ export type MeLittersUpdateMutationResult = NonNullable<Awaited<ReturnType<typeof meLittersUpdate>>>;
174
+ export type MeLittersUpdateMutationBody = LitterRequest;
175
+ export type MeLittersUpdateMutationError = void;
176
+ /**
177
+ * @summary Обновить помёт
178
+ */
179
+ export declare const useMeLittersUpdate: <TError = void, TContext = unknown>(options?: {
180
+ mutation?: UseMutationOptions<Awaited<ReturnType<typeof meLittersUpdate>>, TError, {
181
+ id: string;
182
+ data: LitterRequest;
183
+ }, TContext>;
184
+ fetch?: RequestInit;
185
+ }) => UseMutationResult<Awaited<ReturnType<typeof meLittersUpdate>>, TError, {
186
+ id: string;
187
+ data: LitterRequest;
188
+ }, TContext>;
189
+ /**
190
+ * API пометов пользователя
191
+ * @summary Частично обновить помёт
192
+ */
193
+ export type meLittersPartialUpdateResponse200 = {
194
+ data: Litter;
195
+ status: 200;
196
+ };
197
+ export type meLittersPartialUpdateResponse400 = {
198
+ data: void;
199
+ status: 400;
200
+ };
201
+ export type meLittersPartialUpdateResponse401 = {
202
+ data: void;
203
+ status: 401;
204
+ };
205
+ export type meLittersPartialUpdateResponse404 = {
206
+ data: void;
207
+ status: 404;
208
+ };
209
+ export type meLittersPartialUpdateResponseSuccess = (meLittersPartialUpdateResponse200) & {
210
+ headers: Headers;
211
+ };
212
+ export type meLittersPartialUpdateResponseError = (meLittersPartialUpdateResponse400 | meLittersPartialUpdateResponse401 | meLittersPartialUpdateResponse404) & {
213
+ headers: Headers;
214
+ };
215
+ export type meLittersPartialUpdateResponse = (meLittersPartialUpdateResponseSuccess | meLittersPartialUpdateResponseError);
216
+ export declare const getMeLittersPartialUpdateUrl: (id: string) => string;
217
+ export declare const meLittersPartialUpdate: (id: string, patchedLitterRequest: PatchedLitterRequest, options?: RequestInit) => Promise<meLittersPartialUpdateResponse>;
218
+ export declare const getMeLittersPartialUpdateMutationOptions: <TError = void, TContext = unknown>(options?: {
219
+ mutation?: UseMutationOptions<Awaited<ReturnType<typeof meLittersPartialUpdate>>, TError, {
220
+ id: string;
221
+ data: PatchedLitterRequest;
222
+ }, TContext>;
223
+ fetch?: RequestInit;
224
+ }) => UseMutationOptions<Awaited<ReturnType<typeof meLittersPartialUpdate>>, TError, {
225
+ id: string;
226
+ data: PatchedLitterRequest;
227
+ }, TContext>;
228
+ export type MeLittersPartialUpdateMutationResult = NonNullable<Awaited<ReturnType<typeof meLittersPartialUpdate>>>;
229
+ export type MeLittersPartialUpdateMutationBody = PatchedLitterRequest;
230
+ export type MeLittersPartialUpdateMutationError = void;
231
+ /**
232
+ * @summary Частично обновить помёт
233
+ */
234
+ export declare const useMeLittersPartialUpdate: <TError = void, TContext = unknown>(options?: {
235
+ mutation?: UseMutationOptions<Awaited<ReturnType<typeof meLittersPartialUpdate>>, TError, {
236
+ id: string;
237
+ data: PatchedLitterRequest;
238
+ }, TContext>;
239
+ fetch?: RequestInit;
240
+ }) => UseMutationResult<Awaited<ReturnType<typeof meLittersPartialUpdate>>, TError, {
241
+ id: string;
242
+ data: PatchedLitterRequest;
243
+ }, TContext>;
244
+ /**
245
+ * API пометов пользователя
246
+ * @summary Удалить помёт
247
+ */
248
+ export type meLittersDestroyResponse204 = {
249
+ data: void;
250
+ status: 204;
251
+ };
252
+ export type meLittersDestroyResponse401 = {
253
+ data: void;
254
+ status: 401;
255
+ };
256
+ export type meLittersDestroyResponse404 = {
257
+ data: void;
258
+ status: 404;
259
+ };
260
+ export type meLittersDestroyResponseSuccess = (meLittersDestroyResponse204) & {
261
+ headers: Headers;
262
+ };
263
+ export type meLittersDestroyResponseError = (meLittersDestroyResponse401 | meLittersDestroyResponse404) & {
264
+ headers: Headers;
265
+ };
266
+ export type meLittersDestroyResponse = (meLittersDestroyResponseSuccess | meLittersDestroyResponseError);
267
+ export declare const getMeLittersDestroyUrl: (id: string) => string;
268
+ export declare const meLittersDestroy: (id: string, options?: RequestInit) => Promise<meLittersDestroyResponse>;
269
+ export declare const getMeLittersDestroyMutationOptions: <TError = void, TContext = unknown>(options?: {
270
+ mutation?: UseMutationOptions<Awaited<ReturnType<typeof meLittersDestroy>>, TError, {
271
+ id: string;
272
+ }, TContext>;
273
+ fetch?: RequestInit;
274
+ }) => UseMutationOptions<Awaited<ReturnType<typeof meLittersDestroy>>, TError, {
275
+ id: string;
276
+ }, TContext>;
277
+ export type MeLittersDestroyMutationResult = NonNullable<Awaited<ReturnType<typeof meLittersDestroy>>>;
278
+ export type MeLittersDestroyMutationError = void;
279
+ /**
280
+ * @summary Удалить помёт
281
+ */
282
+ export declare const useMeLittersDestroy: <TError = void, TContext = unknown>(options?: {
283
+ mutation?: UseMutationOptions<Awaited<ReturnType<typeof meLittersDestroy>>, TError, {
284
+ id: string;
285
+ }, TContext>;
286
+ fetch?: RequestInit;
287
+ }) => UseMutationResult<Awaited<ReturnType<typeof meLittersDestroy>>, TError, {
288
+ id: string;
289
+ }, TContext>;
290
+ export {};
@@ -0,0 +1,207 @@
1
+ /**
2
+ * Generated by orval v8.5.3 🍺
3
+ * Do not edit manually.
4
+ * НКП Сибирский Хаски API
5
+ * API для Национального клуба породы Сибирский хаски
6
+ * OpenAPI spec version: 1.0.0
7
+ */
8
+ import { useMutation, useQuery } from '@tanstack/react-query';
9
+ export const getMeLittersListUrl = (params) => {
10
+ const normalizedParams = new URLSearchParams();
11
+ Object.entries(params || {}).forEach(([key, value]) => {
12
+ if (value !== undefined) {
13
+ normalizedParams.append(key, value === null ? 'null' : value.toString());
14
+ }
15
+ });
16
+ const stringifiedParams = normalizedParams.toString();
17
+ return stringifiedParams.length > 0 ? `/api/me/litters/?${stringifiedParams}` : `/api/me/litters/`;
18
+ };
19
+ export const meLittersList = async (params, options) => {
20
+ const res = await fetch(getMeLittersListUrl(params), {
21
+ ...options,
22
+ method: 'GET'
23
+ });
24
+ const body = [204, 205, 304].includes(res.status) ? null : await res.text();
25
+ const data = body ? JSON.parse(body) : {};
26
+ return { data, status: res.status, headers: res.headers };
27
+ };
28
+ export const getMeLittersListQueryKey = (params) => {
29
+ return [
30
+ `/api/me/litters/`, ...(params ? [params] : [])
31
+ ];
32
+ };
33
+ export const getMeLittersListQueryOptions = (params, options) => {
34
+ const { query: queryOptions, fetch: fetchOptions } = options ?? {};
35
+ const queryKey = queryOptions?.queryKey ?? getMeLittersListQueryKey(params);
36
+ const queryFn = ({ signal }) => meLittersList(params, { signal, ...fetchOptions });
37
+ return { queryKey, queryFn, ...queryOptions };
38
+ };
39
+ /**
40
+ * @summary Список моих помётов
41
+ */
42
+ export function useMeLittersList(params, options) {
43
+ const queryOptions = getMeLittersListQueryOptions(params, options);
44
+ const query = useQuery(queryOptions);
45
+ return { ...query, queryKey: queryOptions.queryKey };
46
+ }
47
+ export const getMeLittersCreateUrl = () => {
48
+ return `/api/me/litters/`;
49
+ };
50
+ export const meLittersCreate = async (litterRequest, options) => {
51
+ const res = await fetch(getMeLittersCreateUrl(), {
52
+ ...options,
53
+ method: 'POST',
54
+ headers: { 'Content-Type': 'application/json', ...options?.headers },
55
+ body: JSON.stringify(litterRequest)
56
+ });
57
+ const body = [204, 205, 304].includes(res.status) ? null : await res.text();
58
+ const data = body ? JSON.parse(body) : {};
59
+ return { data, status: res.status, headers: res.headers };
60
+ };
61
+ export const getMeLittersCreateMutationOptions = (options) => {
62
+ const mutationKey = ['meLittersCreate'];
63
+ const { mutation: mutationOptions, fetch: fetchOptions } = options ?
64
+ options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?
65
+ options
66
+ : { ...options, mutation: { ...options.mutation, mutationKey } }
67
+ : { mutation: { mutationKey, }, fetch: undefined };
68
+ const mutationFn = (props) => {
69
+ const { data } = props ?? {};
70
+ return meLittersCreate(data, fetchOptions);
71
+ };
72
+ return { mutationFn, ...mutationOptions };
73
+ };
74
+ /**
75
+ * @summary Создать помёт
76
+ */
77
+ export const useMeLittersCreate = (options) => {
78
+ return useMutation(getMeLittersCreateMutationOptions(options));
79
+ };
80
+ export const getMeLittersRetrieveUrl = (id) => {
81
+ return `/api/me/litters/${id}/`;
82
+ };
83
+ export const meLittersRetrieve = async (id, options) => {
84
+ const res = await fetch(getMeLittersRetrieveUrl(id), {
85
+ ...options,
86
+ method: 'GET'
87
+ });
88
+ const body = [204, 205, 304].includes(res.status) ? null : await res.text();
89
+ const data = body ? JSON.parse(body) : {};
90
+ return { data, status: res.status, headers: res.headers };
91
+ };
92
+ export const getMeLittersRetrieveQueryKey = (id) => {
93
+ return [
94
+ `/api/me/litters/${id}/`
95
+ ];
96
+ };
97
+ export const getMeLittersRetrieveQueryOptions = (id, options) => {
98
+ const { query: queryOptions, fetch: fetchOptions } = options ?? {};
99
+ const queryKey = queryOptions?.queryKey ?? getMeLittersRetrieveQueryKey(id);
100
+ const queryFn = ({ signal }) => meLittersRetrieve(id, { signal, ...fetchOptions });
101
+ return { queryKey, queryFn, enabled: !!(id), ...queryOptions };
102
+ };
103
+ /**
104
+ * @summary Получить мой помёт по ID
105
+ */
106
+ export function useMeLittersRetrieve(id, options) {
107
+ const queryOptions = getMeLittersRetrieveQueryOptions(id, options);
108
+ const query = useQuery(queryOptions);
109
+ return { ...query, queryKey: queryOptions.queryKey };
110
+ }
111
+ export const getMeLittersUpdateUrl = (id) => {
112
+ return `/api/me/litters/${id}/`;
113
+ };
114
+ export const meLittersUpdate = async (id, litterRequest, options) => {
115
+ const res = await fetch(getMeLittersUpdateUrl(id), {
116
+ ...options,
117
+ method: 'PUT',
118
+ headers: { 'Content-Type': 'application/json', ...options?.headers },
119
+ body: JSON.stringify(litterRequest)
120
+ });
121
+ const body = [204, 205, 304].includes(res.status) ? null : await res.text();
122
+ const data = body ? JSON.parse(body) : {};
123
+ return { data, status: res.status, headers: res.headers };
124
+ };
125
+ export const getMeLittersUpdateMutationOptions = (options) => {
126
+ const mutationKey = ['meLittersUpdate'];
127
+ const { mutation: mutationOptions, fetch: fetchOptions } = options ?
128
+ options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?
129
+ options
130
+ : { ...options, mutation: { ...options.mutation, mutationKey } }
131
+ : { mutation: { mutationKey, }, fetch: undefined };
132
+ const mutationFn = (props) => {
133
+ const { id, data } = props ?? {};
134
+ return meLittersUpdate(id, data, fetchOptions);
135
+ };
136
+ return { mutationFn, ...mutationOptions };
137
+ };
138
+ /**
139
+ * @summary Обновить помёт
140
+ */
141
+ export const useMeLittersUpdate = (options) => {
142
+ return useMutation(getMeLittersUpdateMutationOptions(options));
143
+ };
144
+ export const getMeLittersPartialUpdateUrl = (id) => {
145
+ return `/api/me/litters/${id}/`;
146
+ };
147
+ export const meLittersPartialUpdate = async (id, patchedLitterRequest, options) => {
148
+ const res = await fetch(getMeLittersPartialUpdateUrl(id), {
149
+ ...options,
150
+ method: 'PATCH',
151
+ headers: { 'Content-Type': 'application/json', ...options?.headers },
152
+ body: JSON.stringify(patchedLitterRequest)
153
+ });
154
+ const body = [204, 205, 304].includes(res.status) ? null : await res.text();
155
+ const data = body ? JSON.parse(body) : {};
156
+ return { data, status: res.status, headers: res.headers };
157
+ };
158
+ export const getMeLittersPartialUpdateMutationOptions = (options) => {
159
+ const mutationKey = ['meLittersPartialUpdate'];
160
+ const { mutation: mutationOptions, fetch: fetchOptions } = options ?
161
+ options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?
162
+ options
163
+ : { ...options, mutation: { ...options.mutation, mutationKey } }
164
+ : { mutation: { mutationKey, }, fetch: undefined };
165
+ const mutationFn = (props) => {
166
+ const { id, data } = props ?? {};
167
+ return meLittersPartialUpdate(id, data, fetchOptions);
168
+ };
169
+ return { mutationFn, ...mutationOptions };
170
+ };
171
+ /**
172
+ * @summary Частично обновить помёт
173
+ */
174
+ export const useMeLittersPartialUpdate = (options) => {
175
+ return useMutation(getMeLittersPartialUpdateMutationOptions(options));
176
+ };
177
+ export const getMeLittersDestroyUrl = (id) => {
178
+ return `/api/me/litters/${id}/`;
179
+ };
180
+ export const meLittersDestroy = async (id, options) => {
181
+ const res = await fetch(getMeLittersDestroyUrl(id), {
182
+ ...options,
183
+ method: 'DELETE'
184
+ });
185
+ const body = [204, 205, 304].includes(res.status) ? null : await res.text();
186
+ const data = body ? JSON.parse(body) : {};
187
+ return { data, status: res.status, headers: res.headers };
188
+ };
189
+ export const getMeLittersDestroyMutationOptions = (options) => {
190
+ const mutationKey = ['meLittersDestroy'];
191
+ const { mutation: mutationOptions, fetch: fetchOptions } = options ?
192
+ options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?
193
+ options
194
+ : { ...options, mutation: { ...options.mutation, mutationKey } }
195
+ : { mutation: { mutationKey, }, fetch: undefined };
196
+ const mutationFn = (props) => {
197
+ const { id } = props ?? {};
198
+ return meLittersDestroy(id, fetchOptions);
199
+ };
200
+ return { mutationFn, ...mutationOptions };
201
+ };
202
+ /**
203
+ * @summary Удалить помёт
204
+ */
205
+ export const useMeLittersDestroy = (options) => {
206
+ return useMutation(getMeLittersDestroyMutationOptions(options));
207
+ };
@@ -0,0 +1,76 @@
1
+ import type { QueryKey, UseQueryOptions, UseQueryResult } from '@tanstack/react-query';
2
+ import type { News, NewsListParams, PaginatedNewsList } from '../api.schemas';
3
+ type AwaitedInput<T> = PromiseLike<T> | T;
4
+ type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;
5
+ /**
6
+ * Возвращает пагинированный список новостей. Поддерживает фильтрацию по избранному и тегам.
7
+ * @summary Список новостей
8
+ */
9
+ export type newsListResponse200 = {
10
+ data: PaginatedNewsList;
11
+ status: 200;
12
+ };
13
+ export type newsListResponseSuccess = (newsListResponse200) & {
14
+ headers: Headers;
15
+ };
16
+ export type newsListResponse = (newsListResponseSuccess);
17
+ export declare const getNewsListUrl: (params?: NewsListParams) => string;
18
+ export declare const newsList: (params?: NewsListParams, options?: RequestInit) => Promise<newsListResponse>;
19
+ export declare const getNewsListQueryKey: (params?: NewsListParams) => readonly ["/api/news/", ...NewsListParams[]];
20
+ export declare const getNewsListQueryOptions: <TData = Awaited<ReturnType<typeof newsList>>, TError = unknown>(params?: NewsListParams, options?: {
21
+ query?: UseQueryOptions<Awaited<ReturnType<typeof newsList>>, TError, TData>;
22
+ fetch?: RequestInit;
23
+ }) => UseQueryOptions<Awaited<ReturnType<typeof newsList>>, TError, TData> & {
24
+ queryKey: QueryKey;
25
+ };
26
+ export type NewsListQueryResult = NonNullable<Awaited<ReturnType<typeof newsList>>>;
27
+ export type NewsListQueryError = unknown;
28
+ /**
29
+ * @summary Список новостей
30
+ */
31
+ export declare function useNewsList<TData = Awaited<ReturnType<typeof newsList>>, TError = unknown>(params?: NewsListParams, options?: {
32
+ query?: UseQueryOptions<Awaited<ReturnType<typeof newsList>>, TError, TData>;
33
+ fetch?: RequestInit;
34
+ }): UseQueryResult<TData, TError> & {
35
+ queryKey: QueryKey;
36
+ };
37
+ /**
38
+ * API новостей
39
+ * @summary Получить новость по ID
40
+ */
41
+ export type newsRetrieveResponse200 = {
42
+ data: News;
43
+ status: 200;
44
+ };
45
+ export type newsRetrieveResponse404 = {
46
+ data: void;
47
+ status: 404;
48
+ };
49
+ export type newsRetrieveResponseSuccess = (newsRetrieveResponse200) & {
50
+ headers: Headers;
51
+ };
52
+ export type newsRetrieveResponseError = (newsRetrieveResponse404) & {
53
+ headers: Headers;
54
+ };
55
+ export type newsRetrieveResponse = (newsRetrieveResponseSuccess | newsRetrieveResponseError);
56
+ export declare const getNewsRetrieveUrl: (id: number) => string;
57
+ export declare const newsRetrieve: (id: number, options?: RequestInit) => Promise<newsRetrieveResponse>;
58
+ export declare const getNewsRetrieveQueryKey: (id: number) => readonly [`/api/news/${number}/`];
59
+ export declare const getNewsRetrieveQueryOptions: <TData = Awaited<ReturnType<typeof newsRetrieve>>, TError = void>(id: number, options?: {
60
+ query?: UseQueryOptions<Awaited<ReturnType<typeof newsRetrieve>>, TError, TData>;
61
+ fetch?: RequestInit;
62
+ }) => UseQueryOptions<Awaited<ReturnType<typeof newsRetrieve>>, TError, TData> & {
63
+ queryKey: QueryKey;
64
+ };
65
+ export type NewsRetrieveQueryResult = NonNullable<Awaited<ReturnType<typeof newsRetrieve>>>;
66
+ export type NewsRetrieveQueryError = void;
67
+ /**
68
+ * @summary Получить новость по ID
69
+ */
70
+ export declare function useNewsRetrieve<TData = Awaited<ReturnType<typeof newsRetrieve>>, TError = void>(id: number, options?: {
71
+ query?: UseQueryOptions<Awaited<ReturnType<typeof newsRetrieve>>, TError, TData>;
72
+ fetch?: RequestInit;
73
+ }): UseQueryResult<TData, TError> & {
74
+ queryKey: QueryKey;
75
+ };
76
+ export {};
@@ -0,0 +1,78 @@
1
+ /**
2
+ * Generated by orval v8.5.3 🍺
3
+ * Do not edit manually.
4
+ * НКП Сибирский Хаски API
5
+ * API для Национального клуба породы Сибирский хаски
6
+ * OpenAPI spec version: 1.0.0
7
+ */
8
+ import { useQuery } from '@tanstack/react-query';
9
+ ;
10
+ export const getNewsListUrl = (params) => {
11
+ const normalizedParams = new URLSearchParams();
12
+ Object.entries(params || {}).forEach(([key, value]) => {
13
+ if (value !== undefined) {
14
+ normalizedParams.append(key, value === null ? 'null' : value.toString());
15
+ }
16
+ });
17
+ const stringifiedParams = normalizedParams.toString();
18
+ return stringifiedParams.length > 0 ? `/api/news/?${stringifiedParams}` : `/api/news/`;
19
+ };
20
+ export const newsList = async (params, options) => {
21
+ const res = await fetch(getNewsListUrl(params), {
22
+ ...options,
23
+ method: 'GET'
24
+ });
25
+ const body = [204, 205, 304].includes(res.status) ? null : await res.text();
26
+ const data = body ? JSON.parse(body) : {};
27
+ return { data, status: res.status, headers: res.headers };
28
+ };
29
+ export const getNewsListQueryKey = (params) => {
30
+ return [
31
+ `/api/news/`, ...(params ? [params] : [])
32
+ ];
33
+ };
34
+ export const getNewsListQueryOptions = (params, options) => {
35
+ const { query: queryOptions, fetch: fetchOptions } = options ?? {};
36
+ const queryKey = queryOptions?.queryKey ?? getNewsListQueryKey(params);
37
+ const queryFn = ({ signal }) => newsList(params, { signal, ...fetchOptions });
38
+ return { queryKey, queryFn, ...queryOptions };
39
+ };
40
+ /**
41
+ * @summary Список новостей
42
+ */
43
+ export function useNewsList(params, options) {
44
+ const queryOptions = getNewsListQueryOptions(params, options);
45
+ const query = useQuery(queryOptions);
46
+ return { ...query, queryKey: queryOptions.queryKey };
47
+ }
48
+ export const getNewsRetrieveUrl = (id) => {
49
+ return `/api/news/${id}/`;
50
+ };
51
+ export const newsRetrieve = async (id, options) => {
52
+ const res = await fetch(getNewsRetrieveUrl(id), {
53
+ ...options,
54
+ method: 'GET'
55
+ });
56
+ const body = [204, 205, 304].includes(res.status) ? null : await res.text();
57
+ const data = body ? JSON.parse(body) : {};
58
+ return { data, status: res.status, headers: res.headers };
59
+ };
60
+ export const getNewsRetrieveQueryKey = (id) => {
61
+ return [
62
+ `/api/news/${id}/`
63
+ ];
64
+ };
65
+ export const getNewsRetrieveQueryOptions = (id, options) => {
66
+ const { query: queryOptions, fetch: fetchOptions } = options ?? {};
67
+ const queryKey = queryOptions?.queryKey ?? getNewsRetrieveQueryKey(id);
68
+ const queryFn = ({ signal }) => newsRetrieve(id, { signal, ...fetchOptions });
69
+ return { queryKey, queryFn, enabled: !!(id), ...queryOptions };
70
+ };
71
+ /**
72
+ * @summary Получить новость по ID
73
+ */
74
+ export function useNewsRetrieve(id, options) {
75
+ const queryOptions = getNewsRetrieveQueryOptions(id, options);
76
+ const query = useQuery(queryOptions);
77
+ return { ...query, queryKey: queryOptions.queryKey };
78
+ }