gitverse-api-sdk 1.0.0 → 2.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.
- package/README.md +328 -114
- package/dist/api/actions.d.ts +506 -0
- package/dist/api/actions.js +4 -0
- package/dist/api/actions.js.map +10 -0
- package/dist/api/branches.d.ts +154 -0
- package/dist/api/branches.js +4 -0
- package/dist/api/branches.js.map +10 -0
- package/dist/api/collaborators.d.ts +224 -0
- package/dist/api/collaborators.js +4 -0
- package/dist/api/collaborators.js.map +10 -0
- package/dist/api/commits.d.ts +302 -0
- package/dist/api/commits.js +4 -0
- package/dist/api/commits.js.map +10 -0
- package/dist/api/contents.d.ts +345 -0
- package/dist/api/contents.js +4 -0
- package/dist/api/contents.js.map +10 -0
- package/dist/api/emails.d.ts +184 -0
- package/dist/api/emails.js +4 -0
- package/dist/api/emails.js.map +10 -0
- package/dist/api/forks.d.ts +325 -0
- package/dist/api/forks.js +4 -0
- package/dist/api/forks.js.map +10 -0
- package/dist/api/git.d.ts +228 -0
- package/dist/api/git.js +4 -0
- package/dist/api/git.js.map +10 -0
- package/dist/api/issues.d.ts +380 -0
- package/dist/api/issues.js +4 -0
- package/dist/api/issues.js.map +10 -0
- package/dist/api/organizations.d.ts +140 -0
- package/dist/api/organizations.js +4 -0
- package/dist/api/organizations.js.map +10 -0
- package/dist/api/pulls.d.ts +517 -0
- package/dist/api/pulls.js +4 -0
- package/dist/api/pulls.js.map +10 -0
- package/dist/api/releases.d.ts +400 -0
- package/dist/api/releases.js +4 -0
- package/dist/api/releases.js.map +10 -0
- package/dist/api/repositories.d.ts +502 -0
- package/dist/api/repositories.js +4 -0
- package/dist/api/repositories.js.map +10 -0
- package/dist/api/stars.d.ts +328 -0
- package/dist/api/stars.js +4 -0
- package/dist/api/stars.js.map +10 -0
- package/dist/api/teams.d.ts +287 -0
- package/dist/api/teams.js +4 -0
- package/dist/api/teams.js.map +10 -0
- package/dist/api/users.d.ts +244 -0
- package/dist/api/users.js +4 -0
- package/dist/api/users.js.map +10 -0
- package/dist/client.d.ts +122 -0
- package/dist/client.js +4 -0
- package/dist/client.js.map +10 -0
- package/dist/enums.d.ts +57 -0
- package/dist/enums.js +4 -0
- package/dist/enums.js.map +10 -0
- package/dist/errors.d.ts +78 -0
- package/dist/errors.js +4 -0
- package/dist/errors.js.map +10 -0
- package/dist/index.d.ts +1801 -453
- package/dist/index.js +3 -1
- package/dist/index.js.map +10 -0
- package/dist/types.d.ts +1256 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +9 -0
- package/dist/utils.d.ts +39 -0
- package/dist/utils.js +3 -0
- package/dist/utils.js.map +10 -0
- package/package.json +99 -7
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/api/pulls.ts"],
|
|
4
|
+
"sourcesContent": [
|
|
5
|
+
"import type { GitVerseClient } from \"../client\";\nimport type { PullRequestState } from \"../enums\";\nimport type { Commit, CreatePullRequestParams, PullRequest, PullRequestFile, UpdatePullRequestParams } from \"../types\";\n\n/**\n * API для работы с запросами на слияние (пулл-реквестами)\n */\nexport class PullsApi {\n private client: GitVerseClient;\n\n /**\n * Создает новый экземпляр API для работы с пулл-реквестами\n * @param client GitVerse клиент\n */\n constructor(client: GitVerseClient) {\n this.client = client;\n }\n\n /**\n * Создает новый запрос на слияние в репозитории\n * @param owner Владелец репозитория\n * @param repo Название репозитория\n * @param params Параметры создания запроса на слияние\n * @returns Информация о созданном запросе на слияние\n */\n create(owner: string, repo: string, params: CreatePullRequestParams): Promise<PullRequest> {\n return this.client.post<PullRequest>(`/repos/${owner}/${repo}/pulls`, params);\n }\n\n /**\n * Получает запрос на слияние по его номеру\n * @param owner Владелец репозитория\n * @param repo Название репозитория\n * @param number Номер запроса на слияние\n * @returns Информация о запросе на слияние\n */\n get(owner: string, repo: string, number: number): Promise<PullRequest> {\n return this.client.get<PullRequest>(`/repos/${owner}/${repo}/pulls/${number}`);\n }\n\n /**\n * Получает список запросов на слияние в репозитории\n * @param owner Владелец репозитория\n * @param repo Название репозитория\n * @param state Состояние запросов на слияние (открытые/закрытые/все)\n * @returns Список запросов на слияние\n */\n list(owner: string, repo: string, state?: PullRequestState): Promise<PullRequest[]> {\n const TEMP = \"http://localhost\";\n\n const path = new URL(`/repos/${owner}/${repo}/pulls`, TEMP);\n if (state) {\n path.searchParams.set(\"state\", state);\n }\n return this.client.get<PullRequest[]>(path.href.replace(TEMP, \"\"));\n }\n\n /**\n * Обновляет pull request\n * @param owner Владелец репозитория\n * @param repo Название репозитория\n * @param number Номер pull request\n * @param params Параметры для обновления\n * @returns Обновлённый pull request\n */\n update(owner: string, repo: string, number: number, params: UpdatePullRequestParams): Promise<PullRequest> {\n return this.client.patch<PullRequest>(`/repos/${owner}/${repo}/pulls/${number}`, params);\n }\n\n /**\n * Получает список файлов в pull request\n * @param owner Владелец репозитория\n * @param repo Название репозитория\n * @param number Номер pull request\n * @returns Список изменённых файлов\n */\n getFiles(owner: string, repo: string, number: number): Promise<PullRequestFile[]> {\n return this.client.get<PullRequestFile[]>(`/repos/${owner}/${repo}/pulls/${number}/files`);\n }\n\n /**\n * Обновляет ветку pull request с базовой веткой\n * @param owner Владелец репозитория\n * @param repo Название репозитория\n * @param number Номер pull request\n * @returns Результат операции\n */\n updateBranch(owner: string, repo: string, number: number): Promise<void> {\n return this.client.put<void>(`/repos/${owner}/${repo}/pulls/${number}/update-branch`, {});\n }\n\n /**\n * Получает список коммитов в pull request\n * @param owner Владелец репозитория\n * @param repo Название репозитория\n * @param number Номер pull request\n * @returns Список коммитов\n */\n getCommits(owner: string, repo: string, number: number): Promise<Commit[]> {\n return this.client.get<Commit[]>(`/repos/${owner}/${repo}/pulls/${number}/commits`);\n }\n}\n"
|
|
6
|
+
],
|
|
7
|
+
"mappings": "AAOO,MAAM,CAAS,CACZ,OAMR,WAAW,CAAC,EAAwB,CAClC,KAAK,OAAS,EAUhB,MAAM,CAAC,EAAe,EAAc,EAAuD,CACzF,OAAO,KAAK,OAAO,KAAkB,UAAU,KAAS,UAAc,CAAM,EAU9E,GAAG,CAAC,EAAe,EAAc,EAAsC,CACrE,OAAO,KAAK,OAAO,IAAiB,UAAU,KAAS,WAAc,GAAQ,EAU/E,IAAI,CAAC,EAAe,EAAc,EAAkD,CAGlF,IAAM,EAAO,IAAI,IAAI,UAAU,KAAS,UAF3B,kBAE6C,EAC1D,GAAI,EACF,EAAK,aAAa,IAAI,QAAS,CAAK,EAEtC,OAAO,KAAK,OAAO,IAAmB,EAAK,KAAK,QANnC,mBAMiD,EAAE,CAAC,EAWnE,MAAM,CAAC,EAAe,EAAc,EAAgB,EAAuD,CACzG,OAAO,KAAK,OAAO,MAAmB,UAAU,KAAS,WAAc,IAAU,CAAM,EAUzF,QAAQ,CAAC,EAAe,EAAc,EAA4C,CAChF,OAAO,KAAK,OAAO,IAAuB,UAAU,KAAS,WAAc,SAAc,EAU3F,YAAY,CAAC,EAAe,EAAc,EAA+B,CACvE,OAAO,KAAK,OAAO,IAAU,UAAU,KAAS,WAAc,kBAAwB,CAAC,CAAC,EAU1F,UAAU,CAAC,EAAe,EAAc,EAAmC,CACzE,OAAO,KAAK,OAAO,IAAc,UAAU,KAAS,WAAc,WAAgB,EAEtF",
|
|
8
|
+
"debugId": "35A0A924DAC8BD1664756E2164756E21",
|
|
9
|
+
"names": []
|
|
10
|
+
}
|
|
@@ -0,0 +1,400 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Типы пользователей в системе
|
|
3
|
+
*/
|
|
4
|
+
declare const UserType: {
|
|
5
|
+
readonly Organization: "Organization"
|
|
6
|
+
readonly User: "User"
|
|
7
|
+
};
|
|
8
|
+
/**
|
|
9
|
+
* Тип для типов пользователей
|
|
10
|
+
*/
|
|
11
|
+
type UserType = (typeof UserType)[keyof typeof UserType];
|
|
12
|
+
/**
|
|
13
|
+
* Типы видимости для репозиториев и пользователей
|
|
14
|
+
*/
|
|
15
|
+
declare const VisibilityType: {
|
|
16
|
+
readonly Limited: "limited"
|
|
17
|
+
readonly Private: "private"
|
|
18
|
+
readonly Public: "public"
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* Тип для типов видимости
|
|
22
|
+
*/
|
|
23
|
+
type VisibilityType = (typeof VisibilityType)[keyof typeof VisibilityType];
|
|
24
|
+
/**
|
|
25
|
+
* Интерфейс пользователя
|
|
26
|
+
*/
|
|
27
|
+
interface User2 {
|
|
28
|
+
/** Уникальный идентификатор пользователя */
|
|
29
|
+
id: number;
|
|
30
|
+
/** Имя пользователя */
|
|
31
|
+
name?: string;
|
|
32
|
+
/** Логин пользователя */
|
|
33
|
+
login: string;
|
|
34
|
+
/** Полное имя пользователя */
|
|
35
|
+
full_name?: string;
|
|
36
|
+
/** Тип аккаунта: пользователь или организация */
|
|
37
|
+
type: UserType;
|
|
38
|
+
/** Биография пользователя */
|
|
39
|
+
bio?: string;
|
|
40
|
+
/** Электронная почта пользователя */
|
|
41
|
+
email?: string;
|
|
42
|
+
/** URL аватара пользователя */
|
|
43
|
+
avatar_url: string;
|
|
44
|
+
/** Веб-ссылка на профиль пользователя */
|
|
45
|
+
html_url: string;
|
|
46
|
+
/** API-ссылка на профиль пользователя */
|
|
47
|
+
url?: string;
|
|
48
|
+
/** API-ссылка на список подписчиков пользователя */
|
|
49
|
+
followers_url?: string;
|
|
50
|
+
/** API-ссылка на репозитории пользователя */
|
|
51
|
+
repos_url?: string;
|
|
52
|
+
/** API-ссылка на организации пользователя */
|
|
53
|
+
organizations_url?: string;
|
|
54
|
+
/** Права администратора */
|
|
55
|
+
site_admin: boolean;
|
|
56
|
+
/** Местоположение пользователя */
|
|
57
|
+
location?: string;
|
|
58
|
+
/** Верификация аккаунта */
|
|
59
|
+
is_verified?: boolean;
|
|
60
|
+
/** Настройки приватности профиля */
|
|
61
|
+
visibility?: VisibilityType;
|
|
62
|
+
/** Персональный веб-сайт */
|
|
63
|
+
website?: string;
|
|
64
|
+
/** Количество подписчиков */
|
|
65
|
+
followers?: number;
|
|
66
|
+
/** Количество подписок */
|
|
67
|
+
following?: number;
|
|
68
|
+
/** Количество публичных репозиториев */
|
|
69
|
+
public_repos?: number;
|
|
70
|
+
/** Количество репозиториев, отмеченных звездой */
|
|
71
|
+
stars_count?: number;
|
|
72
|
+
/** Дата создания аккаунта */
|
|
73
|
+
created_at: string;
|
|
74
|
+
/** Дата последнего обновления аккаунта */
|
|
75
|
+
updated_at?: string;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Интерфейс релиза
|
|
79
|
+
*/
|
|
80
|
+
interface Release {
|
|
81
|
+
/** Идентификатор релиза */
|
|
82
|
+
id: number;
|
|
83
|
+
/** Тег релиза */
|
|
84
|
+
tag_name: string;
|
|
85
|
+
/** Целевой коммит */
|
|
86
|
+
target_commitish: string;
|
|
87
|
+
/** Название релиза */
|
|
88
|
+
name: string;
|
|
89
|
+
/** Описание релиза */
|
|
90
|
+
body?: string;
|
|
91
|
+
/** Черновик ли релиз */
|
|
92
|
+
draft: boolean;
|
|
93
|
+
/** Пре-релиз ли */
|
|
94
|
+
prerelease: boolean;
|
|
95
|
+
/** Автор релиза */
|
|
96
|
+
author: User2;
|
|
97
|
+
/** Дата создания */
|
|
98
|
+
created_at: string;
|
|
99
|
+
/** Дата публикации */
|
|
100
|
+
published_at?: string;
|
|
101
|
+
/** Веб-ссылка */
|
|
102
|
+
html_url: string;
|
|
103
|
+
/** API-ссылка */
|
|
104
|
+
url: string;
|
|
105
|
+
/** Ссылка на архив tar.gz */
|
|
106
|
+
tarball_url: string;
|
|
107
|
+
/** Ссылка на архив zip */
|
|
108
|
+
zipball_url: string;
|
|
109
|
+
/** Список ассетов */
|
|
110
|
+
assets: Asset[];
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Параметры для создания релиза
|
|
114
|
+
*/
|
|
115
|
+
interface CreateReleaseParams {
|
|
116
|
+
/** Тег релиза */
|
|
117
|
+
tag_name: string;
|
|
118
|
+
/** Целевой коммит (по умолчанию основная ветка) */
|
|
119
|
+
target_commitish?: string;
|
|
120
|
+
/** Название релиза */
|
|
121
|
+
name?: string;
|
|
122
|
+
/** Описание релиза */
|
|
123
|
+
body?: string;
|
|
124
|
+
/** Черновик ли релиз */
|
|
125
|
+
draft?: boolean;
|
|
126
|
+
/** Пре-релиз ли */
|
|
127
|
+
prerelease?: boolean;
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Параметры для обновления релиза
|
|
131
|
+
*/
|
|
132
|
+
interface UpdateReleaseParams {
|
|
133
|
+
/** Тег релиза */
|
|
134
|
+
tag_name?: string;
|
|
135
|
+
/** Целевой коммит */
|
|
136
|
+
target_commitish?: string;
|
|
137
|
+
/** Название релиза */
|
|
138
|
+
name?: string;
|
|
139
|
+
/** Описание релиза */
|
|
140
|
+
body?: string;
|
|
141
|
+
/** Черновик ли релиз */
|
|
142
|
+
draft?: boolean;
|
|
143
|
+
/** Пре-релиз ли */
|
|
144
|
+
prerelease?: boolean;
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Интерфейс ассета релиза
|
|
148
|
+
*/
|
|
149
|
+
interface Asset {
|
|
150
|
+
/** Идентификатор ассета */
|
|
151
|
+
id: number;
|
|
152
|
+
/** Название файла */
|
|
153
|
+
name: string;
|
|
154
|
+
/** Метка ассета */
|
|
155
|
+
label?: string;
|
|
156
|
+
/** Content-Type */
|
|
157
|
+
content_type: string;
|
|
158
|
+
/** Состояние ассета */
|
|
159
|
+
state: "uploaded" | "open";
|
|
160
|
+
/** Размер в байтах */
|
|
161
|
+
size: number;
|
|
162
|
+
/** Количество скачиваний */
|
|
163
|
+
download_count: number;
|
|
164
|
+
/** Дата создания */
|
|
165
|
+
created_at: string;
|
|
166
|
+
/** Дата обновления */
|
|
167
|
+
updated_at: string;
|
|
168
|
+
/** Загрузивший пользователь */
|
|
169
|
+
uploader: User2;
|
|
170
|
+
/** URL для скачивания */
|
|
171
|
+
browser_download_url: string;
|
|
172
|
+
/** API-ссылка */
|
|
173
|
+
url: string;
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Параметры для загрузки ассета
|
|
177
|
+
*/
|
|
178
|
+
interface UploadAssetParams {
|
|
179
|
+
/** Название файла */
|
|
180
|
+
name: string;
|
|
181
|
+
/** Метка ассета */
|
|
182
|
+
label?: string;
|
|
183
|
+
/** Содержимое файла */
|
|
184
|
+
data: ArrayBuffer | Blob;
|
|
185
|
+
}
|
|
186
|
+
/**
|
|
187
|
+
* Предупреждение об устаревшей версии API
|
|
188
|
+
*/
|
|
189
|
+
declare class ApiVersionWarning {
|
|
190
|
+
/** Текущая используемая версия */
|
|
191
|
+
readonly currentVersion: string;
|
|
192
|
+
/** Последняя доступная версия */
|
|
193
|
+
readonly latestVersion: string;
|
|
194
|
+
/** Дата вывода из эксплуатации */
|
|
195
|
+
readonly decommissioning?: string;
|
|
196
|
+
constructor(currentVersion: string, latestVersion: string, decommissioning?: string);
|
|
197
|
+
/**
|
|
198
|
+
* Возвращает сообщение о предупреждении
|
|
199
|
+
*/
|
|
200
|
+
getMessage(): string;
|
|
201
|
+
}
|
|
202
|
+
declare const HTTPMethods: {
|
|
203
|
+
readonly DELETE: "DELETE"
|
|
204
|
+
readonly GET: "GET"
|
|
205
|
+
readonly PATCH: "PATCH"
|
|
206
|
+
readonly POST: "POST"
|
|
207
|
+
readonly PUT: "PUT"
|
|
208
|
+
};
|
|
209
|
+
type HTTPMethods = (typeof HTTPMethods)[keyof typeof HTTPMethods];
|
|
210
|
+
/**
|
|
211
|
+
* Параметры для конфигурации GitVerse клиента
|
|
212
|
+
*/
|
|
213
|
+
interface GitVerseClientConfig {
|
|
214
|
+
/**
|
|
215
|
+
* Базовый URL API GitVerse
|
|
216
|
+
* @default 'https://api.gitverse.ru'
|
|
217
|
+
*/
|
|
218
|
+
baseUrl?: string;
|
|
219
|
+
/**
|
|
220
|
+
* Токен доступа для авторизации в API
|
|
221
|
+
*/
|
|
222
|
+
token?: string;
|
|
223
|
+
/**
|
|
224
|
+
* Версия API
|
|
225
|
+
* @default '1'
|
|
226
|
+
*/
|
|
227
|
+
apiVersion?: string;
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* Основной класс для работы с GitVerse API
|
|
231
|
+
*/
|
|
232
|
+
declare class GitVerseClient {
|
|
233
|
+
private baseUrl;
|
|
234
|
+
private token?;
|
|
235
|
+
private apiVersion;
|
|
236
|
+
/**
|
|
237
|
+
* Callback для обработки предупреждений об устаревшей версии API
|
|
238
|
+
*/
|
|
239
|
+
onApiVersionWarning?: (warning: ApiVersionWarning) => void;
|
|
240
|
+
/**
|
|
241
|
+
* Создает новый экземпляр GitVerse клиента
|
|
242
|
+
* @param config Конфигурация клиента
|
|
243
|
+
*/
|
|
244
|
+
constructor(config?: GitVerseClientConfig);
|
|
245
|
+
/**
|
|
246
|
+
* Устанавливает токен авторизации
|
|
247
|
+
* @param token Токен доступа
|
|
248
|
+
*/
|
|
249
|
+
setToken(token: string): void;
|
|
250
|
+
/**
|
|
251
|
+
* Извлекает информацию о Rate Limit из заголовков ответа
|
|
252
|
+
*/
|
|
253
|
+
private extractRateLimitInfo;
|
|
254
|
+
/**
|
|
255
|
+
* Извлекает информацию о версии API из заголовков ответа
|
|
256
|
+
*/
|
|
257
|
+
private extractApiVersionInfo;
|
|
258
|
+
/**
|
|
259
|
+
* Извлекает метаданные из заголовков ответа
|
|
260
|
+
*/
|
|
261
|
+
private extractMetadata;
|
|
262
|
+
/**
|
|
263
|
+
* Выполняет API-запрос с учетом авторизации и версии API
|
|
264
|
+
* @param path Путь к API-ресурсу
|
|
265
|
+
* @param method HTTP-метод
|
|
266
|
+
* @param body Тело запроса (опционально)
|
|
267
|
+
* @returns Ответ от API
|
|
268
|
+
* @throws {RateLimitError} При превышении лимита запросов (429)
|
|
269
|
+
* @throws {GitVerseApiError} При других ошибках API
|
|
270
|
+
*/
|
|
271
|
+
request<T>(path: string, method: HTTPMethods, body?: unknown): Promise<T>;
|
|
272
|
+
/**
|
|
273
|
+
* Выполняет GET-запрос
|
|
274
|
+
* @param path Путь к API-ресурсу
|
|
275
|
+
* @returns Ответ от API
|
|
276
|
+
*/
|
|
277
|
+
get<T>(path: string): Promise<T>;
|
|
278
|
+
/**
|
|
279
|
+
* Выполняет POST-запрос
|
|
280
|
+
* @param path Путь к API-ресурсу
|
|
281
|
+
* @param body Тело запроса
|
|
282
|
+
* @returns Ответ от API
|
|
283
|
+
*/
|
|
284
|
+
post<T>(path: string, body?: unknown): Promise<T>;
|
|
285
|
+
/**
|
|
286
|
+
* Выполняет PUT-запрос
|
|
287
|
+
* @param path Путь к API-ресурсу
|
|
288
|
+
* @param body Тело запроса
|
|
289
|
+
* @returns Ответ от API
|
|
290
|
+
*/
|
|
291
|
+
put<T>(path: string, body?: unknown): Promise<T>;
|
|
292
|
+
/**
|
|
293
|
+
* Выполняет DELETE-запрос
|
|
294
|
+
* @param path Путь к API-ресурсу
|
|
295
|
+
* @param body Тело запроса (опционально)
|
|
296
|
+
* @returns Ответ от API
|
|
297
|
+
*/
|
|
298
|
+
delete<T>(path: string, body?: unknown): Promise<T>;
|
|
299
|
+
/**
|
|
300
|
+
* Выполняет PATCH-запрос
|
|
301
|
+
* @param path Путь к API-ресурсу
|
|
302
|
+
* @param body Тело запроса
|
|
303
|
+
* @returns Ответ от API
|
|
304
|
+
*/
|
|
305
|
+
patch<T>(path: string, body?: unknown): Promise<T>;
|
|
306
|
+
}
|
|
307
|
+
/**
|
|
308
|
+
* API для работы с релизами репозитория
|
|
309
|
+
*/
|
|
310
|
+
declare class ReleasesApi {
|
|
311
|
+
private client;
|
|
312
|
+
/**
|
|
313
|
+
* Создает новый экземпляр API для работы с релизами
|
|
314
|
+
* @param client GitVerse клиент
|
|
315
|
+
*/
|
|
316
|
+
constructor(client: GitVerseClient);
|
|
317
|
+
/**
|
|
318
|
+
* Получает список релизов репозитория
|
|
319
|
+
* @param owner Владелец репозитория
|
|
320
|
+
* @param repo Название репозитория
|
|
321
|
+
* @returns Список релизов
|
|
322
|
+
*/
|
|
323
|
+
list(owner: string, repo: string): Promise<Release[]>;
|
|
324
|
+
/**
|
|
325
|
+
* Создает новый релиз
|
|
326
|
+
* @param owner Владелец репозитория
|
|
327
|
+
* @param repo Название репозитория
|
|
328
|
+
* @param params Параметры создания релиза
|
|
329
|
+
* @returns Созданный релиз
|
|
330
|
+
*/
|
|
331
|
+
create(owner: string, repo: string, params: CreateReleaseParams): Promise<Release>;
|
|
332
|
+
/**
|
|
333
|
+
* Получает релиз по тегу
|
|
334
|
+
* @param owner Владелец репозитория
|
|
335
|
+
* @param repo Название репозитория
|
|
336
|
+
* @param tag Тег релиза
|
|
337
|
+
* @returns Информация о релизе
|
|
338
|
+
*/
|
|
339
|
+
getByTag(owner: string, repo: string, tag: string): Promise<Release>;
|
|
340
|
+
/**
|
|
341
|
+
* Удаляет релиз по тегу
|
|
342
|
+
* @param owner Владелец репозитория
|
|
343
|
+
* @param repo Название репозитория
|
|
344
|
+
* @param tag Тег релиза
|
|
345
|
+
* @returns Результат операции
|
|
346
|
+
*/
|
|
347
|
+
deleteByTag(owner: string, repo: string, tag: string): Promise<void>;
|
|
348
|
+
/**
|
|
349
|
+
* Получает релиз по ID
|
|
350
|
+
* @param owner Владелец репозитория
|
|
351
|
+
* @param repo Название репозитория
|
|
352
|
+
* @param releaseId ID релиза
|
|
353
|
+
* @returns Информация о релизе
|
|
354
|
+
*/
|
|
355
|
+
get(owner: string, repo: string, releaseId: number): Promise<Release>;
|
|
356
|
+
/**
|
|
357
|
+
* Удаляет релиз по ID
|
|
358
|
+
* @param owner Владелец репозитория
|
|
359
|
+
* @param repo Название репозитория
|
|
360
|
+
* @param releaseId ID релиза
|
|
361
|
+
* @returns Результат операции
|
|
362
|
+
*/
|
|
363
|
+
delete(owner: string, repo: string, releaseId: number): Promise<void>;
|
|
364
|
+
/**
|
|
365
|
+
* Обновляет релиз
|
|
366
|
+
* @param owner Владелец репозитория
|
|
367
|
+
* @param repo Название репозитория
|
|
368
|
+
* @param releaseId ID релиза
|
|
369
|
+
* @param params Параметры обновления релиза
|
|
370
|
+
* @returns Обновлённый релиз
|
|
371
|
+
*/
|
|
372
|
+
update(owner: string, repo: string, releaseId: number, params: UpdateReleaseParams): Promise<Release>;
|
|
373
|
+
/**
|
|
374
|
+
* Получает список ассетов релиза
|
|
375
|
+
* @param owner Владелец репозитория
|
|
376
|
+
* @param repo Название репозитория
|
|
377
|
+
* @param releaseId ID релиза
|
|
378
|
+
* @returns Список ассетов
|
|
379
|
+
*/
|
|
380
|
+
getAssets(owner: string, repo: string, releaseId: number): Promise<Asset[]>;
|
|
381
|
+
/**
|
|
382
|
+
* Загружает ассет к релизу
|
|
383
|
+
* @param owner Владелец репозитория
|
|
384
|
+
* @param repo Название репозитория
|
|
385
|
+
* @param releaseId ID релиза
|
|
386
|
+
* @param params Параметры загрузки ассета
|
|
387
|
+
* @returns Загруженный ассет
|
|
388
|
+
*/
|
|
389
|
+
uploadAsset(owner: string, repo: string, releaseId: number, params: UploadAssetParams): Promise<Asset>;
|
|
390
|
+
/**
|
|
391
|
+
* Удаляет ассет релиза
|
|
392
|
+
* @param owner Владелец репозитория
|
|
393
|
+
* @param repo Название репозитория
|
|
394
|
+
* @param releaseId ID релиза
|
|
395
|
+
* @param assetId ID ассета
|
|
396
|
+
* @returns Результат операции
|
|
397
|
+
*/
|
|
398
|
+
deleteAsset(owner: string, repo: string, releaseId: number, assetId: number): Promise<void>;
|
|
399
|
+
}
|
|
400
|
+
export { ReleasesApi };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
class k{client;constructor(b){this.client=b}list(b,f){return this.client.get(`/repos/${b}/${f}/releases`)}create(b,f,h){return this.client.post(`/repos/${b}/${f}/releases`,h)}getByTag(b,f,h){return this.client.get(`/repos/${b}/${f}/releases/tags/${h}`)}deleteByTag(b,f,h){return this.client.delete(`/repos/${b}/${f}/releases/tags/${h}`)}get(b,f,h){return this.client.get(`/repos/${b}/${f}/releases/${h}`)}delete(b,f,h){return this.client.delete(`/repos/${b}/${f}/releases/${h}`)}update(b,f,h,j){return this.client.patch(`/repos/${b}/${f}/releases/${h}`,j)}getAssets(b,f,h){return this.client.get(`/repos/${b}/${f}/releases/${h}/assets`)}uploadAsset(b,f,h,j){return this.client.post(`/repos/${b}/${f}/releases/${h}/assets`,j)}deleteAsset(b,f,h,j){return this.client.delete(`/repos/${b}/${f}/releases/${h}/assets/${j}`)}}export{k as ReleasesApi};
|
|
2
|
+
export{k as l};
|
|
3
|
+
|
|
4
|
+
//# debugId=7CD31A4CC1DE9F7664756E2164756E21
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/api/releases.ts"],
|
|
4
|
+
"sourcesContent": [
|
|
5
|
+
"import type { GitVerseClient } from \"../client\";\nimport type { Asset, CreateReleaseParams, Release, UpdateReleaseParams, UploadAssetParams } from \"../types\";\n\n/**\n * API для работы с релизами репозитория\n */\nexport class ReleasesApi {\n private client: GitVerseClient;\n\n /**\n * Создает новый экземпляр API для работы с релизами\n * @param client GitVerse клиент\n */\n constructor(client: GitVerseClient) {\n this.client = client;\n }\n\n /**\n * Получает список релизов репозитория\n * @param owner Владелец репозитория\n * @param repo Название репозитория\n * @returns Список релизов\n */\n list(owner: string, repo: string): Promise<Release[]> {\n return this.client.get<Release[]>(`/repos/${owner}/${repo}/releases`);\n }\n\n /**\n * Создает новый релиз\n * @param owner Владелец репозитория\n * @param repo Название репозитория\n * @param params Параметры создания релиза\n * @returns Созданный релиз\n */\n create(owner: string, repo: string, params: CreateReleaseParams): Promise<Release> {\n return this.client.post<Release>(`/repos/${owner}/${repo}/releases`, params);\n }\n\n /**\n * Получает релиз по тегу\n * @param owner Владелец репозитория\n * @param repo Название репозитория\n * @param tag Тег релиза\n * @returns Информация о релизе\n */\n getByTag(owner: string, repo: string, tag: string): Promise<Release> {\n return this.client.get<Release>(`/repos/${owner}/${repo}/releases/tags/${tag}`);\n }\n\n /**\n * Удаляет релиз по тегу\n * @param owner Владелец репозитория\n * @param repo Название репозитория\n * @param tag Тег релиза\n * @returns Результат операции\n */\n deleteByTag(owner: string, repo: string, tag: string): Promise<void> {\n return this.client.delete<void>(`/repos/${owner}/${repo}/releases/tags/${tag}`);\n }\n\n /**\n * Получает релиз по ID\n * @param owner Владелец репозитория\n * @param repo Название репозитория\n * @param releaseId ID релиза\n * @returns Информация о релизе\n */\n get(owner: string, repo: string, releaseId: number): Promise<Release> {\n return this.client.get<Release>(`/repos/${owner}/${repo}/releases/${releaseId}`);\n }\n\n /**\n * Удаляет релиз по ID\n * @param owner Владелец репозитория\n * @param repo Название репозитория\n * @param releaseId ID релиза\n * @returns Результат операции\n */\n delete(owner: string, repo: string, releaseId: number): Promise<void> {\n return this.client.delete<void>(`/repos/${owner}/${repo}/releases/${releaseId}`);\n }\n\n /**\n * Обновляет релиз\n * @param owner Владелец репозитория\n * @param repo Название репозитория\n * @param releaseId ID релиза\n * @param params Параметры обновления релиза\n * @returns Обновлённый релиз\n */\n update(owner: string, repo: string, releaseId: number, params: UpdateReleaseParams): Promise<Release> {\n return this.client.patch<Release>(`/repos/${owner}/${repo}/releases/${releaseId}`, params);\n }\n\n /**\n * Получает список ассетов релиза\n * @param owner Владелец репозитория\n * @param repo Название репозитория\n * @param releaseId ID релиза\n * @returns Список ассетов\n */\n getAssets(owner: string, repo: string, releaseId: number): Promise<Asset[]> {\n return this.client.get<Asset[]>(`/repos/${owner}/${repo}/releases/${releaseId}/assets`);\n }\n\n /**\n * Загружает ассет к релизу\n * @param owner Владелец репозитория\n * @param repo Название репозитория\n * @param releaseId ID релиза\n * @param params Параметры загрузки ассета\n * @returns Загруженный ассет\n */\n uploadAsset(owner: string, repo: string, releaseId: number, params: UploadAssetParams): Promise<Asset> {\n return this.client.post<Asset>(`/repos/${owner}/${repo}/releases/${releaseId}/assets`, params);\n }\n\n /**\n * Удаляет ассет релиза\n * @param owner Владелец репозитория\n * @param repo Название репозитория\n * @param releaseId ID релиза\n * @param assetId ID ассета\n * @returns Результат операции\n */\n deleteAsset(owner: string, repo: string, releaseId: number, assetId: number): Promise<void> {\n return this.client.delete<void>(`/repos/${owner}/${repo}/releases/${releaseId}/assets/${assetId}`);\n }\n}\n"
|
|
6
|
+
],
|
|
7
|
+
"mappings": "AAMO,MAAM,CAAY,CACf,OAMR,WAAW,CAAC,EAAwB,CAClC,KAAK,OAAS,EAShB,IAAI,CAAC,EAAe,EAAkC,CACpD,OAAO,KAAK,OAAO,IAAe,UAAU,KAAS,YAAe,EAUtE,MAAM,CAAC,EAAe,EAAc,EAA+C,CACjF,OAAO,KAAK,OAAO,KAAc,UAAU,KAAS,aAAiB,CAAM,EAU7E,QAAQ,CAAC,EAAe,EAAc,EAA+B,CACnE,OAAO,KAAK,OAAO,IAAa,UAAU,KAAS,mBAAsB,GAAK,EAUhF,WAAW,CAAC,EAAe,EAAc,EAA4B,CACnE,OAAO,KAAK,OAAO,OAAa,UAAU,KAAS,mBAAsB,GAAK,EAUhF,GAAG,CAAC,EAAe,EAAc,EAAqC,CACpE,OAAO,KAAK,OAAO,IAAa,UAAU,KAAS,cAAiB,GAAW,EAUjF,MAAM,CAAC,EAAe,EAAc,EAAkC,CACpE,OAAO,KAAK,OAAO,OAAa,UAAU,KAAS,cAAiB,GAAW,EAWjF,MAAM,CAAC,EAAe,EAAc,EAAmB,EAA+C,CACpG,OAAO,KAAK,OAAO,MAAe,UAAU,KAAS,cAAiB,IAAa,CAAM,EAU3F,SAAS,CAAC,EAAe,EAAc,EAAqC,CAC1E,OAAO,KAAK,OAAO,IAAa,UAAU,KAAS,cAAiB,UAAkB,EAWxF,WAAW,CAAC,EAAe,EAAc,EAAmB,EAA2C,CACrG,OAAO,KAAK,OAAO,KAAY,UAAU,KAAS,cAAiB,WAAoB,CAAM,EAW/F,WAAW,CAAC,EAAe,EAAc,EAAmB,EAAgC,CAC1F,OAAO,KAAK,OAAO,OAAa,UAAU,KAAS,cAAiB,YAAoB,GAAS,EAErG",
|
|
8
|
+
"debugId": "7CD31A4CC1DE9F7664756E2164756E21",
|
|
9
|
+
"names": []
|
|
10
|
+
}
|