@omerikanec/api-client-demo 2.0.4 → 3.0.0

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 (34) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/dist/api.schemas.d.ts +1798 -0
  3. package/dist/api.schemas.js +61 -1
  4. package/dist/auth/auth.d.ts +0 -3
  5. package/dist/breed/breed.d.ts +0 -3
  6. package/dist/club-documents/club-documents.d.ts +0 -3
  7. package/dist/club-stats/club-stats.d.ts +0 -3
  8. package/dist/content-dictionary/content-dictionary.d.ts +0 -3
  9. package/dist/dog-references/dog-references.d.ts +0 -3
  10. package/dist/dogs/dogs.d.ts +0 -3
  11. package/dist/event-reports/event-reports.d.ts +0 -3
  12. package/dist/events/events.d.ts +0 -3
  13. package/dist/galleries/galleries.d.ts +0 -3
  14. package/dist/home/home.d.ts +18 -21
  15. package/dist/home/home.js +12 -12
  16. package/dist/import-breedarchive/import-breedarchive.d.ts +0 -3
  17. package/dist/import-hybrid/import-hybrid.d.ts +0 -3
  18. package/dist/import-hybrid-full/import-hybrid-full.d.ts +0 -3
  19. package/dist/import-zooportal/import-zooportal.d.ts +0 -3
  20. package/dist/judges/judges.d.ts +0 -3
  21. package/dist/leadership/leadership.d.ts +0 -3
  22. package/dist/my-achievements/my-achievements.d.ts +0 -3
  23. package/dist/my-applications/my-applications.d.ts +0 -3
  24. package/dist/my-dogs/my-dogs.d.ts +0 -3
  25. package/dist/my-kennels/my-kennels.d.ts +0 -3
  26. package/dist/my-litters/my-litters.d.ts +0 -3
  27. package/dist/news/news.d.ts +0 -3
  28. package/dist/pages/pages.d.ts +0 -3
  29. package/dist/profile/profile.d.ts +0 -3
  30. package/dist/status-of-import-task/status-of-import-task.d.ts +0 -3
  31. package/impact-report.html +108 -0
  32. package/impact-report.json +52 -0
  33. package/package.json +6 -2
  34. package/postinstall.js +29 -0
@@ -1 +1,61 @@
1
- export {};
1
+ export const ApplicationTypeEnum = {
2
+ membership: 'membership',
3
+ litter_registration: 'litter_registration',
4
+ kennel_registration: 'kennel_registration',
5
+ document_request: 'document_request',
6
+ complaint: 'complaint',
7
+ other: 'other',
8
+ };
9
+ export const ApplicationStatusEnum = {
10
+ new: 'new',
11
+ in_progress: 'in_progress',
12
+ done: 'done',
13
+ rejected: 'rejected',
14
+ };
15
+ export const BlankEnum = {
16
+ '': '',
17
+ };
18
+ export const CategoryEnum = {
19
+ history: 'history',
20
+ character: 'character',
21
+ care: 'care',
22
+ grooming: 'grooming',
23
+ feeding: 'feeding',
24
+ };
25
+ export const BreedArticleCategory = { ...CategoryEnum, ...BlankEnum, };
26
+ export const DocumentTypeEnum = {
27
+ charter: 'charter',
28
+ regulation: 'regulation',
29
+ standard: 'standard',
30
+ form: 'form',
31
+ };
32
+ export const DogSexEnum = {
33
+ male: 'male',
34
+ female: 'female',
35
+ };
36
+ export const DogSex = { ...DogSexEnum, ...BlankEnum, };
37
+ export const Sex6bbEnum = {
38
+ NUMBER_1: 1,
39
+ NUMBER_2: 2,
40
+ };
41
+ export const DogRequestSex = { ...DogSexEnum, ...BlankEnum, };
42
+ export const EventTypeEnum = {
43
+ exhibition: 'exhibition',
44
+ seminar: 'seminar',
45
+ meeting: 'meeting',
46
+ other: 'other',
47
+ };
48
+ export const EventEventType = { ...EventTypeEnum, ...BlankEnum, };
49
+ export const LitterStatusEnum = {
50
+ announced: 'announced',
51
+ born: 'born',
52
+ sold: 'sold',
53
+ };
54
+ export const MembershipTypeEnum = {
55
+ physical: 'physical',
56
+ legal: 'legal',
57
+ };
58
+ export const NullEnum = {};
59
+ export const PatchedDogRequestSex = { ...DogSexEnum, ...BlankEnum, };
60
+ export const UserProfileMembershipType = { ...MembershipTypeEnum, ...BlankEnum, };
61
+ export const UserProfileRequestMembershipType = { ...MembershipTypeEnum, ...BlankEnum, };
@@ -1,7 +1,5 @@
1
1
  import type { UseMutationOptions, UseMutationResult } from '@tanstack/react-query';
2
2
  import type { LoginRequestRequest, LoginSuccess } from '../api.schemas';
3
- type AwaitedInput<T> = PromiseLike<T> | T;
4
- type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;
5
3
  /**
6
4
  * Аутентификация пользователя по email и паролю. Устанавливает сессионный cookie.
7
5
  * @summary Вход в систему
@@ -79,4 +77,3 @@ export declare const useAuthLogoutCreate: <TError = void, TContext = unknown>(op
79
77
  mutation?: UseMutationOptions<Awaited<ReturnType<typeof authLogoutCreate>>, TError, void, TContext>;
80
78
  fetch?: RequestInit;
81
79
  }) => UseMutationResult<Awaited<ReturnType<typeof authLogoutCreate>>, TError, void, TContext>;
82
- export {};
@@ -1,7 +1,5 @@
1
1
  import type { QueryKey, UseQueryOptions, UseQueryResult } from '@tanstack/react-query';
2
2
  import type { BreedArticle, BreedArticlesListParams, BreedStandard, BreedStandardsListParams, PaginatedBreedArticleList, PaginatedBreedStandardList } from '../api.schemas';
3
- type AwaitedInput<T> = PromiseLike<T> | T;
4
- type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;
5
3
  /**
6
4
  * Возвращает список статей. Поддерживает фильтрацию по категории.
7
5
  * @summary Список статей о породе
@@ -144,4 +142,3 @@ export declare function useBreedStandardsRetrieve<TData = Awaited<ReturnType<typ
144
142
  }): UseQueryResult<TData, TError> & {
145
143
  queryKey: QueryKey;
146
144
  };
147
- export {};
@@ -1,7 +1,5 @@
1
1
  import type { QueryKey, UseQueryOptions, UseQueryResult } from '@tanstack/react-query';
2
2
  import type { ClubDocument, ClubDocumentsListParams, PaginatedClubDocumentList } from '../api.schemas';
3
- type AwaitedInput<T> = PromiseLike<T> | T;
4
- type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;
5
3
  /**
6
4
  * API документов клуба
7
5
  * @summary Список документов клуба
@@ -73,4 +71,3 @@ export declare function useClubDocumentsRetrieve<TData = Awaited<ReturnType<type
73
71
  }): UseQueryResult<TData, TError> & {
74
72
  queryKey: QueryKey;
75
73
  };
76
- export {};
@@ -1,7 +1,5 @@
1
1
  import type { QueryKey, UseQueryOptions, UseQueryResult } from '@tanstack/react-query';
2
2
  import type { ClubStats } from '../api.schemas';
3
- type AwaitedInput<T> = PromiseLike<T> | T;
4
- type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;
5
3
  /**
6
4
  * Возвращает последнюю запись статистики клуба. Если данных ещё нет — возвращает нулевые значения.
7
5
  * @summary Статистика клуба
@@ -34,4 +32,3 @@ export declare function useClubStatsList<TData = Awaited<ReturnType<typeof clubS
34
32
  }): UseQueryResult<TData, TError> & {
35
33
  queryKey: QueryKey;
36
34
  };
37
- export {};
@@ -1,7 +1,5 @@
1
1
  import type { QueryKey, UseQueryOptions, UseQueryResult } from '@tanstack/react-query';
2
2
  import type { ContentByKeyResponse, ContentDictionary, DictByKeyRetrieveParams, DictListParams, PaginatedContentDictionaryList } from '../api.schemas';
3
- type AwaitedInput<T> = PromiseLike<T> | T;
4
- type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;
5
3
  /**
6
4
  * Возвращает все записи контент-справочника. Поддерживает фильтрацию по странице и ключу.
7
5
  * @summary Список контент-записей
@@ -116,4 +114,3 @@ export declare function useDictByKeyRetrieve<TData = Awaited<ReturnType<typeof d
116
114
  }): UseQueryResult<TData, TError> & {
117
115
  queryKey: QueryKey;
118
116
  };
119
- export {};
@@ -1,7 +1,5 @@
1
1
  import type { QueryKey, UseQueryOptions, UseQueryResult } from '@tanstack/react-query';
2
2
  import type { Breeder, BreedersListParams, Litter, LittersListParams, MedicalRecord, MedicalRecordsListParams, Owner, OwnersListParams, PaginatedBreederList, PaginatedLitterList, PaginatedMedicalRecordList, PaginatedOwnerList, PaginatedTitleList, Title, TitlesListParams } from '../api.schemas';
3
- type AwaitedInput<T> = PromiseLike<T> | T;
4
- type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;
5
3
  /**
6
4
  * ViewSet для заводчиков
7
5
  * @summary Список заводчиков
@@ -357,4 +355,3 @@ export declare function useTitlesRetrieve<TData = Awaited<ReturnType<typeof titl
357
355
  }): UseQueryResult<TData, TError> & {
358
356
  queryKey: QueryKey;
359
357
  };
360
- export {};
@@ -1,7 +1,5 @@
1
1
  import type { QueryKey, UseMutationOptions, UseMutationResult, UseQueryOptions, UseQueryResult } from '@tanstack/react-query';
2
2
  import type { CalculateCoiRequestRequest, CalculateCoiResponse, DogDetail, DogStatsResponse, DogsListParams, DogsOffspringListParams, DogsPedigreeRetrieveParams, DogsSearchListParams, DogsSiblingsListParams, PaginatedDogListList, Pedigree, RecalculateAllCoiRequestRequest, TaskResponse } from '../api.schemas';
3
- type AwaitedInput<T> = PromiseLike<T> | T;
4
- type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;
5
3
  /**
6
4
  * Возвращает пагинированный список собак. Поддерживает поиск и фильтрацию.
7
5
  * @summary Список собак
@@ -348,4 +346,3 @@ export declare function useDogsStatsRetrieve<TData = Awaited<ReturnType<typeof d
348
346
  }): UseQueryResult<TData, TError> & {
349
347
  queryKey: QueryKey;
350
348
  };
351
- export {};
@@ -1,7 +1,5 @@
1
1
  import type { QueryKey, UseQueryOptions, UseQueryResult } from '@tanstack/react-query';
2
2
  import type { EventReport, EventReportsListParams, PaginatedEventReportList } from '../api.schemas';
3
- type AwaitedInput<T> = PromiseLike<T> | T;
4
- type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;
5
3
  /**
6
4
  * API отчетов о мероприятиях
7
5
  * @summary Список отчётов о мероприятиях
@@ -73,4 +71,3 @@ export declare function useEventReportsRetrieve<TData = Awaited<ReturnType<typeo
73
71
  }): UseQueryResult<TData, TError> & {
74
72
  queryKey: QueryKey;
75
73
  };
76
- export {};
@@ -1,7 +1,5 @@
1
1
  import type { QueryKey, UseQueryOptions, UseQueryResult } from '@tanstack/react-query';
2
2
  import type { Event, EventsListParams, PaginatedEventList } from '../api.schemas';
3
- type AwaitedInput<T> = PromiseLike<T> | T;
4
- type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;
5
3
  /**
6
4
  * Возвращает список мероприятий. Поддерживает фильтрацию по датам и типу.
7
5
  * @summary Список мероприятий
@@ -73,4 +71,3 @@ export declare function useEventsRetrieve<TData = Awaited<ReturnType<typeof even
73
71
  }): UseQueryResult<TData, TError> & {
74
72
  queryKey: QueryKey;
75
73
  };
76
- export {};
@@ -1,7 +1,5 @@
1
1
  import type { QueryKey, UseQueryOptions, UseQueryResult } from '@tanstack/react-query';
2
2
  import type { GalleriesHighlightsListParams, GalleriesListParams, Gallery, PaginatedGalleryList } from '../api.schemas';
3
- type AwaitedInput<T> = PromiseLike<T> | T;
4
- type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;
5
3
  /**
6
4
  * API галерей
7
5
  * @summary Список галерей
@@ -105,4 +103,3 @@ export declare function useGalleriesHighlightsList<TData = Awaited<ReturnType<ty
105
103
  }): UseQueryResult<TData, TError> & {
106
104
  queryKey: QueryKey;
107
105
  };
108
- export {};
@@ -1,37 +1,34 @@
1
1
  import type { QueryKey, UseQueryOptions, UseQueryResult } from '@tanstack/react-query';
2
- import type { ActivityFeedResponse } from '../api.schemas';
3
- type AwaitedInput<T> = PromiseLike<T> | T;
4
- type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;
2
+ import type { HomeResponse } from '../api.schemas';
5
3
  /**
6
- * Возвращает последние сообщения из Telegram-канала клуба (кешируется на 1 минуту).
7
- * @summary Лента активности
4
+ * Возвращает избранные новости (до 3), ближайшие мероприятия (до 5) и избранные галереи (до 2).
5
+ * @summary Данные для главной страницы
8
6
  */
9
- export type activityFeedRetrieveResponse200 = {
10
- data: ActivityFeedResponse;
7
+ export type homeRetrieveResponse200 = {
8
+ data: HomeResponse;
11
9
  status: 200;
12
10
  };
13
- export type activityFeedRetrieveResponseSuccess = (activityFeedRetrieveResponse200) & {
11
+ export type homeRetrieveResponseSuccess = (homeRetrieveResponse200) & {
14
12
  headers: Headers;
15
13
  };
16
- export type activityFeedRetrieveResponse = (activityFeedRetrieveResponseSuccess);
17
- export declare const getActivityFeedRetrieveUrl: () => string;
18
- export declare const activityFeedRetrieve: (options?: RequestInit) => Promise<activityFeedRetrieveResponse>;
19
- export declare const getActivityFeedRetrieveQueryKey: () => readonly ["/api/activity-feed/"];
20
- export declare const getActivityFeedRetrieveQueryOptions: <TData = Awaited<ReturnType<typeof activityFeedRetrieve>>, TError = unknown>(options?: {
21
- query?: UseQueryOptions<Awaited<ReturnType<typeof activityFeedRetrieve>>, TError, TData>;
14
+ export type homeRetrieveResponse = (homeRetrieveResponseSuccess);
15
+ export declare const getHomeRetrieveUrl: () => string;
16
+ export declare const homeRetrieve: (options?: RequestInit) => Promise<homeRetrieveResponse>;
17
+ export declare const getHomeRetrieveQueryKey: () => readonly ["/api/home/"];
18
+ export declare const getHomeRetrieveQueryOptions: <TData = Awaited<ReturnType<typeof homeRetrieve>>, TError = unknown>(options?: {
19
+ query?: UseQueryOptions<Awaited<ReturnType<typeof homeRetrieve>>, TError, TData>;
22
20
  fetch?: RequestInit;
23
- }) => UseQueryOptions<Awaited<ReturnType<typeof activityFeedRetrieve>>, TError, TData> & {
21
+ }) => UseQueryOptions<Awaited<ReturnType<typeof homeRetrieve>>, TError, TData> & {
24
22
  queryKey: QueryKey;
25
23
  };
26
- export type ActivityFeedRetrieveQueryResult = NonNullable<Awaited<ReturnType<typeof activityFeedRetrieve>>>;
27
- export type ActivityFeedRetrieveQueryError = unknown;
24
+ export type HomeRetrieveQueryResult = NonNullable<Awaited<ReturnType<typeof homeRetrieve>>>;
25
+ export type HomeRetrieveQueryError = unknown;
28
26
  /**
29
- * @summary Лента активности
27
+ * @summary Данные для главной страницы
30
28
  */
31
- export declare function useActivityFeedRetrieve<TData = Awaited<ReturnType<typeof activityFeedRetrieve>>, TError = unknown>(options?: {
32
- query?: UseQueryOptions<Awaited<ReturnType<typeof activityFeedRetrieve>>, TError, TData>;
29
+ export declare function useHomeRetrieve<TData = Awaited<ReturnType<typeof homeRetrieve>>, TError = unknown>(options?: {
30
+ query?: UseQueryOptions<Awaited<ReturnType<typeof homeRetrieve>>, TError, TData>;
33
31
  fetch?: RequestInit;
34
32
  }): UseQueryResult<TData, TError> & {
35
33
  queryKey: QueryKey;
36
34
  };
37
- export {};
package/dist/home/home.js CHANGED
@@ -7,11 +7,11 @@
7
7
  */
8
8
  import { useQuery } from '@tanstack/react-query';
9
9
  ;
10
- export const getActivityFeedRetrieveUrl = () => {
11
- return `/api/activity-feed/`;
10
+ export const getHomeRetrieveUrl = () => {
11
+ return `/api/home/`;
12
12
  };
13
- export const activityFeedRetrieve = async (options) => {
14
- const res = await fetch(getActivityFeedRetrieveUrl(), {
13
+ export const homeRetrieve = async (options) => {
14
+ const res = await fetch(getHomeRetrieveUrl(), {
15
15
  ...options,
16
16
  method: 'GET'
17
17
  });
@@ -19,22 +19,22 @@ export const activityFeedRetrieve = async (options) => {
19
19
  const data = body ? JSON.parse(body) : {};
20
20
  return { data, status: res.status, headers: res.headers };
21
21
  };
22
- export const getActivityFeedRetrieveQueryKey = () => {
22
+ export const getHomeRetrieveQueryKey = () => {
23
23
  return [
24
- `/api/activity-feed/`
24
+ `/api/home/`
25
25
  ];
26
26
  };
27
- export const getActivityFeedRetrieveQueryOptions = (options) => {
27
+ export const getHomeRetrieveQueryOptions = (options) => {
28
28
  const { query: queryOptions, fetch: fetchOptions } = options ?? {};
29
- const queryKey = queryOptions?.queryKey ?? getActivityFeedRetrieveQueryKey();
30
- const queryFn = ({ signal }) => activityFeedRetrieve({ signal, ...fetchOptions });
29
+ const queryKey = queryOptions?.queryKey ?? getHomeRetrieveQueryKey();
30
+ const queryFn = ({ signal }) => homeRetrieve({ signal, ...fetchOptions });
31
31
  return { queryKey, queryFn, ...queryOptions };
32
32
  };
33
33
  /**
34
- * @summary Лента активности
34
+ * @summary Данные для главной страницы
35
35
  */
36
- export function useActivityFeedRetrieve(options) {
37
- const queryOptions = getActivityFeedRetrieveQueryOptions(options);
36
+ export function useHomeRetrieve(options) {
37
+ const queryOptions = getHomeRetrieveQueryOptions(options);
38
38
  const query = useQuery(queryOptions);
39
39
  return { ...query, queryKey: queryOptions.queryKey };
40
40
  }
@@ -1,7 +1,5 @@
1
1
  import type { UseMutationOptions, UseMutationResult } from '@tanstack/react-query';
2
2
  import type { ImportBreedarchiveBrowseRequest, ImportBreedarchiveDogRequest, ImportBreedarchiveFullPedigreeRequest, ImportBreedarchiveRecentRequest, TaskResponse } from '../api.schemas';
3
- type AwaitedInput<T> = PromiseLike<T> | T;
4
- type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;
5
3
  /**
6
4
  * Импорт собак, изменённых за последние N дней, через browse-страницу (Playwright).
7
5
  * @summary Импорт собак через browse-страницу BreedArchive
@@ -174,4 +172,3 @@ export declare const useDogsImportBreedarchiveRecentCreate: <TError = void, TCon
174
172
  }) => UseMutationResult<Awaited<ReturnType<typeof dogsImportBreedarchiveRecentCreate>>, TError, {
175
173
  data: ImportBreedarchiveRecentRequest;
176
174
  }, TContext>;
177
- export {};
@@ -1,7 +1,5 @@
1
1
  import type { UseMutationOptions, UseMutationResult } from '@tanstack/react-query';
2
2
  import type { ImportHybridDogRequest, ImportHybridPageRequest, ImportHybridRangeRequest, TaskResponse } from '../api.schemas';
3
- type AwaitedInput<T> = PromiseLike<T> | T;
4
- type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;
5
3
  /**
6
4
  * Zoo страница по zooportal_id → поиск в BA по имени → BA дерево предков (до 5 поколений) → Zoo патч (registered_name uppercase, zooportal_id всегда из Zoo).
7
5
  * @summary Гибридный импорт одной собаки Zoo→BA
@@ -131,4 +129,3 @@ export declare const useDogsImportHybridRangeCreate: <TError = void, TContext =
131
129
  }) => UseMutationResult<Awaited<ReturnType<typeof dogsImportHybridRangeCreate>>, TError, {
132
130
  data: ImportHybridRangeRequest;
133
131
  }, TContext>;
134
- export {};
@@ -1,7 +1,5 @@
1
1
  import type { UseMutationOptions, UseMutationResult } from '@tanstack/react-query';
2
2
  import type { ImportHybridFullDogRequest, ImportHybridFullPageRequest, ImportHybridFullRangeRequest, TaskResponse } from '../api.schemas';
3
- type AwaitedInput<T> = PromiseLike<T> | T;
4
- type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;
5
3
  /**
6
4
  * Zoo страница по zooportal_id → поиск в BA по имени → BA полное дерево всех предков → Zoo патч. Время: от нескольких минут до нескольких часов.
7
5
  * @summary Гибридный импорт одной собаки Zoo→BA (все поколения)
@@ -131,4 +129,3 @@ export declare const useDogsImportHybridFullRangeCreate: <TError = void, TContex
131
129
  }) => UseMutationResult<Awaited<ReturnType<typeof dogsImportHybridFullRangeCreate>>, TError, {
132
130
  data: ImportHybridFullRangeRequest;
133
131
  }, TContext>;
134
- export {};
@@ -1,7 +1,5 @@
1
1
  import type { UseMutationOptions, UseMutationResult } from '@tanstack/react-query';
2
2
  import type { ImportZooportalDogRequest, ImportZooportalPageRequest, ImportZooportalRangeRequest, TaskResponse } from '../api.schemas';
3
- type AwaitedInput<T> = PromiseLike<T> | T;
4
- type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;
5
3
  /**
6
4
  * Запускает асинхронный импорт собаки по её ID из Zooportal.
7
5
  * @summary Импорт одной собаки
@@ -143,4 +141,3 @@ export declare const useDogsImportZooportalRangeCreate: <TError = void, TContext
143
141
  }) => UseMutationResult<Awaited<ReturnType<typeof dogsImportZooportalRangeCreate>>, TError, {
144
142
  data: ImportZooportalRangeRequest;
145
143
  }, TContext>;
146
- export {};
@@ -1,7 +1,5 @@
1
1
  import type { QueryKey, UseQueryOptions, UseQueryResult } from '@tanstack/react-query';
2
2
  import type { Judge, JudgeDetails, JudgeDetailsListParams, JudgesListParams, PaginatedJudgeDetailsList, PaginatedJudgeList } from '../api.schemas';
3
- type AwaitedInput<T> = PromiseLike<T> | T;
4
- type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;
5
3
  /**
6
4
  * API детальных профилей судей
7
5
  * @summary Список детальных профилей судей
@@ -144,4 +142,3 @@ export declare function useJudgesRetrieve<TData = Awaited<ReturnType<typeof judg
144
142
  }): UseQueryResult<TData, TError> & {
145
143
  queryKey: QueryKey;
146
144
  };
147
- export {};
@@ -1,7 +1,5 @@
1
1
  import type { QueryKey, UseQueryOptions, UseQueryResult } from '@tanstack/react-query';
2
2
  import type { BoardMember, ClubBoardListParams, PaginatedBoardMemberList, PaginatedWorkingGroupList, WorkingGroup, WorkingGroupsListParams } from '../api.schemas';
3
- type AwaitedInput<T> = PromiseLike<T> | T;
4
- type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;
5
3
  /**
6
4
  * API членов Президиума
7
5
  * @summary Список членов Президиума
@@ -143,4 +141,3 @@ export declare function useWorkingGroupsRetrieve<TData = Awaited<ReturnType<type
143
141
  }): UseQueryResult<TData, TError> & {
144
142
  queryKey: QueryKey;
145
143
  };
146
- export {};
@@ -1,7 +1,5 @@
1
1
  import type { QueryKey, UseQueryOptions, UseQueryResult } from '@tanstack/react-query';
2
2
  import type { Achievement, MeAchievementsListParams, PaginatedAchievementList } from '../api.schemas';
3
- type AwaitedInput<T> = PromiseLike<T> | T;
4
- type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;
5
3
  /**
6
4
  * API достижений пользователя
7
5
  * @summary Список моих достижений
@@ -84,4 +82,3 @@ export declare function useMeAchievementsRetrieve<TData = Awaited<ReturnType<typ
84
82
  }): UseQueryResult<TData, TError> & {
85
83
  queryKey: QueryKey;
86
84
  };
87
- export {};
@@ -1,7 +1,5 @@
1
1
  import type { QueryKey, UseMutationOptions, UseMutationResult, UseQueryOptions, UseQueryResult } from '@tanstack/react-query';
2
2
  import type { Application, ApplicationRequest, MeApplicationsListParams, PaginatedApplicationList, PatchedApplicationRequest } from '../api.schemas';
3
- type AwaitedInput<T> = PromiseLike<T> | T;
4
- type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;
5
3
  /**
6
4
  * API заявлений пользователя
7
5
  * @summary Список моих заявлений
@@ -287,4 +285,3 @@ export declare const useMeApplicationsDestroy: <TError = void, TContext = unknow
287
285
  }) => UseMutationResult<Awaited<ReturnType<typeof meApplicationsDestroy>>, TError, {
288
286
  id: string;
289
287
  }, TContext>;
290
- export {};
@@ -1,7 +1,5 @@
1
1
  import type { QueryKey, UseMutationOptions, UseMutationResult, UseQueryOptions, UseQueryResult } from '@tanstack/react-query';
2
2
  import type { Dog, DogRequest, MeDogsChampionsListParams, MeDogsListParams, PaginatedDogList, PatchedDogRequest } from '../api.schemas';
3
- type AwaitedInput<T> = PromiseLike<T> | T;
4
- type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;
5
3
  /**
6
4
  * API собак пользователя
7
5
  * @summary Список моих собак
@@ -326,4 +324,3 @@ export declare function useMeDogsChampionsList<TData = Awaited<ReturnType<typeof
326
324
  }): UseQueryResult<TData, TError> & {
327
325
  queryKey: QueryKey;
328
326
  };
329
- export {};
@@ -1,7 +1,5 @@
1
1
  import type { QueryKey, UseMutationOptions, UseMutationResult, UseQueryOptions, UseQueryResult } from '@tanstack/react-query';
2
2
  import type { Kennel, KennelRequest, MeKennelsListParams, PaginatedKennelList, PatchedKennelRequest } from '../api.schemas';
3
- type AwaitedInput<T> = PromiseLike<T> | T;
4
- type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;
5
3
  /**
6
4
  * API питомника пользователя
7
5
  * @summary Список моих питомников
@@ -287,4 +285,3 @@ export declare const useMeKennelsDestroy: <TError = void, TContext = unknown>(op
287
285
  }) => UseMutationResult<Awaited<ReturnType<typeof meKennelsDestroy>>, TError, {
288
286
  id: string;
289
287
  }, TContext>;
290
- export {};
@@ -1,7 +1,5 @@
1
1
  import type { QueryKey, UseMutationOptions, UseMutationResult, UseQueryOptions, UseQueryResult } from '@tanstack/react-query';
2
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
3
  /**
6
4
  * API пометов пользователя
7
5
  * @summary Список моих помётов
@@ -287,4 +285,3 @@ export declare const useMeLittersDestroy: <TError = void, TContext = unknown>(op
287
285
  }) => UseMutationResult<Awaited<ReturnType<typeof meLittersDestroy>>, TError, {
288
286
  id: string;
289
287
  }, TContext>;
290
- export {};
@@ -1,7 +1,5 @@
1
1
  import type { QueryKey, UseQueryOptions, UseQueryResult } from '@tanstack/react-query';
2
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
3
  /**
6
4
  * Возвращает пагинированный список новостей. Поддерживает фильтрацию по избранному и тегам.
7
5
  * @summary Список новостей
@@ -73,4 +71,3 @@ export declare function useNewsRetrieve<TData = Awaited<ReturnType<typeof newsRe
73
71
  }): UseQueryResult<TData, TError> & {
74
72
  queryKey: QueryKey;
75
73
  };
76
- export {};
@@ -1,7 +1,5 @@
1
1
  import type { QueryKey, UseQueryOptions, UseQueryResult } from '@tanstack/react-query';
2
2
  import type { Page, PagesListParams, PaginatedPageList } from '../api.schemas';
3
- type AwaitedInput<T> = PromiseLike<T> | T;
4
- type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;
5
3
  /**
6
4
  * API CMS страниц
7
5
  * @summary Список CMS-страниц
@@ -73,4 +71,3 @@ export declare function usePagesRetrieve<TData = Awaited<ReturnType<typeof pages
73
71
  }): UseQueryResult<TData, TError> & {
74
72
  queryKey: QueryKey;
75
73
  };
76
- export {};
@@ -1,7 +1,5 @@
1
1
  import type { QueryKey, UseMutationOptions, UseMutationResult, UseQueryOptions, UseQueryResult } from '@tanstack/react-query';
2
2
  import type { UserProfile, UserProfileRequest } from '../api.schemas';
3
- type AwaitedInput<T> = PromiseLike<T> | T;
4
- type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;
5
3
  /**
6
4
  * Возвращает профиль текущего авторизованного пользователя.
7
5
  * @summary Получить свой профиль
@@ -96,4 +94,3 @@ export declare const useMeProfileUpdate: <TError = void, TContext = unknown>(opt
96
94
  }) => UseMutationResult<Awaited<ReturnType<typeof meProfileUpdate>>, TError, {
97
95
  data: UserProfileRequest;
98
96
  }, TContext>;
99
- export {};
@@ -1,7 +1,5 @@
1
1
  import type { QueryKey, UseQueryOptions, UseQueryResult } from '@tanstack/react-query';
2
2
  import type { TaskStatusResponse } from '../api.schemas';
3
- type AwaitedInput<T> = PromiseLike<T> | T;
4
- type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;
5
3
  /**
6
4
  * Получить статус выполнения задачи по её ID.
7
5
  * @summary Статус задачи импорта
@@ -41,4 +39,3 @@ export declare function useDogsImportStatusRetrieve<TData = Awaited<ReturnType<t
41
39
  }): UseQueryResult<TData, TError> & {
42
40
  queryKey: QueryKey;
43
41
  };
44
- export {};
@@ -0,0 +1,108 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>API Client Impact Report — Unreleased</title>
7
+ <style>
8
+ :root {
9
+ --bg: #1e1e1e; --fg: #d4d4d4; --border: #333;
10
+ --card: #252526; --accent: #569cd6;
11
+ --red: #f44336; --green: #4caf50; --orange: #ff9800;
12
+ --purple: #c586c0; --blue: #569cd6; --teal: #4ec9b0;
13
+ }
14
+ @media (prefers-color-scheme: light) {
15
+ :root {
16
+ --bg: #fff; --fg: #1e1e1e; --border: #e0e0e0;
17
+ --card: #f5f5f5; --accent: #1976d2;
18
+ --red: #d32f2f; --green: #388e3c; --orange: #f57c00;
19
+ --purple: #7b1fa2; --blue: #1976d2; --teal: #00796b;
20
+ }
21
+ }
22
+ * { box-sizing: border-box; margin: 0; padding: 0; }
23
+ body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; color: var(--fg); background: var(--bg); padding: 32px; max-width: 900px; margin: 0 auto; line-height: 1.6; }
24
+ h1 { font-size: 1.6em; margin-bottom: 4px; }
25
+ .meta { color: #888; font-size: 0.9em; margin-bottom: 24px; }
26
+ .badge { display: inline-block; padding: 2px 12px; border-radius: 12px; font-size: 0.75em; font-weight: 700; color: #fff; }
27
+ .stats { display: flex; gap: 20px; flex-wrap: wrap; margin-bottom: 28px; padding: 16px; background: var(--card); border: 1px solid var(--border); border-radius: 8px; }
28
+ .stat { text-align: center; min-width: 70px; }
29
+ .stat-val { font-size: 1.8em; font-weight: 700; }
30
+ .stat-lbl { font-size: 0.72em; text-transform: uppercase; color: #888; letter-spacing: 0.5px; }
31
+ .section { margin-bottom: 28px; }
32
+ .section-title { font-size: 1.1em; font-weight: 600; margin-bottom: 10px; padding-bottom: 6px; border-bottom: 1px solid var(--border); }
33
+ .group { margin-bottom: 12px; }
34
+ .group-name { font-family: 'Fira Code', 'Cascadia Code', monospace; font-size: 0.9em; font-weight: 600; margin-bottom: 4px; padding: 4px 8px; background: var(--card); border-radius: 4px; cursor: pointer; }
35
+ .group-name:hover { opacity: 0.8; }
36
+ .artifact { display: flex; align-items: center; gap: 8px; padding: 4px 12px; margin: 2px 0; border-radius: 4px; font-size: 0.85em; }
37
+ .artifact .name { font-family: 'Fira Code', 'Cascadia Code', monospace; }
38
+ .kind { font-size: 0.7em; padding: 1px 6px; border-radius: 3px; font-weight: 600; text-transform: uppercase; }
39
+ .kind-type { background: rgba(197,134,192,0.15); color: var(--purple); }
40
+ .kind-endpoint { background: rgba(86,156,214,0.15); color: var(--blue); }
41
+ .kind-hook { background: rgba(78,201,176,0.15); color: var(--teal); }
42
+ .change-added { border-left: 3px solid var(--green); }
43
+ .change-removed { border-left: 3px solid var(--red); }
44
+ .change-modified { border-left: 3px solid var(--orange); }
45
+ .change-breaking { border-left: 3px solid var(--red); background: rgba(244,67,54,0.05); }
46
+ .changelog { margin-bottom: 28px; }
47
+ .changelog ul { list-style: none; padding: 0; }
48
+ .changelog li { padding: 3px 0; font-size: 0.88em; }
49
+ .changelog li::before { content: '• '; color: #888; }
50
+ footer { margin-top: 40px; padding-top: 16px; border-top: 1px solid var(--border); font-size: 0.8em; color: #888; }
51
+ </style>
52
+ </head>
53
+ <body>
54
+ <h1>API Client Impact Report <span class="badge" style="background: var(--red);">MAJOR</span></h1>
55
+ <div class="meta">Unreleased — 2026-06-21</div>
56
+
57
+ <div class="stats">
58
+ <div class="stat"><div class="stat-val" style="color: var(--purple);">1</div><div class="stat-lbl">Types</div></div>
59
+ <div class="stat"><div class="stat-val" style="color: var(--blue);">1</div><div class="stat-lbl">Endpoints</div></div>
60
+ <div class="stat"><div class="stat-val" style="color: var(--teal);">1</div><div class="stat-lbl">Hooks</div></div>
61
+ <div class="stat"><div class="stat-val" style="color: var(--green);">0</div><div class="stat-lbl">Added</div></div>
62
+ <div class="stat"><div class="stat-val" style="color: var(--orange);">0</div><div class="stat-lbl">Modified</div></div>
63
+ <div class="stat"><div class="stat-val" style="color: var(--red);">3</div><div class="stat-lbl">Removed / Breaking</div></div>
64
+ </div>
65
+
66
+
67
+ <div class="section">
68
+ <div class="section-title" style="color: var(--red);">⚠ Breaking Changes</div>
69
+ <div class="group">
70
+ <div class="group-name">/api/activity-feed/ (3)</div>
71
+ <div>
72
+ <div class="artifact change-breaking">
73
+ <span class="kind kind-hook">hook</span>
74
+ <span class="name">useActivity_feed_retrieve</span>
75
+ </div>
76
+ <div class="artifact change-breaking">
77
+ <span class="kind kind-endpoint">endpoint</span>
78
+ <span class="name">activity_feed_retrieve</span>
79
+ </div>
80
+ <div class="artifact change-breaking">
81
+ <span class="kind kind-type">type</span>
82
+ <span class="name">Activity_feed_retrieveResponse</span>
83
+ </div>
84
+ </div>
85
+ </div>
86
+ </div>
87
+
88
+
89
+
90
+
91
+ <div class="changelog">
92
+ <div class="section-title">Spec Changelog</div>
93
+ <h4 style="margin: 8px 0 4px; color: var(--red); font-size: 0.9em;">Breaking</h4><ul><li>Path removed: /api/activity-feed/</li></ul>
94
+
95
+ </div>
96
+
97
+ <footer>Generated by <strong>api-sync</strong> on 2026-06-21</footer>
98
+
99
+ <script>
100
+ document.querySelectorAll('.group-name').forEach(el => {
101
+ el.addEventListener('click', () => {
102
+ const body = el.nextElementSibling;
103
+ body.style.display = body.style.display === 'none' ? 'block' : 'none';
104
+ });
105
+ });
106
+ </script>
107
+ </body>
108
+ </html>