gitverse-api-sdk 1.1.1 → 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 +318 -125
- 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 +121 -80
- package/dist/api/contents.js +3 -3
- package/dist/api/contents.js.map +3 -3
- package/dist/api/emails.d.ts +80 -39
- package/dist/api/emails.js +2 -2
- package/dist/api/emails.js.map +1 -1
- package/dist/api/forks.d.ts +121 -87
- package/dist/api/forks.js +3 -3
- package/dist/api/forks.js.map +3 -3
- 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 +223 -82
- package/dist/api/issues.js +3 -3
- package/dist/api/issues.js.map +3 -3
- 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 +241 -80
- package/dist/api/pulls.js +3 -3
- package/dist/api/pulls.js.map +3 -3
- 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 +266 -80
- package/dist/api/repositories.js +3 -3
- package/dist/api/repositories.js.map +3 -3
- package/dist/api/stars.d.ts +220 -1
- package/dist/api/stars.js +3 -3
- package/dist/api/stars.js.map +3 -3
- 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 +121 -80
- package/dist/api/users.js +2 -2
- package/dist/api/users.js.map +1 -1
- package/dist/client.d.ts +42 -1
- package/dist/client.js +3 -3
- package/dist/client.js.map +3 -3
- package/dist/enums.js +2 -1
- package/dist/enums.js.map +1 -1
- 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 +1535 -221
- package/dist/index.js +2 -2
- package/dist/index.js.map +3 -3
- package/dist/types.d.ts +588 -1
- package/dist/utils.js.map +1 -1
- package/package.json +51 -7
|
@@ -0,0 +1,302 @@
|
|
|
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 Commit {
|
|
81
|
+
/** SHA-хеш коммита */
|
|
82
|
+
sha: string;
|
|
83
|
+
/** Node ID коммита */
|
|
84
|
+
node_id?: string;
|
|
85
|
+
/** Информация о коммите */
|
|
86
|
+
commit: {
|
|
87
|
+
/** Автор коммита */
|
|
88
|
+
author: {
|
|
89
|
+
name: string
|
|
90
|
+
email: string
|
|
91
|
+
date: string
|
|
92
|
+
}
|
|
93
|
+
/** Коммиттер */
|
|
94
|
+
committer: {
|
|
95
|
+
name: string
|
|
96
|
+
email: string
|
|
97
|
+
date: string
|
|
98
|
+
}
|
|
99
|
+
/** Сообщение коммита */
|
|
100
|
+
message: string
|
|
101
|
+
/** Дерево коммита */
|
|
102
|
+
tree: {
|
|
103
|
+
sha: string
|
|
104
|
+
url: string
|
|
105
|
+
}
|
|
106
|
+
};
|
|
107
|
+
/** Автор (пользователь GitVerse) */
|
|
108
|
+
author?: User2 | null;
|
|
109
|
+
/** Коммиттер (пользователь GitVerse) */
|
|
110
|
+
committer?: User2 | null;
|
|
111
|
+
/** Родительские коммиты */
|
|
112
|
+
parents: Array<{
|
|
113
|
+
sha: string
|
|
114
|
+
url: string
|
|
115
|
+
html_url: string
|
|
116
|
+
}>;
|
|
117
|
+
/** API-ссылка на коммит */
|
|
118
|
+
url: string;
|
|
119
|
+
/** Веб-ссылка на коммит */
|
|
120
|
+
html_url: string;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Параметры для создания коммита
|
|
124
|
+
*/
|
|
125
|
+
interface CreateCommitParams {
|
|
126
|
+
/** Сообщение коммита */
|
|
127
|
+
message: string;
|
|
128
|
+
/** SHA-хеш дерева */
|
|
129
|
+
tree: string;
|
|
130
|
+
/** SHA-хеши родительских коммитов */
|
|
131
|
+
parents?: string[];
|
|
132
|
+
/** Информация об авторе */
|
|
133
|
+
author?: {
|
|
134
|
+
name: string
|
|
135
|
+
email: string
|
|
136
|
+
date?: string
|
|
137
|
+
};
|
|
138
|
+
/** Информация о коммиттере */
|
|
139
|
+
committer?: {
|
|
140
|
+
name: string
|
|
141
|
+
email: string
|
|
142
|
+
date?: string
|
|
143
|
+
};
|
|
144
|
+
/** GPG подпись */
|
|
145
|
+
signature?: string;
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Предупреждение об устаревшей версии API
|
|
149
|
+
*/
|
|
150
|
+
declare class ApiVersionWarning {
|
|
151
|
+
/** Текущая используемая версия */
|
|
152
|
+
readonly currentVersion: string;
|
|
153
|
+
/** Последняя доступная версия */
|
|
154
|
+
readonly latestVersion: string;
|
|
155
|
+
/** Дата вывода из эксплуатации */
|
|
156
|
+
readonly decommissioning?: string;
|
|
157
|
+
constructor(currentVersion: string, latestVersion: string, decommissioning?: string);
|
|
158
|
+
/**
|
|
159
|
+
* Возвращает сообщение о предупреждении
|
|
160
|
+
*/
|
|
161
|
+
getMessage(): string;
|
|
162
|
+
}
|
|
163
|
+
declare const HTTPMethods: {
|
|
164
|
+
readonly DELETE: "DELETE"
|
|
165
|
+
readonly GET: "GET"
|
|
166
|
+
readonly PATCH: "PATCH"
|
|
167
|
+
readonly POST: "POST"
|
|
168
|
+
readonly PUT: "PUT"
|
|
169
|
+
};
|
|
170
|
+
type HTTPMethods = (typeof HTTPMethods)[keyof typeof HTTPMethods];
|
|
171
|
+
/**
|
|
172
|
+
* Параметры для конфигурации GitVerse клиента
|
|
173
|
+
*/
|
|
174
|
+
interface GitVerseClientConfig {
|
|
175
|
+
/**
|
|
176
|
+
* Базовый URL API GitVerse
|
|
177
|
+
* @default 'https://api.gitverse.ru'
|
|
178
|
+
*/
|
|
179
|
+
baseUrl?: string;
|
|
180
|
+
/**
|
|
181
|
+
* Токен доступа для авторизации в API
|
|
182
|
+
*/
|
|
183
|
+
token?: string;
|
|
184
|
+
/**
|
|
185
|
+
* Версия API
|
|
186
|
+
* @default '1'
|
|
187
|
+
*/
|
|
188
|
+
apiVersion?: string;
|
|
189
|
+
}
|
|
190
|
+
/**
|
|
191
|
+
* Основной класс для работы с GitVerse API
|
|
192
|
+
*/
|
|
193
|
+
declare class GitVerseClient {
|
|
194
|
+
private baseUrl;
|
|
195
|
+
private token?;
|
|
196
|
+
private apiVersion;
|
|
197
|
+
/**
|
|
198
|
+
* Callback для обработки предупреждений об устаревшей версии API
|
|
199
|
+
*/
|
|
200
|
+
onApiVersionWarning?: (warning: ApiVersionWarning) => void;
|
|
201
|
+
/**
|
|
202
|
+
* Создает новый экземпляр GitVerse клиента
|
|
203
|
+
* @param config Конфигурация клиента
|
|
204
|
+
*/
|
|
205
|
+
constructor(config?: GitVerseClientConfig);
|
|
206
|
+
/**
|
|
207
|
+
* Устанавливает токен авторизации
|
|
208
|
+
* @param token Токен доступа
|
|
209
|
+
*/
|
|
210
|
+
setToken(token: string): void;
|
|
211
|
+
/**
|
|
212
|
+
* Извлекает информацию о Rate Limit из заголовков ответа
|
|
213
|
+
*/
|
|
214
|
+
private extractRateLimitInfo;
|
|
215
|
+
/**
|
|
216
|
+
* Извлекает информацию о версии API из заголовков ответа
|
|
217
|
+
*/
|
|
218
|
+
private extractApiVersionInfo;
|
|
219
|
+
/**
|
|
220
|
+
* Извлекает метаданные из заголовков ответа
|
|
221
|
+
*/
|
|
222
|
+
private extractMetadata;
|
|
223
|
+
/**
|
|
224
|
+
* Выполняет API-запрос с учетом авторизации и версии API
|
|
225
|
+
* @param path Путь к API-ресурсу
|
|
226
|
+
* @param method HTTP-метод
|
|
227
|
+
* @param body Тело запроса (опционально)
|
|
228
|
+
* @returns Ответ от API
|
|
229
|
+
* @throws {RateLimitError} При превышении лимита запросов (429)
|
|
230
|
+
* @throws {GitVerseApiError} При других ошибках API
|
|
231
|
+
*/
|
|
232
|
+
request<T>(path: string, method: HTTPMethods, body?: unknown): Promise<T>;
|
|
233
|
+
/**
|
|
234
|
+
* Выполняет GET-запрос
|
|
235
|
+
* @param path Путь к API-ресурсу
|
|
236
|
+
* @returns Ответ от API
|
|
237
|
+
*/
|
|
238
|
+
get<T>(path: string): Promise<T>;
|
|
239
|
+
/**
|
|
240
|
+
* Выполняет POST-запрос
|
|
241
|
+
* @param path Путь к API-ресурсу
|
|
242
|
+
* @param body Тело запроса
|
|
243
|
+
* @returns Ответ от API
|
|
244
|
+
*/
|
|
245
|
+
post<T>(path: string, body?: unknown): Promise<T>;
|
|
246
|
+
/**
|
|
247
|
+
* Выполняет PUT-запрос
|
|
248
|
+
* @param path Путь к API-ресурсу
|
|
249
|
+
* @param body Тело запроса
|
|
250
|
+
* @returns Ответ от API
|
|
251
|
+
*/
|
|
252
|
+
put<T>(path: string, body?: unknown): Promise<T>;
|
|
253
|
+
/**
|
|
254
|
+
* Выполняет DELETE-запрос
|
|
255
|
+
* @param path Путь к API-ресурсу
|
|
256
|
+
* @param body Тело запроса (опционально)
|
|
257
|
+
* @returns Ответ от API
|
|
258
|
+
*/
|
|
259
|
+
delete<T>(path: string, body?: unknown): Promise<T>;
|
|
260
|
+
/**
|
|
261
|
+
* Выполняет PATCH-запрос
|
|
262
|
+
* @param path Путь к API-ресурсу
|
|
263
|
+
* @param body Тело запроса
|
|
264
|
+
* @returns Ответ от API
|
|
265
|
+
*/
|
|
266
|
+
patch<T>(path: string, body?: unknown): Promise<T>;
|
|
267
|
+
}
|
|
268
|
+
/**
|
|
269
|
+
* API для работы с коммитами
|
|
270
|
+
*/
|
|
271
|
+
declare class CommitsApi {
|
|
272
|
+
private client;
|
|
273
|
+
/**
|
|
274
|
+
* Создает новый экземпляр API для работы с коммитами
|
|
275
|
+
* @param client GitVerse клиент
|
|
276
|
+
*/
|
|
277
|
+
constructor(client: GitVerseClient);
|
|
278
|
+
/**
|
|
279
|
+
* Получает список коммитов в репозитории
|
|
280
|
+
* @param owner Владелец репозитория
|
|
281
|
+
* @param repo Название репозитория
|
|
282
|
+
* @returns Список коммитов
|
|
283
|
+
*/
|
|
284
|
+
list(owner: string, repo: string): Promise<Commit[]>;
|
|
285
|
+
/**
|
|
286
|
+
* Получает информацию о коммите по SHA
|
|
287
|
+
* @param owner Владелец репозитория
|
|
288
|
+
* @param repo Название репозитория
|
|
289
|
+
* @param sha SHA-хеш коммита
|
|
290
|
+
* @returns Информация о коммите
|
|
291
|
+
*/
|
|
292
|
+
get(owner: string, repo: string, sha: string): Promise<Commit>;
|
|
293
|
+
/**
|
|
294
|
+
* Создает новый коммит
|
|
295
|
+
* @param owner Владелец репозитория
|
|
296
|
+
* @param repo Название репозитория
|
|
297
|
+
* @param params Параметры создания коммита
|
|
298
|
+
* @returns Созданный коммит
|
|
299
|
+
*/
|
|
300
|
+
create(owner: string, repo: string, params: CreateCommitParams): Promise<Commit>;
|
|
301
|
+
}
|
|
302
|
+
export { CommitsApi };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
class g{client;constructor(b){this.client=b}list(b,d){return this.client.get(`/repos/${b}/${d}/commits`)}get(b,d,f){return this.client.get(`/repos/${b}/${d}/commits/${f}`)}create(b,d,f){return this.client.post(`/repos/${b}/${d}/git/commits`,f)}}export{g as CommitsApi};
|
|
2
|
+
export{g as b};
|
|
3
|
+
|
|
4
|
+
//# debugId=61215F457F0A502764756E2164756E21
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/api/commits.ts"],
|
|
4
|
+
"sourcesContent": [
|
|
5
|
+
"import type { GitVerseClient } from \"../client\";\nimport type { Commit, CreateCommitParams } from \"../types\";\n\n/**\n * API для работы с коммитами\n */\nexport class CommitsApi {\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<Commit[]> {\n return this.client.get<Commit[]>(`/repos/${owner}/${repo}/commits`);\n }\n\n /**\n * Получает информацию о коммите по SHA\n * @param owner Владелец репозитория\n * @param repo Название репозитория\n * @param sha SHA-хеш коммита\n * @returns Информация о коммите\n */\n get(owner: string, repo: string, sha: string): Promise<Commit> {\n return this.client.get<Commit>(`/repos/${owner}/${repo}/commits/${sha}`);\n }\n\n /**\n * Создает новый коммит\n * @param owner Владелец репозитория\n * @param repo Название репозитория\n * @param params Параметры создания коммита\n * @returns Созданный коммит\n */\n create(owner: string, repo: string, params: CreateCommitParams): Promise<Commit> {\n return this.client.post<Commit>(`/repos/${owner}/${repo}/git/commits`, params);\n }\n}\n"
|
|
6
|
+
],
|
|
7
|
+
"mappings": "AAMO,MAAM,CAAW,CACd,OAMR,WAAW,CAAC,EAAwB,CAClC,KAAK,OAAS,EAShB,IAAI,CAAC,EAAe,EAAiC,CACnD,OAAO,KAAK,OAAO,IAAc,UAAU,KAAS,WAAc,EAUpE,GAAG,CAAC,EAAe,EAAc,EAA8B,CAC7D,OAAO,KAAK,OAAO,IAAY,UAAU,KAAS,aAAgB,GAAK,EAUzE,MAAM,CAAC,EAAe,EAAc,EAA6C,CAC/E,OAAO,KAAK,OAAO,KAAa,UAAU,KAAS,gBAAoB,CAAM,EAEjF",
|
|
8
|
+
"debugId": "61215F457F0A502764756E2164756E21",
|
|
9
|
+
"names": []
|
|
10
|
+
}
|
package/dist/api/contents.d.ts
CHANGED
|
@@ -1,83 +1,3 @@
|
|
|
1
|
-
declare const HTTPMethods: {
|
|
2
|
-
readonly DELETE: "DELETE"
|
|
3
|
-
readonly GET: "GET"
|
|
4
|
-
readonly POST: "POST"
|
|
5
|
-
readonly PUT: "PUT"
|
|
6
|
-
};
|
|
7
|
-
type HTTPMethods = (typeof HTTPMethods)[keyof typeof HTTPMethods];
|
|
8
|
-
/**
|
|
9
|
-
* Параметры для конфигурации GitVerse клиента
|
|
10
|
-
*/
|
|
11
|
-
interface GitVerseClientConfig {
|
|
12
|
-
/**
|
|
13
|
-
* Базовый URL API GitVerse
|
|
14
|
-
* @default 'https://api.gitverse.ru'
|
|
15
|
-
*/
|
|
16
|
-
baseUrl?: string;
|
|
17
|
-
/**
|
|
18
|
-
* Токен доступа для авторизации в API
|
|
19
|
-
*/
|
|
20
|
-
token?: string;
|
|
21
|
-
/**
|
|
22
|
-
* Версия API
|
|
23
|
-
* @default '1'
|
|
24
|
-
*/
|
|
25
|
-
apiVersion?: string;
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Основной класс для работы с GitVerse API
|
|
29
|
-
*/
|
|
30
|
-
declare class GitVerseClient {
|
|
31
|
-
private baseUrl;
|
|
32
|
-
private token?;
|
|
33
|
-
private apiVersion;
|
|
34
|
-
/**
|
|
35
|
-
* Создает новый экземпляр GitVerse клиента
|
|
36
|
-
* @param config Конфигурация клиента
|
|
37
|
-
*/
|
|
38
|
-
constructor(config?: GitVerseClientConfig);
|
|
39
|
-
/**
|
|
40
|
-
* Устанавливает токен авторизации
|
|
41
|
-
* @param token Токен доступа
|
|
42
|
-
*/
|
|
43
|
-
setToken(token: string): void;
|
|
44
|
-
/**
|
|
45
|
-
* Выполняет API-запрос с учетом авторизации и версии API
|
|
46
|
-
* @param path Путь к API-ресурсу
|
|
47
|
-
* @param method HTTP-метод
|
|
48
|
-
* @param body Тело запроса (опционально)
|
|
49
|
-
* @returns Ответ от API
|
|
50
|
-
* @throws {Error} Если запрос завершится с ошибкой
|
|
51
|
-
*/
|
|
52
|
-
request<T>(path: string, method: HTTPMethods, body?: unknown): Promise<T>;
|
|
53
|
-
/**
|
|
54
|
-
* Выполняет GET-запрос
|
|
55
|
-
* @param path Путь к API-ресурсу
|
|
56
|
-
* @returns Ответ от API
|
|
57
|
-
*/
|
|
58
|
-
get<T>(path: string): Promise<T>;
|
|
59
|
-
/**
|
|
60
|
-
* Выполняет POST-запрос
|
|
61
|
-
* @param path Путь к API-ресурсу
|
|
62
|
-
* @param body Тело запроса
|
|
63
|
-
* @returns Ответ от API
|
|
64
|
-
*/
|
|
65
|
-
post<T>(path: string, body?: unknown): Promise<T>;
|
|
66
|
-
/**
|
|
67
|
-
* Выполняет PUT-запрос
|
|
68
|
-
* @param path Путь к API-ресурсу
|
|
69
|
-
* @param body Тело запроса
|
|
70
|
-
* @returns Ответ от API
|
|
71
|
-
*/
|
|
72
|
-
put<T>(path: string, body?: unknown): Promise<T>;
|
|
73
|
-
/**
|
|
74
|
-
* Выполняет DELETE-запрос
|
|
75
|
-
* @param path Путь к API-ресурсу
|
|
76
|
-
* @param body Тело запроса (опционально)
|
|
77
|
-
* @returns Ответ от API
|
|
78
|
-
*/
|
|
79
|
-
delete<T>(path: string, body?: unknown): Promise<T>;
|
|
80
|
-
}
|
|
81
1
|
/**
|
|
82
2
|
* Типы содержимого в репозитории
|
|
83
3
|
*/
|
|
@@ -256,6 +176,127 @@ interface DeleteFileParams {
|
|
|
256
176
|
signoff?: boolean;
|
|
257
177
|
}
|
|
258
178
|
/**
|
|
179
|
+
* Предупреждение об устаревшей версии API
|
|
180
|
+
*/
|
|
181
|
+
declare class ApiVersionWarning {
|
|
182
|
+
/** Текущая используемая версия */
|
|
183
|
+
readonly currentVersion: string;
|
|
184
|
+
/** Последняя доступная версия */
|
|
185
|
+
readonly latestVersion: string;
|
|
186
|
+
/** Дата вывода из эксплуатации */
|
|
187
|
+
readonly decommissioning?: string;
|
|
188
|
+
constructor(currentVersion: string, latestVersion: string, decommissioning?: string);
|
|
189
|
+
/**
|
|
190
|
+
* Возвращает сообщение о предупреждении
|
|
191
|
+
*/
|
|
192
|
+
getMessage(): string;
|
|
193
|
+
}
|
|
194
|
+
declare const HTTPMethods: {
|
|
195
|
+
readonly DELETE: "DELETE"
|
|
196
|
+
readonly GET: "GET"
|
|
197
|
+
readonly PATCH: "PATCH"
|
|
198
|
+
readonly POST: "POST"
|
|
199
|
+
readonly PUT: "PUT"
|
|
200
|
+
};
|
|
201
|
+
type HTTPMethods = (typeof HTTPMethods)[keyof typeof HTTPMethods];
|
|
202
|
+
/**
|
|
203
|
+
* Параметры для конфигурации GitVerse клиента
|
|
204
|
+
*/
|
|
205
|
+
interface GitVerseClientConfig {
|
|
206
|
+
/**
|
|
207
|
+
* Базовый URL API GitVerse
|
|
208
|
+
* @default 'https://api.gitverse.ru'
|
|
209
|
+
*/
|
|
210
|
+
baseUrl?: string;
|
|
211
|
+
/**
|
|
212
|
+
* Токен доступа для авторизации в API
|
|
213
|
+
*/
|
|
214
|
+
token?: string;
|
|
215
|
+
/**
|
|
216
|
+
* Версия API
|
|
217
|
+
* @default '1'
|
|
218
|
+
*/
|
|
219
|
+
apiVersion?: string;
|
|
220
|
+
}
|
|
221
|
+
/**
|
|
222
|
+
* Основной класс для работы с GitVerse API
|
|
223
|
+
*/
|
|
224
|
+
declare class GitVerseClient {
|
|
225
|
+
private baseUrl;
|
|
226
|
+
private token?;
|
|
227
|
+
private apiVersion;
|
|
228
|
+
/**
|
|
229
|
+
* Callback для обработки предупреждений об устаревшей версии API
|
|
230
|
+
*/
|
|
231
|
+
onApiVersionWarning?: (warning: ApiVersionWarning) => void;
|
|
232
|
+
/**
|
|
233
|
+
* Создает новый экземпляр GitVerse клиента
|
|
234
|
+
* @param config Конфигурация клиента
|
|
235
|
+
*/
|
|
236
|
+
constructor(config?: GitVerseClientConfig);
|
|
237
|
+
/**
|
|
238
|
+
* Устанавливает токен авторизации
|
|
239
|
+
* @param token Токен доступа
|
|
240
|
+
*/
|
|
241
|
+
setToken(token: string): void;
|
|
242
|
+
/**
|
|
243
|
+
* Извлекает информацию о Rate Limit из заголовков ответа
|
|
244
|
+
*/
|
|
245
|
+
private extractRateLimitInfo;
|
|
246
|
+
/**
|
|
247
|
+
* Извлекает информацию о версии API из заголовков ответа
|
|
248
|
+
*/
|
|
249
|
+
private extractApiVersionInfo;
|
|
250
|
+
/**
|
|
251
|
+
* Извлекает метаданные из заголовков ответа
|
|
252
|
+
*/
|
|
253
|
+
private extractMetadata;
|
|
254
|
+
/**
|
|
255
|
+
* Выполняет API-запрос с учетом авторизации и версии API
|
|
256
|
+
* @param path Путь к API-ресурсу
|
|
257
|
+
* @param method HTTP-метод
|
|
258
|
+
* @param body Тело запроса (опционально)
|
|
259
|
+
* @returns Ответ от API
|
|
260
|
+
* @throws {RateLimitError} При превышении лимита запросов (429)
|
|
261
|
+
* @throws {GitVerseApiError} При других ошибках API
|
|
262
|
+
*/
|
|
263
|
+
request<T>(path: string, method: HTTPMethods, body?: unknown): Promise<T>;
|
|
264
|
+
/**
|
|
265
|
+
* Выполняет GET-запрос
|
|
266
|
+
* @param path Путь к API-ресурсу
|
|
267
|
+
* @returns Ответ от API
|
|
268
|
+
*/
|
|
269
|
+
get<T>(path: string): Promise<T>;
|
|
270
|
+
/**
|
|
271
|
+
* Выполняет POST-запрос
|
|
272
|
+
* @param path Путь к API-ресурсу
|
|
273
|
+
* @param body Тело запроса
|
|
274
|
+
* @returns Ответ от API
|
|
275
|
+
*/
|
|
276
|
+
post<T>(path: string, body?: unknown): Promise<T>;
|
|
277
|
+
/**
|
|
278
|
+
* Выполняет PUT-запрос
|
|
279
|
+
* @param path Путь к API-ресурсу
|
|
280
|
+
* @param body Тело запроса
|
|
281
|
+
* @returns Ответ от API
|
|
282
|
+
*/
|
|
283
|
+
put<T>(path: string, body?: unknown): Promise<T>;
|
|
284
|
+
/**
|
|
285
|
+
* Выполняет DELETE-запрос
|
|
286
|
+
* @param path Путь к API-ресурсу
|
|
287
|
+
* @param body Тело запроса (опционально)
|
|
288
|
+
* @returns Ответ от API
|
|
289
|
+
*/
|
|
290
|
+
delete<T>(path: string, body?: unknown): Promise<T>;
|
|
291
|
+
/**
|
|
292
|
+
* Выполняет PATCH-запрос
|
|
293
|
+
* @param path Путь к API-ресурсу
|
|
294
|
+
* @param body Тело запроса
|
|
295
|
+
* @returns Ответ от API
|
|
296
|
+
*/
|
|
297
|
+
patch<T>(path: string, body?: unknown): Promise<T>;
|
|
298
|
+
}
|
|
299
|
+
/**
|
|
259
300
|
* API для работы с содержимым репозитория (файлами и папками)
|
|
260
301
|
*/
|
|
261
302
|
declare class ContentsApi {
|
package/dist/api/contents.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
class j{client;constructor(b){this.client=b}get(b,d,f){return this.client.get(`/
|
|
2
|
-
export{j as
|
|
1
|
+
class j{client;constructor(b){this.client=b}get(b,d,f){return this.client.get(`/repos/${b}/${d}/contents/${f}`)}createFile(b,d,f,g){return this.client.put(`/repos/${b}/${d}/contents/${f}`,g)}updateFile(b,d,f,g){return this.client.put(`/repos/${b}/${d}/contents/${f}`,g)}deleteFile(b,d,f,g){return this.client.delete(`/repos/${b}/${d}/contents/${f}`,g)}}export{j as ContentsApi};
|
|
2
|
+
export{j as i};
|
|
3
3
|
|
|
4
|
-
//# debugId=
|
|
4
|
+
//# debugId=01D3BAD20A257EBF64756E2164756E21
|
package/dist/api/contents.js.map
CHANGED
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/api/contents.ts"],
|
|
4
4
|
"sourcesContent": [
|
|
5
|
-
"import type { GitVerseClient } from \"../client\";\nimport type {\n Content,\n CreateFileParams,\n DeleteFileParams,\n FileCreationResponse,\n FileDeletionResponse,\n UpdateFileParams,\n} from \"../types\";\n\n/**\n * API для работы с содержимым репозитория (файлами и папками)\n */\nexport class ContentsApi {\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 path Путь к файлу или директории\n * @returns Содержимое файла или директории\n */\n get(owner: string, repo: string, path: string): Promise<Content> {\n return this.client.get<Content>(`/
|
|
5
|
+
"import type { GitVerseClient } from \"../client\";\nimport type {\n Content,\n CreateFileParams,\n DeleteFileParams,\n FileCreationResponse,\n FileDeletionResponse,\n UpdateFileParams,\n} from \"../types\";\n\n/**\n * API для работы с содержимым репозитория (файлами и папками)\n */\nexport class ContentsApi {\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 path Путь к файлу или директории\n * @returns Содержимое файла или директории\n */\n get(owner: string, repo: string, path: string): Promise<Content> {\n return this.client.get<Content>(`/repos/${owner}/${repo}/contents/${path}`);\n }\n\n /**\n * Создает новый файл в репозитории\n * @param owner Владелец репозитория\n * @param repo Название репозитория\n * @param path Путь к файлу, который будет создан\n * @param params Параметры создания файла\n * @returns Информация о созданном файле и коммите\n */\n createFile(owner: string, repo: string, path: string, params: CreateFileParams): Promise<FileCreationResponse> {\n return this.client.put<FileCreationResponse>(`/repos/${owner}/${repo}/contents/${path}`, params);\n }\n\n /**\n * Обновляет существующий файл в репозитории\n * @param owner Владелец репозитория\n * @param repo Название репозитория\n * @param path Путь к файлу, который будет обновлен\n * @param params Параметры обновления файла\n * @returns Информация об обновленном файле и коммите\n */\n updateFile(owner: string, repo: string, path: string, params: UpdateFileParams): Promise<FileCreationResponse> {\n return this.client.put<FileCreationResponse>(`/repos/${owner}/${repo}/contents/${path}`, params);\n }\n\n /**\n * Удаляет файл из репозитория\n * @param owner Владелец репозитория\n * @param repo Название репозитория\n * @param path Путь к файлу, который будет удален\n * @param params Параметры удаления файла\n * @returns Информация об удаленном файле и коммите\n */\n deleteFile(owner: string, repo: string, path: string, params: DeleteFileParams): Promise<FileDeletionResponse> {\n return this.client.delete<FileDeletionResponse>(`/repos/${owner}/${repo}/contents/${path}`, params);\n }\n}\n"
|
|
6
6
|
],
|
|
7
|
-
"mappings": "AAaO,MAAM,CAAY,CACf,OAMR,WAAW,CAAC,EAAwB,CAClC,KAAK,OAAS,EAUhB,GAAG,CAAC,EAAe,EAAc,EAAgC,CAC/D,OAAO,KAAK,OAAO,IAAa,
|
|
8
|
-
"debugId": "
|
|
7
|
+
"mappings": "AAaO,MAAM,CAAY,CACf,OAMR,WAAW,CAAC,EAAwB,CAClC,KAAK,OAAS,EAUhB,GAAG,CAAC,EAAe,EAAc,EAAgC,CAC/D,OAAO,KAAK,OAAO,IAAa,UAAU,KAAS,cAAiB,GAAM,EAW5E,UAAU,CAAC,EAAe,EAAc,EAAc,EAAyD,CAC7G,OAAO,KAAK,OAAO,IAA0B,UAAU,KAAS,cAAiB,IAAQ,CAAM,EAWjG,UAAU,CAAC,EAAe,EAAc,EAAc,EAAyD,CAC7G,OAAO,KAAK,OAAO,IAA0B,UAAU,KAAS,cAAiB,IAAQ,CAAM,EAWjG,UAAU,CAAC,EAAe,EAAc,EAAc,EAAyD,CAC7G,OAAO,KAAK,OAAO,OAA6B,UAAU,KAAS,cAAiB,IAAQ,CAAM,EAEtG",
|
|
8
|
+
"debugId": "01D3BAD20A257EBF64756E2164756E21",
|
|
9
9
|
"names": []
|
|
10
10
|
}
|