@profcomff/api-uilib 2024.9.29 → 2024.11.24
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.
- package/package.json +1 -1
- package/scripts/generate.js +1 -0
- package/src/index.ts +3 -1
- package/src/openapi/auth.ts +238 -1
- package/src/openapi/rating.ts +668 -0
- package/redocly.yaml +0 -44
package/package.json
CHANGED
package/scripts/generate.js
CHANGED
|
@@ -13,6 +13,7 @@ const apis = {
|
|
|
13
13
|
social: "https://api.profcomff.com/social/openapi.json",
|
|
14
14
|
userdata: "https://api.profcomff.com/userdata/openapi.json",
|
|
15
15
|
achievement: "https://api.profcomff.com/achievement/openapi.json",
|
|
16
|
+
rating: "https://api.profcomff.com/rating/openapi.json",
|
|
16
17
|
};
|
|
17
18
|
|
|
18
19
|
const header = `/**
|
package/src/index.ts
CHANGED
|
@@ -9,6 +9,7 @@ import type { paths as servicesPaths } from "./openapi/services.ts";
|
|
|
9
9
|
import type { paths as socialPaths } from "./openapi/social.ts";
|
|
10
10
|
import type { paths as timetablePaths } from "./openapi/timetable.ts";
|
|
11
11
|
import type { paths as userdataPaths } from "./openapi/userdata.ts";
|
|
12
|
+
import type { paths as ratingPaths } from "./openapi/rating.js";
|
|
12
13
|
|
|
13
14
|
|
|
14
15
|
export type paths = (
|
|
@@ -19,7 +20,8 @@ export type paths = (
|
|
|
19
20
|
servicesPaths &
|
|
20
21
|
socialPaths &
|
|
21
22
|
timetablePaths &
|
|
22
|
-
userdataPaths
|
|
23
|
+
userdataPaths &
|
|
24
|
+
ratingPaths
|
|
23
25
|
);
|
|
24
26
|
|
|
25
27
|
let currentClient: ReturnType<typeof Client<paths>> | undefined = undefined;
|
package/src/openapi/auth.ts
CHANGED
|
@@ -38,6 +38,106 @@ export interface paths {
|
|
|
38
38
|
patch?: never;
|
|
39
39
|
trace?: never;
|
|
40
40
|
};
|
|
41
|
+
"/auth/authentic": {
|
|
42
|
+
parameters: {
|
|
43
|
+
query?: never;
|
|
44
|
+
header?: never;
|
|
45
|
+
path?: never;
|
|
46
|
+
cookie?: never;
|
|
47
|
+
};
|
|
48
|
+
get?: never;
|
|
49
|
+
put?: never;
|
|
50
|
+
post?: never;
|
|
51
|
+
/**
|
|
52
|
+
* Unregister
|
|
53
|
+
* @description Отключает для пользователя метод входа
|
|
54
|
+
*/
|
|
55
|
+
delete: operations["_unregister_authentic_delete"];
|
|
56
|
+
options?: never;
|
|
57
|
+
head?: never;
|
|
58
|
+
patch?: never;
|
|
59
|
+
trace?: never;
|
|
60
|
+
};
|
|
61
|
+
"/auth/authentic/auth_url": {
|
|
62
|
+
parameters: {
|
|
63
|
+
query?: never;
|
|
64
|
+
header?: never;
|
|
65
|
+
path?: never;
|
|
66
|
+
cookie?: never;
|
|
67
|
+
};
|
|
68
|
+
/**
|
|
69
|
+
* Auth Url
|
|
70
|
+
* @description URL на который происходит редирект из приложения для авторизации на стороне провайдера
|
|
71
|
+
*/
|
|
72
|
+
get: operations["_auth_url_authentic_auth_url_get"];
|
|
73
|
+
put?: never;
|
|
74
|
+
post?: never;
|
|
75
|
+
delete?: never;
|
|
76
|
+
options?: never;
|
|
77
|
+
head?: never;
|
|
78
|
+
patch?: never;
|
|
79
|
+
trace?: never;
|
|
80
|
+
};
|
|
81
|
+
"/auth/authentic/login": {
|
|
82
|
+
parameters: {
|
|
83
|
+
query?: never;
|
|
84
|
+
header?: never;
|
|
85
|
+
path?: never;
|
|
86
|
+
cookie?: never;
|
|
87
|
+
};
|
|
88
|
+
get?: never;
|
|
89
|
+
put?: never;
|
|
90
|
+
/**
|
|
91
|
+
* Login
|
|
92
|
+
* @description Вход в пользователя с помощью аккаунта Authentic
|
|
93
|
+
*/
|
|
94
|
+
post: operations["_login_authentic_login_post"];
|
|
95
|
+
delete?: never;
|
|
96
|
+
options?: never;
|
|
97
|
+
head?: never;
|
|
98
|
+
patch?: never;
|
|
99
|
+
trace?: never;
|
|
100
|
+
};
|
|
101
|
+
"/auth/authentic/redirect_url": {
|
|
102
|
+
parameters: {
|
|
103
|
+
query?: never;
|
|
104
|
+
header?: never;
|
|
105
|
+
path?: never;
|
|
106
|
+
cookie?: never;
|
|
107
|
+
};
|
|
108
|
+
/**
|
|
109
|
+
* Redirect Url
|
|
110
|
+
* @description URL на который происходит редирект после завершения входа на стороне провайдера
|
|
111
|
+
*/
|
|
112
|
+
get: operations["_redirect_url_authentic_redirect_url_get"];
|
|
113
|
+
put?: never;
|
|
114
|
+
post?: never;
|
|
115
|
+
delete?: never;
|
|
116
|
+
options?: never;
|
|
117
|
+
head?: never;
|
|
118
|
+
patch?: never;
|
|
119
|
+
trace?: never;
|
|
120
|
+
};
|
|
121
|
+
"/auth/authentic/registration": {
|
|
122
|
+
parameters: {
|
|
123
|
+
query?: never;
|
|
124
|
+
header?: never;
|
|
125
|
+
path?: never;
|
|
126
|
+
cookie?: never;
|
|
127
|
+
};
|
|
128
|
+
get?: never;
|
|
129
|
+
put?: never;
|
|
130
|
+
/**
|
|
131
|
+
* Register
|
|
132
|
+
* @description Создает аккаунт или привязывает существующий
|
|
133
|
+
*/
|
|
134
|
+
post: operations["_register_authentic_registration_post"];
|
|
135
|
+
delete?: never;
|
|
136
|
+
options?: never;
|
|
137
|
+
head?: never;
|
|
138
|
+
patch?: never;
|
|
139
|
+
trace?: never;
|
|
140
|
+
};
|
|
41
141
|
"/auth/coder/{user_id}/link": {
|
|
42
142
|
parameters: {
|
|
43
143
|
query?: never;
|
|
@@ -1135,7 +1235,7 @@ export interface paths {
|
|
|
1135
1235
|
post?: never;
|
|
1136
1236
|
/**
|
|
1137
1237
|
* Delete User
|
|
1138
|
-
* @description Scopes: `["auth.user.delete"]`
|
|
1238
|
+
* @description Scopes: `["auth.user.delete"]` or `["auth.user.selfdelete"]` for self delete
|
|
1139
1239
|
*/
|
|
1140
1240
|
delete: operations["delete_user_user__user_id__delete"];
|
|
1141
1241
|
options?: never;
|
|
@@ -1381,6 +1481,17 @@ export interface components {
|
|
|
1381
1481
|
user_id: number;
|
|
1382
1482
|
};
|
|
1383
1483
|
/** OauthResponseSchema */
|
|
1484
|
+
auth_backend__auth_plugins__authentic__AuthenticAuth__OauthResponseSchema: {
|
|
1485
|
+
/** Code */
|
|
1486
|
+
code?: string | null;
|
|
1487
|
+
/** Id Token */
|
|
1488
|
+
id_token?: string | null;
|
|
1489
|
+
/** Scopes */
|
|
1490
|
+
scopes?: string[] | null;
|
|
1491
|
+
/** Session Name */
|
|
1492
|
+
session_name?: string | null;
|
|
1493
|
+
};
|
|
1494
|
+
/** OauthResponseSchema */
|
|
1384
1495
|
auth_backend__auth_plugins__github__GithubAuth__OauthResponseSchema: {
|
|
1385
1496
|
/** Code */
|
|
1386
1497
|
code?: string | null;
|
|
@@ -1803,6 +1914,132 @@ export interface operations {
|
|
|
1803
1914
|
};
|
|
1804
1915
|
};
|
|
1805
1916
|
};
|
|
1917
|
+
_unregister_authentic_delete: {
|
|
1918
|
+
parameters: {
|
|
1919
|
+
query?: never;
|
|
1920
|
+
header?: never;
|
|
1921
|
+
path?: never;
|
|
1922
|
+
cookie?: never;
|
|
1923
|
+
};
|
|
1924
|
+
requestBody?: never;
|
|
1925
|
+
responses: {
|
|
1926
|
+
/** @description Successful Response */
|
|
1927
|
+
200: {
|
|
1928
|
+
headers: {
|
|
1929
|
+
[name: string]: unknown;
|
|
1930
|
+
};
|
|
1931
|
+
content: {
|
|
1932
|
+
"application/json": unknown;
|
|
1933
|
+
};
|
|
1934
|
+
};
|
|
1935
|
+
};
|
|
1936
|
+
};
|
|
1937
|
+
_auth_url_authentic_auth_url_get: {
|
|
1938
|
+
parameters: {
|
|
1939
|
+
query?: never;
|
|
1940
|
+
header?: never;
|
|
1941
|
+
path?: never;
|
|
1942
|
+
cookie?: never;
|
|
1943
|
+
};
|
|
1944
|
+
requestBody?: never;
|
|
1945
|
+
responses: {
|
|
1946
|
+
/** @description Successful Response */
|
|
1947
|
+
200: {
|
|
1948
|
+
headers: {
|
|
1949
|
+
[name: string]: unknown;
|
|
1950
|
+
};
|
|
1951
|
+
content: {
|
|
1952
|
+
"application/json": components["schemas"]["UrlSchema"];
|
|
1953
|
+
};
|
|
1954
|
+
};
|
|
1955
|
+
};
|
|
1956
|
+
};
|
|
1957
|
+
_login_authentic_login_post: {
|
|
1958
|
+
parameters: {
|
|
1959
|
+
query?: never;
|
|
1960
|
+
header?: never;
|
|
1961
|
+
path?: never;
|
|
1962
|
+
cookie?: never;
|
|
1963
|
+
};
|
|
1964
|
+
requestBody: {
|
|
1965
|
+
content: {
|
|
1966
|
+
"application/json": components["schemas"]["auth_backend__auth_plugins__authentic__AuthenticAuth__OauthResponseSchema"];
|
|
1967
|
+
};
|
|
1968
|
+
};
|
|
1969
|
+
responses: {
|
|
1970
|
+
/** @description Successful Response */
|
|
1971
|
+
200: {
|
|
1972
|
+
headers: {
|
|
1973
|
+
[name: string]: unknown;
|
|
1974
|
+
};
|
|
1975
|
+
content: {
|
|
1976
|
+
"application/json": components["schemas"]["auth_backend__auth_method__session__Session"];
|
|
1977
|
+
};
|
|
1978
|
+
};
|
|
1979
|
+
/** @description Validation Error */
|
|
1980
|
+
422: {
|
|
1981
|
+
headers: {
|
|
1982
|
+
[name: string]: unknown;
|
|
1983
|
+
};
|
|
1984
|
+
content: {
|
|
1985
|
+
"application/json": components["schemas"]["HTTPValidationError"];
|
|
1986
|
+
};
|
|
1987
|
+
};
|
|
1988
|
+
};
|
|
1989
|
+
};
|
|
1990
|
+
_redirect_url_authentic_redirect_url_get: {
|
|
1991
|
+
parameters: {
|
|
1992
|
+
query?: never;
|
|
1993
|
+
header?: never;
|
|
1994
|
+
path?: never;
|
|
1995
|
+
cookie?: never;
|
|
1996
|
+
};
|
|
1997
|
+
requestBody?: never;
|
|
1998
|
+
responses: {
|
|
1999
|
+
/** @description Successful Response */
|
|
2000
|
+
200: {
|
|
2001
|
+
headers: {
|
|
2002
|
+
[name: string]: unknown;
|
|
2003
|
+
};
|
|
2004
|
+
content: {
|
|
2005
|
+
"application/json": components["schemas"]["UrlSchema"];
|
|
2006
|
+
};
|
|
2007
|
+
};
|
|
2008
|
+
};
|
|
2009
|
+
};
|
|
2010
|
+
_register_authentic_registration_post: {
|
|
2011
|
+
parameters: {
|
|
2012
|
+
query?: never;
|
|
2013
|
+
header?: never;
|
|
2014
|
+
path?: never;
|
|
2015
|
+
cookie?: never;
|
|
2016
|
+
};
|
|
2017
|
+
requestBody: {
|
|
2018
|
+
content: {
|
|
2019
|
+
"application/json": components["schemas"]["auth_backend__auth_plugins__authentic__AuthenticAuth__OauthResponseSchema"];
|
|
2020
|
+
};
|
|
2021
|
+
};
|
|
2022
|
+
responses: {
|
|
2023
|
+
/** @description Successful Response */
|
|
2024
|
+
200: {
|
|
2025
|
+
headers: {
|
|
2026
|
+
[name: string]: unknown;
|
|
2027
|
+
};
|
|
2028
|
+
content: {
|
|
2029
|
+
"application/json": components["schemas"]["auth_backend__auth_method__session__Session"];
|
|
2030
|
+
};
|
|
2031
|
+
};
|
|
2032
|
+
/** @description Validation Error */
|
|
2033
|
+
422: {
|
|
2034
|
+
headers: {
|
|
2035
|
+
[name: string]: unknown;
|
|
2036
|
+
};
|
|
2037
|
+
content: {
|
|
2038
|
+
"application/json": components["schemas"]["HTTPValidationError"];
|
|
2039
|
+
};
|
|
2040
|
+
};
|
|
2041
|
+
};
|
|
2042
|
+
};
|
|
1806
2043
|
_get_link_coder__user_id__link_get: {
|
|
1807
2044
|
parameters: {
|
|
1808
2045
|
query?: never;
|
|
@@ -0,0 +1,668 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This file was auto-generated by openapi-typescript.
|
|
3
|
+
* Do not make direct changes to the file.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
export interface paths {
|
|
7
|
+
"/rating/comment": {
|
|
8
|
+
parameters: {
|
|
9
|
+
query?: never;
|
|
10
|
+
header?: never;
|
|
11
|
+
path?: never;
|
|
12
|
+
cookie?: never;
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Get Comments
|
|
16
|
+
* @description Scopes: `["rating.comment.review"]`
|
|
17
|
+
*
|
|
18
|
+
* `limit` - максимальное количество возвращаемых комментариев
|
|
19
|
+
*
|
|
20
|
+
* `offset` - смещение, определяющее, с какого по порядку комментария начинать выборку.
|
|
21
|
+
* Если без смещения возвращается комментарий с условным номером N,
|
|
22
|
+
* то при значении offset = X будет возвращаться комментарий с номером N + X
|
|
23
|
+
*
|
|
24
|
+
* `order_by` - возможное значение `'create_ts'` - возвращается список комментариев отсортированных по времени создания
|
|
25
|
+
*
|
|
26
|
+
* `lecturer_id` - вернет все комментарии для преподавателя с конкретным id, по дефолту возвращает вообще все аппрувнутые комментарии.
|
|
27
|
+
*
|
|
28
|
+
* `user_id` - вернет все комментарии пользователя с конкретным id
|
|
29
|
+
*
|
|
30
|
+
* `unreviewed` - вернет все непроверенные комментарии, если True. По дефолту False.
|
|
31
|
+
*/
|
|
32
|
+
get: operations["get_comments_comment_get"];
|
|
33
|
+
put?: never;
|
|
34
|
+
/**
|
|
35
|
+
* Create Comment
|
|
36
|
+
* @description Создает комментарий к преподавателю в базе данных RatingAPI
|
|
37
|
+
* Для создания комментария нужно быть авторизованным
|
|
38
|
+
*/
|
|
39
|
+
post: operations["create_comment_comment_post"];
|
|
40
|
+
delete?: never;
|
|
41
|
+
options?: never;
|
|
42
|
+
head?: never;
|
|
43
|
+
patch?: never;
|
|
44
|
+
trace?: never;
|
|
45
|
+
};
|
|
46
|
+
"/rating/comment/{uuid}": {
|
|
47
|
+
parameters: {
|
|
48
|
+
query?: never;
|
|
49
|
+
header?: never;
|
|
50
|
+
path?: never;
|
|
51
|
+
cookie?: never;
|
|
52
|
+
};
|
|
53
|
+
/**
|
|
54
|
+
* Get Comment
|
|
55
|
+
* @description Возвращает комментарий по его UUID в базе данных RatingAPI
|
|
56
|
+
*/
|
|
57
|
+
get: operations["get_comment_comment__uuid__get"];
|
|
58
|
+
put?: never;
|
|
59
|
+
post?: never;
|
|
60
|
+
/**
|
|
61
|
+
* Delete Comment
|
|
62
|
+
* @description Scopes: `["rating.comment.delete"]`
|
|
63
|
+
*
|
|
64
|
+
* Удаляет комментарий по его UUID в базе данных RatingAPI
|
|
65
|
+
*/
|
|
66
|
+
delete: operations["delete_comment_comment__uuid__delete"];
|
|
67
|
+
options?: never;
|
|
68
|
+
head?: never;
|
|
69
|
+
/**
|
|
70
|
+
* Review Comment
|
|
71
|
+
* @description Scopes: `["rating.comment.review"]`
|
|
72
|
+
* Проверка комментария и присваивания ему статуса по его UUID в базе данных RatingAPI
|
|
73
|
+
*
|
|
74
|
+
* `review_status` - возможные значения
|
|
75
|
+
* `approved` - комментарий одобрен и возвращается при запросе лектора
|
|
76
|
+
* `dismissed` - комментарий отклонен, не отображается в запросе лектора
|
|
77
|
+
*/
|
|
78
|
+
patch: operations["review_comment_comment__uuid__patch"];
|
|
79
|
+
trace?: never;
|
|
80
|
+
};
|
|
81
|
+
"/rating/lecturer": {
|
|
82
|
+
parameters: {
|
|
83
|
+
query?: never;
|
|
84
|
+
header?: never;
|
|
85
|
+
path?: never;
|
|
86
|
+
cookie?: never;
|
|
87
|
+
};
|
|
88
|
+
/**
|
|
89
|
+
* Get Lecturers
|
|
90
|
+
* @description `limit` - максимальное количество возвращаемых преподавателей
|
|
91
|
+
*
|
|
92
|
+
* `offset` - нижняя граница получения преподавателей, т.е. если по дефолту первым возвращается преподаватель с условным номером N, то при наличии ненулевого offset будет возвращаться преподаватель с номером N + offset
|
|
93
|
+
*
|
|
94
|
+
* `order_by` - возможные значения `"mark_kindness", "mark_freebie", "mark_clarity", "mark_general", "last_name"`.
|
|
95
|
+
* Если передано `'last_name'` - возвращается список преподавателей отсортированных по алфавиту по фамилиям
|
|
96
|
+
* Если передано `'mark_...'` - возвращается список преподавателей отсортированных по конкретной оценке
|
|
97
|
+
*
|
|
98
|
+
* `info` - возможные значения `'comments'`, `'mark'`.
|
|
99
|
+
* Если передано `'comments'`, то возвращаются одобренные комментарии к преподавателю.
|
|
100
|
+
* Если передано `'mark'`, то возвращаются общие средние оценки, а также суммарная средняя оценка по всем одобренным комментариям.
|
|
101
|
+
*
|
|
102
|
+
* `subject`
|
|
103
|
+
* Если передано `subject` - возвращает всех преподавателей, для которых переданное значение совпадает с одним из их предметов преподавания.
|
|
104
|
+
* Также возвращает всех преподавателей, у которых есть комментарий с совпадающим с данным subject.
|
|
105
|
+
*
|
|
106
|
+
* `name`
|
|
107
|
+
* Поле для ФИО. Если передано `name` - возвращает всех преподователей, для которых нашлись совпадения с переданной строкой
|
|
108
|
+
*
|
|
109
|
+
* `asc_order`
|
|
110
|
+
* Если передано true, сортировать в порядке возрастания
|
|
111
|
+
* Иначе - в порядке убывания
|
|
112
|
+
*/
|
|
113
|
+
get: operations["get_lecturers_lecturer_get"];
|
|
114
|
+
put?: never;
|
|
115
|
+
/**
|
|
116
|
+
* Create Lecturer
|
|
117
|
+
* @description Scopes: `["rating.lecturer.create"]`
|
|
118
|
+
*
|
|
119
|
+
* Создает преподавателя в базе данных RatingAPI
|
|
120
|
+
*/
|
|
121
|
+
post: operations["create_lecturer_lecturer_post"];
|
|
122
|
+
delete?: never;
|
|
123
|
+
options?: never;
|
|
124
|
+
head?: never;
|
|
125
|
+
patch?: never;
|
|
126
|
+
trace?: never;
|
|
127
|
+
};
|
|
128
|
+
"/rating/lecturer/{id}": {
|
|
129
|
+
parameters: {
|
|
130
|
+
query?: never;
|
|
131
|
+
header?: never;
|
|
132
|
+
path?: never;
|
|
133
|
+
cookie?: never;
|
|
134
|
+
};
|
|
135
|
+
/**
|
|
136
|
+
* Get Lecturer
|
|
137
|
+
* @description Scopes: `["rating.lecturer.read"]`
|
|
138
|
+
*
|
|
139
|
+
* Возвращает преподавателя по его ID в базе данных RatingAPI
|
|
140
|
+
*
|
|
141
|
+
* *QUERY* `info: string` - возможные значения `'comments'`, `'mark'`.
|
|
142
|
+
* Если передано `'comments'`, то возвращаются одобренные комментарии к преподавателю.
|
|
143
|
+
* Если передано `'mark'`, то возвращаются общие средние оценки, а также суммарная средняя оценка по всем одобренным комментариям.
|
|
144
|
+
*
|
|
145
|
+
* Subject лектора возвращшается либо из базы данных, либо из любого аппрувнутого комментария
|
|
146
|
+
*/
|
|
147
|
+
get: operations["get_lecturer_lecturer__id__get"];
|
|
148
|
+
put?: never;
|
|
149
|
+
post?: never;
|
|
150
|
+
/**
|
|
151
|
+
* Delete Lecturer
|
|
152
|
+
* @description Scopes: `["rating.lecturer.delete"]`
|
|
153
|
+
*/
|
|
154
|
+
delete: operations["delete_lecturer_lecturer__id__delete"];
|
|
155
|
+
options?: never;
|
|
156
|
+
head?: never;
|
|
157
|
+
/**
|
|
158
|
+
* Update Lecturer
|
|
159
|
+
* @description Scopes: `["rating.lecturer.update"]`
|
|
160
|
+
*/
|
|
161
|
+
patch: operations["update_lecturer_lecturer__id__patch"];
|
|
162
|
+
trace?: never;
|
|
163
|
+
};
|
|
164
|
+
}
|
|
165
|
+
export type webhooks = Record<string, never>;
|
|
166
|
+
export interface components {
|
|
167
|
+
schemas: {
|
|
168
|
+
/** CommentGet */
|
|
169
|
+
CommentGet: {
|
|
170
|
+
/**
|
|
171
|
+
* Create Ts
|
|
172
|
+
* Format: date-time
|
|
173
|
+
*/
|
|
174
|
+
create_ts: string;
|
|
175
|
+
/** Lecturer Id */
|
|
176
|
+
lecturer_id: number;
|
|
177
|
+
/** Mark Clarity */
|
|
178
|
+
mark_clarity: number;
|
|
179
|
+
/** Mark Freebie */
|
|
180
|
+
mark_freebie: number;
|
|
181
|
+
/** Mark General */
|
|
182
|
+
mark_general: number;
|
|
183
|
+
/** Mark Kindness */
|
|
184
|
+
mark_kindness: number;
|
|
185
|
+
/** Subject */
|
|
186
|
+
subject: string;
|
|
187
|
+
/** Text */
|
|
188
|
+
text: string;
|
|
189
|
+
/**
|
|
190
|
+
* Update Ts
|
|
191
|
+
* Format: date-time
|
|
192
|
+
*/
|
|
193
|
+
update_ts: string;
|
|
194
|
+
/** User Id */
|
|
195
|
+
user_id?: number | null;
|
|
196
|
+
/**
|
|
197
|
+
* Uuid
|
|
198
|
+
* Format: uuid
|
|
199
|
+
*/
|
|
200
|
+
uuid: string;
|
|
201
|
+
};
|
|
202
|
+
/** CommentGetAll */
|
|
203
|
+
CommentGetAll: {
|
|
204
|
+
/**
|
|
205
|
+
* Comments
|
|
206
|
+
* @default []
|
|
207
|
+
*/
|
|
208
|
+
comments: components["schemas"]["CommentGet"][];
|
|
209
|
+
/** Limit */
|
|
210
|
+
limit: number;
|
|
211
|
+
/** Offset */
|
|
212
|
+
offset: number;
|
|
213
|
+
/** Total */
|
|
214
|
+
total: number;
|
|
215
|
+
};
|
|
216
|
+
/** CommentPost */
|
|
217
|
+
CommentPost: {
|
|
218
|
+
/**
|
|
219
|
+
* Is Anonymous
|
|
220
|
+
* @default true
|
|
221
|
+
*/
|
|
222
|
+
is_anonymous: boolean;
|
|
223
|
+
/** Mark Clarity */
|
|
224
|
+
mark_clarity: number;
|
|
225
|
+
/** Mark Freebie */
|
|
226
|
+
mark_freebie: number;
|
|
227
|
+
/** Mark Kindness */
|
|
228
|
+
mark_kindness: number;
|
|
229
|
+
/** Subject */
|
|
230
|
+
subject: string;
|
|
231
|
+
/** Text */
|
|
232
|
+
text: string;
|
|
233
|
+
};
|
|
234
|
+
/** HTTPValidationError */
|
|
235
|
+
HTTPValidationError: {
|
|
236
|
+
/** Detail */
|
|
237
|
+
detail?: components["schemas"]["ValidationError"][];
|
|
238
|
+
};
|
|
239
|
+
/** LecturerGet */
|
|
240
|
+
LecturerGet: {
|
|
241
|
+
/** Avatar Link */
|
|
242
|
+
avatar_link?: string | null;
|
|
243
|
+
/** Comments */
|
|
244
|
+
comments?: components["schemas"]["CommentGet"][] | null;
|
|
245
|
+
/** First Name */
|
|
246
|
+
first_name: string;
|
|
247
|
+
/** Id */
|
|
248
|
+
id: number;
|
|
249
|
+
/** Last Name */
|
|
250
|
+
last_name: string;
|
|
251
|
+
/** Mark Clarity */
|
|
252
|
+
mark_clarity?: number | null;
|
|
253
|
+
/** Mark Freebie */
|
|
254
|
+
mark_freebie?: number | null;
|
|
255
|
+
/** Mark General */
|
|
256
|
+
mark_general?: number | null;
|
|
257
|
+
/** Mark Kindness */
|
|
258
|
+
mark_kindness?: number | null;
|
|
259
|
+
/** Middle Name */
|
|
260
|
+
middle_name: string;
|
|
261
|
+
/** Subjects */
|
|
262
|
+
subjects?: string[] | null;
|
|
263
|
+
/** Timetable Id */
|
|
264
|
+
timetable_id: number;
|
|
265
|
+
};
|
|
266
|
+
/** LecturerGetAll */
|
|
267
|
+
LecturerGetAll: {
|
|
268
|
+
/**
|
|
269
|
+
* Lecturers
|
|
270
|
+
* @default []
|
|
271
|
+
*/
|
|
272
|
+
lecturers: components["schemas"]["LecturerGet"][];
|
|
273
|
+
/** Limit */
|
|
274
|
+
limit: number;
|
|
275
|
+
/** Offset */
|
|
276
|
+
offset: number;
|
|
277
|
+
/** Total */
|
|
278
|
+
total: number;
|
|
279
|
+
};
|
|
280
|
+
/** LecturerPatch */
|
|
281
|
+
LecturerPatch: {
|
|
282
|
+
/** Avatar Link */
|
|
283
|
+
avatar_link?: string | null;
|
|
284
|
+
/** First Name */
|
|
285
|
+
first_name?: string | null;
|
|
286
|
+
/** Last Name */
|
|
287
|
+
last_name?: string | null;
|
|
288
|
+
/** Middle Name */
|
|
289
|
+
middle_name?: string | null;
|
|
290
|
+
/** Timetable Id */
|
|
291
|
+
timetable_id?: number | null;
|
|
292
|
+
};
|
|
293
|
+
/** LecturerPost */
|
|
294
|
+
LecturerPost: {
|
|
295
|
+
/** Avatar Link */
|
|
296
|
+
avatar_link?: string | null;
|
|
297
|
+
/** First Name */
|
|
298
|
+
first_name: string;
|
|
299
|
+
/** Last Name */
|
|
300
|
+
last_name: string;
|
|
301
|
+
/** Middle Name */
|
|
302
|
+
middle_name: string;
|
|
303
|
+
/** Timetable Id */
|
|
304
|
+
timetable_id: number;
|
|
305
|
+
};
|
|
306
|
+
/** StatusResponseModel */
|
|
307
|
+
StatusResponseModel: {
|
|
308
|
+
/** Message */
|
|
309
|
+
message: string;
|
|
310
|
+
/** Ru */
|
|
311
|
+
ru: string;
|
|
312
|
+
/** Status */
|
|
313
|
+
status: string;
|
|
314
|
+
};
|
|
315
|
+
/** ValidationError */
|
|
316
|
+
ValidationError: {
|
|
317
|
+
/** Location */
|
|
318
|
+
loc: (string | number)[];
|
|
319
|
+
/** Message */
|
|
320
|
+
msg: string;
|
|
321
|
+
/** Error Type */
|
|
322
|
+
type: string;
|
|
323
|
+
};
|
|
324
|
+
};
|
|
325
|
+
responses: never;
|
|
326
|
+
parameters: never;
|
|
327
|
+
requestBodies: never;
|
|
328
|
+
headers: never;
|
|
329
|
+
pathItems: never;
|
|
330
|
+
}
|
|
331
|
+
export type $defs = Record<string, never>;
|
|
332
|
+
export interface operations {
|
|
333
|
+
get_comments_comment_get: {
|
|
334
|
+
parameters: {
|
|
335
|
+
query?: {
|
|
336
|
+
lecturer_id?: number | null;
|
|
337
|
+
limit?: number;
|
|
338
|
+
offset?: number;
|
|
339
|
+
order_by?: "create_ts"[];
|
|
340
|
+
unreviewed?: boolean;
|
|
341
|
+
user_id?: number | null;
|
|
342
|
+
};
|
|
343
|
+
header?: never;
|
|
344
|
+
path?: never;
|
|
345
|
+
cookie?: never;
|
|
346
|
+
};
|
|
347
|
+
requestBody?: never;
|
|
348
|
+
responses: {
|
|
349
|
+
/** @description Successful Response */
|
|
350
|
+
200: {
|
|
351
|
+
headers: {
|
|
352
|
+
[name: string]: unknown;
|
|
353
|
+
};
|
|
354
|
+
content: {
|
|
355
|
+
"application/json": components["schemas"]["CommentGetAll"];
|
|
356
|
+
};
|
|
357
|
+
};
|
|
358
|
+
/** @description Validation Error */
|
|
359
|
+
422: {
|
|
360
|
+
headers: {
|
|
361
|
+
[name: string]: unknown;
|
|
362
|
+
};
|
|
363
|
+
content: {
|
|
364
|
+
"application/json": components["schemas"]["HTTPValidationError"];
|
|
365
|
+
};
|
|
366
|
+
};
|
|
367
|
+
};
|
|
368
|
+
};
|
|
369
|
+
create_comment_comment_post: {
|
|
370
|
+
parameters: {
|
|
371
|
+
query: {
|
|
372
|
+
lecturer_id: number;
|
|
373
|
+
};
|
|
374
|
+
header?: never;
|
|
375
|
+
path?: never;
|
|
376
|
+
cookie?: never;
|
|
377
|
+
};
|
|
378
|
+
requestBody: {
|
|
379
|
+
content: {
|
|
380
|
+
"application/json": components["schemas"]["CommentPost"];
|
|
381
|
+
};
|
|
382
|
+
};
|
|
383
|
+
responses: {
|
|
384
|
+
/** @description Successful Response */
|
|
385
|
+
200: {
|
|
386
|
+
headers: {
|
|
387
|
+
[name: string]: unknown;
|
|
388
|
+
};
|
|
389
|
+
content: {
|
|
390
|
+
"application/json": components["schemas"]["CommentGet"];
|
|
391
|
+
};
|
|
392
|
+
};
|
|
393
|
+
/** @description Validation Error */
|
|
394
|
+
422: {
|
|
395
|
+
headers: {
|
|
396
|
+
[name: string]: unknown;
|
|
397
|
+
};
|
|
398
|
+
content: {
|
|
399
|
+
"application/json": components["schemas"]["HTTPValidationError"];
|
|
400
|
+
};
|
|
401
|
+
};
|
|
402
|
+
};
|
|
403
|
+
};
|
|
404
|
+
get_comment_comment__uuid__get: {
|
|
405
|
+
parameters: {
|
|
406
|
+
query?: never;
|
|
407
|
+
header?: never;
|
|
408
|
+
path: {
|
|
409
|
+
uuid: string;
|
|
410
|
+
};
|
|
411
|
+
cookie?: never;
|
|
412
|
+
};
|
|
413
|
+
requestBody?: never;
|
|
414
|
+
responses: {
|
|
415
|
+
/** @description Successful Response */
|
|
416
|
+
200: {
|
|
417
|
+
headers: {
|
|
418
|
+
[name: string]: unknown;
|
|
419
|
+
};
|
|
420
|
+
content: {
|
|
421
|
+
"application/json": components["schemas"]["CommentGet"];
|
|
422
|
+
};
|
|
423
|
+
};
|
|
424
|
+
/** @description Validation Error */
|
|
425
|
+
422: {
|
|
426
|
+
headers: {
|
|
427
|
+
[name: string]: unknown;
|
|
428
|
+
};
|
|
429
|
+
content: {
|
|
430
|
+
"application/json": components["schemas"]["HTTPValidationError"];
|
|
431
|
+
};
|
|
432
|
+
};
|
|
433
|
+
};
|
|
434
|
+
};
|
|
435
|
+
delete_comment_comment__uuid__delete: {
|
|
436
|
+
parameters: {
|
|
437
|
+
query?: never;
|
|
438
|
+
header?: never;
|
|
439
|
+
path: {
|
|
440
|
+
uuid: string;
|
|
441
|
+
};
|
|
442
|
+
cookie?: never;
|
|
443
|
+
};
|
|
444
|
+
requestBody?: never;
|
|
445
|
+
responses: {
|
|
446
|
+
/** @description Successful Response */
|
|
447
|
+
200: {
|
|
448
|
+
headers: {
|
|
449
|
+
[name: string]: unknown;
|
|
450
|
+
};
|
|
451
|
+
content: {
|
|
452
|
+
"application/json": components["schemas"]["StatusResponseModel"];
|
|
453
|
+
};
|
|
454
|
+
};
|
|
455
|
+
/** @description Validation Error */
|
|
456
|
+
422: {
|
|
457
|
+
headers: {
|
|
458
|
+
[name: string]: unknown;
|
|
459
|
+
};
|
|
460
|
+
content: {
|
|
461
|
+
"application/json": components["schemas"]["HTTPValidationError"];
|
|
462
|
+
};
|
|
463
|
+
};
|
|
464
|
+
};
|
|
465
|
+
};
|
|
466
|
+
review_comment_comment__uuid__patch: {
|
|
467
|
+
parameters: {
|
|
468
|
+
query?: {
|
|
469
|
+
review_status?: "approved" | "dismissed";
|
|
470
|
+
};
|
|
471
|
+
header?: never;
|
|
472
|
+
path: {
|
|
473
|
+
uuid: string;
|
|
474
|
+
};
|
|
475
|
+
cookie?: never;
|
|
476
|
+
};
|
|
477
|
+
requestBody?: never;
|
|
478
|
+
responses: {
|
|
479
|
+
/** @description Successful Response */
|
|
480
|
+
200: {
|
|
481
|
+
headers: {
|
|
482
|
+
[name: string]: unknown;
|
|
483
|
+
};
|
|
484
|
+
content: {
|
|
485
|
+
"application/json": components["schemas"]["CommentGet"];
|
|
486
|
+
};
|
|
487
|
+
};
|
|
488
|
+
/** @description Validation Error */
|
|
489
|
+
422: {
|
|
490
|
+
headers: {
|
|
491
|
+
[name: string]: unknown;
|
|
492
|
+
};
|
|
493
|
+
content: {
|
|
494
|
+
"application/json": components["schemas"]["HTTPValidationError"];
|
|
495
|
+
};
|
|
496
|
+
};
|
|
497
|
+
};
|
|
498
|
+
};
|
|
499
|
+
get_lecturers_lecturer_get: {
|
|
500
|
+
parameters: {
|
|
501
|
+
query?: {
|
|
502
|
+
asc_order?: boolean;
|
|
503
|
+
info?: ("comments" | "mark")[];
|
|
504
|
+
limit?: number;
|
|
505
|
+
name?: string;
|
|
506
|
+
offset?: number;
|
|
507
|
+
order_by?: "mark_kindness" | "mark_freebie" | "mark_clarity" | "mark_general" | "last_name";
|
|
508
|
+
subject?: string;
|
|
509
|
+
};
|
|
510
|
+
header?: never;
|
|
511
|
+
path?: never;
|
|
512
|
+
cookie?: never;
|
|
513
|
+
};
|
|
514
|
+
requestBody?: never;
|
|
515
|
+
responses: {
|
|
516
|
+
/** @description Successful Response */
|
|
517
|
+
200: {
|
|
518
|
+
headers: {
|
|
519
|
+
[name: string]: unknown;
|
|
520
|
+
};
|
|
521
|
+
content: {
|
|
522
|
+
"application/json": components["schemas"]["LecturerGetAll"];
|
|
523
|
+
};
|
|
524
|
+
};
|
|
525
|
+
/** @description Validation Error */
|
|
526
|
+
422: {
|
|
527
|
+
headers: {
|
|
528
|
+
[name: string]: unknown;
|
|
529
|
+
};
|
|
530
|
+
content: {
|
|
531
|
+
"application/json": components["schemas"]["HTTPValidationError"];
|
|
532
|
+
};
|
|
533
|
+
};
|
|
534
|
+
};
|
|
535
|
+
};
|
|
536
|
+
create_lecturer_lecturer_post: {
|
|
537
|
+
parameters: {
|
|
538
|
+
query?: never;
|
|
539
|
+
header?: never;
|
|
540
|
+
path?: never;
|
|
541
|
+
cookie?: never;
|
|
542
|
+
};
|
|
543
|
+
requestBody: {
|
|
544
|
+
content: {
|
|
545
|
+
"application/json": components["schemas"]["LecturerPost"];
|
|
546
|
+
};
|
|
547
|
+
};
|
|
548
|
+
responses: {
|
|
549
|
+
/** @description Successful Response */
|
|
550
|
+
200: {
|
|
551
|
+
headers: {
|
|
552
|
+
[name: string]: unknown;
|
|
553
|
+
};
|
|
554
|
+
content: {
|
|
555
|
+
"application/json": components["schemas"]["LecturerGet"];
|
|
556
|
+
};
|
|
557
|
+
};
|
|
558
|
+
/** @description Validation Error */
|
|
559
|
+
422: {
|
|
560
|
+
headers: {
|
|
561
|
+
[name: string]: unknown;
|
|
562
|
+
};
|
|
563
|
+
content: {
|
|
564
|
+
"application/json": components["schemas"]["HTTPValidationError"];
|
|
565
|
+
};
|
|
566
|
+
};
|
|
567
|
+
};
|
|
568
|
+
};
|
|
569
|
+
get_lecturer_lecturer__id__get: {
|
|
570
|
+
parameters: {
|
|
571
|
+
query?: {
|
|
572
|
+
info?: ("comments" | "mark")[];
|
|
573
|
+
};
|
|
574
|
+
header?: never;
|
|
575
|
+
path: {
|
|
576
|
+
id: number;
|
|
577
|
+
};
|
|
578
|
+
cookie?: never;
|
|
579
|
+
};
|
|
580
|
+
requestBody?: never;
|
|
581
|
+
responses: {
|
|
582
|
+
/** @description Successful Response */
|
|
583
|
+
200: {
|
|
584
|
+
headers: {
|
|
585
|
+
[name: string]: unknown;
|
|
586
|
+
};
|
|
587
|
+
content: {
|
|
588
|
+
"application/json": components["schemas"]["LecturerGet"];
|
|
589
|
+
};
|
|
590
|
+
};
|
|
591
|
+
/** @description Validation Error */
|
|
592
|
+
422: {
|
|
593
|
+
headers: {
|
|
594
|
+
[name: string]: unknown;
|
|
595
|
+
};
|
|
596
|
+
content: {
|
|
597
|
+
"application/json": components["schemas"]["HTTPValidationError"];
|
|
598
|
+
};
|
|
599
|
+
};
|
|
600
|
+
};
|
|
601
|
+
};
|
|
602
|
+
delete_lecturer_lecturer__id__delete: {
|
|
603
|
+
parameters: {
|
|
604
|
+
query?: never;
|
|
605
|
+
header?: never;
|
|
606
|
+
path: {
|
|
607
|
+
id: number;
|
|
608
|
+
};
|
|
609
|
+
cookie?: never;
|
|
610
|
+
};
|
|
611
|
+
requestBody?: never;
|
|
612
|
+
responses: {
|
|
613
|
+
/** @description Successful Response */
|
|
614
|
+
200: {
|
|
615
|
+
headers: {
|
|
616
|
+
[name: string]: unknown;
|
|
617
|
+
};
|
|
618
|
+
content: {
|
|
619
|
+
"application/json": components["schemas"]["StatusResponseModel"];
|
|
620
|
+
};
|
|
621
|
+
};
|
|
622
|
+
/** @description Validation Error */
|
|
623
|
+
422: {
|
|
624
|
+
headers: {
|
|
625
|
+
[name: string]: unknown;
|
|
626
|
+
};
|
|
627
|
+
content: {
|
|
628
|
+
"application/json": components["schemas"]["HTTPValidationError"];
|
|
629
|
+
};
|
|
630
|
+
};
|
|
631
|
+
};
|
|
632
|
+
};
|
|
633
|
+
update_lecturer_lecturer__id__patch: {
|
|
634
|
+
parameters: {
|
|
635
|
+
query?: never;
|
|
636
|
+
header?: never;
|
|
637
|
+
path: {
|
|
638
|
+
id: number;
|
|
639
|
+
};
|
|
640
|
+
cookie?: never;
|
|
641
|
+
};
|
|
642
|
+
requestBody: {
|
|
643
|
+
content: {
|
|
644
|
+
"application/json": components["schemas"]["LecturerPatch"];
|
|
645
|
+
};
|
|
646
|
+
};
|
|
647
|
+
responses: {
|
|
648
|
+
/** @description Successful Response */
|
|
649
|
+
200: {
|
|
650
|
+
headers: {
|
|
651
|
+
[name: string]: unknown;
|
|
652
|
+
};
|
|
653
|
+
content: {
|
|
654
|
+
"application/json": components["schemas"]["LecturerGet"];
|
|
655
|
+
};
|
|
656
|
+
};
|
|
657
|
+
/** @description Validation Error */
|
|
658
|
+
422: {
|
|
659
|
+
headers: {
|
|
660
|
+
[name: string]: unknown;
|
|
661
|
+
};
|
|
662
|
+
content: {
|
|
663
|
+
"application/json": components["schemas"]["HTTPValidationError"];
|
|
664
|
+
};
|
|
665
|
+
};
|
|
666
|
+
};
|
|
667
|
+
};
|
|
668
|
+
}
|
package/redocly.yaml
DELETED
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
resolve:
|
|
2
|
-
http:
|
|
3
|
-
headers:
|
|
4
|
-
- matches: https://api.profcomff.com/**
|
|
5
|
-
name: Authorization
|
|
6
|
-
envVariable: SECRET_KEY
|
|
7
|
-
|
|
8
|
-
apis:
|
|
9
|
-
auth@latest:
|
|
10
|
-
root: https://api.profcomff.com/auth/openapi.json
|
|
11
|
-
x-openapi-ts:
|
|
12
|
-
output: ./src/openapi/auth.ts
|
|
13
|
-
marketing@latest:
|
|
14
|
-
root: https://api.profcomff.com/marketing/openapi.json
|
|
15
|
-
x-openapi-ts:
|
|
16
|
-
output: ./src/openapi/marketing.ts
|
|
17
|
-
timetable@latest:
|
|
18
|
-
root: https://api.profcomff.com/timetable/openapi.json
|
|
19
|
-
x-openapi-ts:
|
|
20
|
-
output: ./src/openapi/timetable.ts
|
|
21
|
-
services@latest:
|
|
22
|
-
root: https://api.profcomff.com/services/openapi.json
|
|
23
|
-
x-openapi-ts:
|
|
24
|
-
output: ./src/openapi/services.ts
|
|
25
|
-
print@latest:
|
|
26
|
-
root: https://api.profcomff.com/print/openapi.json
|
|
27
|
-
x-openapi-ts:
|
|
28
|
-
output: ./src/openapi/print.ts
|
|
29
|
-
social@latest:
|
|
30
|
-
root: https://api.profcomff.com/social/openapi.json
|
|
31
|
-
x-openapi-ts:
|
|
32
|
-
output: ./src/openapi/social.ts
|
|
33
|
-
userdata@latest:
|
|
34
|
-
root: https://api.profcomff.com/userdata/openapi.json
|
|
35
|
-
x-openapi-ts:
|
|
36
|
-
output: ./src/openapi/userdata.ts
|
|
37
|
-
achievement@latest:
|
|
38
|
-
root: https://api.profcomff.com/achievement/openapi.json
|
|
39
|
-
x-openapi-ts:
|
|
40
|
-
output: ./src/openapi/achievement.ts
|
|
41
|
-
pinger@latest:
|
|
42
|
-
root: https://pinger.profcomff.com/openapi.json
|
|
43
|
-
x-openapi-ts:
|
|
44
|
-
output: ./src/openapi/pinger.ts
|