anixartjs 0.0.9 → 0.1.1

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 (61) hide show
  1. package/dist/api/auth.d.ts +95 -4
  2. package/dist/api/auth.js +91 -0
  3. package/dist/api/channel.d.ts +16 -12
  4. package/dist/api/channel.js +16 -4
  5. package/dist/api/collection.d.ts +8 -14
  6. package/dist/api/collection.js +3 -7
  7. package/dist/api/discover.d.ts +67 -0
  8. package/dist/api/discover.js +67 -0
  9. package/dist/api/feed.d.ts +28 -1
  10. package/dist/api/feed.js +28 -3
  11. package/dist/api/index.d.ts +1 -0
  12. package/dist/api/index.js +1 -0
  13. package/dist/api/notification.d.ts +3 -1
  14. package/dist/api/notification.js +6 -0
  15. package/dist/api/profile.d.ts +372 -11
  16. package/dist/api/profile.js +381 -6
  17. package/dist/api/release.d.ts +4 -4
  18. package/dist/api/release.js +3 -3
  19. package/dist/api/search.d.ts +230 -0
  20. package/dist/api/search.js +257 -0
  21. package/dist/api/settings.d.ts +6 -7
  22. package/dist/api/settings.js +9 -12
  23. package/dist/classes/Article.d.ts +3 -3
  24. package/dist/classes/Article.js +3 -2
  25. package/dist/classes/ArticleComment.d.ts +3 -3
  26. package/dist/classes/ArticleComment.js +2 -1
  27. package/dist/classes/BaseProfile.d.ts +4 -3
  28. package/dist/classes/BaseProfile.js +6 -2
  29. package/dist/classes/Channel.d.ts +4 -4
  30. package/dist/classes/Channel.js +7 -6
  31. package/dist/classes/Collection.d.ts +5 -5
  32. package/dist/classes/Collection.js +2 -1
  33. package/dist/classes/Episode.d.ts +3 -3
  34. package/dist/classes/Release.d.ts +7 -7
  35. package/dist/classes/Release.js +9 -8
  36. package/dist/classes/ReleaseComment.d.ts +4 -4
  37. package/dist/classes/ReleaseComment.js +3 -2
  38. package/dist/classes/SuggestionArticle.d.ts +2 -2
  39. package/dist/classes/SuggestionArticle.js +2 -1
  40. package/dist/client.d.ts +11 -3
  41. package/dist/client.js +10 -1
  42. package/dist/endpoints.d.ts +10 -1
  43. package/dist/endpoints.js +9 -0
  44. package/dist/index.d.ts +1 -0
  45. package/dist/index.js +1 -0
  46. package/dist/types/auth.d.ts +41 -2
  47. package/dist/types/auth.js +45 -0
  48. package/dist/types/channel.d.ts +107 -10
  49. package/dist/types/channel.js +95 -0
  50. package/dist/types/collection.d.ts +38 -4
  51. package/dist/types/collection.js +42 -0
  52. package/dist/types/notification.d.ts +4 -0
  53. package/dist/types/profile.d.ts +41 -3
  54. package/dist/types/profile.js +26 -1
  55. package/dist/types/release.d.ts +35 -5
  56. package/dist/types/release.js +10 -1
  57. package/dist/types/response.d.ts +26 -6
  58. package/dist/types/response.js +33 -10
  59. package/dist/types/settings.d.ts +30 -2
  60. package/dist/types/settings.js +35 -1
  61. package/package.json +1 -1
@@ -27,8 +27,14 @@ class Notification {
27
27
  async getCollectionCommentNotifications(page, options) {
28
28
  return await this.client.call({ path: `/notification/collectionComments/${page}`, ...options });
29
29
  }
30
+ async getArticleNotifications(page, options) {
31
+ return await this.client.call({ path: `/notification/articles/${page}`, ...options });
32
+ }
30
33
  async removeAllNotifications(options) {
31
34
  return await this.client.call({ path: `/notification/delete/all`, ...options });
32
35
  }
36
+ async readNotifications(options) {
37
+ return await this.client.call({ path: `/notification/read`, ...options });
38
+ }
33
39
  }
34
40
  exports.Notification = Notification;
@@ -1,27 +1,388 @@
1
1
  import { Anixart } from "../client";
2
- import { IProfileResponse, IBookmarkRequest, IFriendsRequest, IProfileShort, IFriendRequestResponse, IBaseApiParams, IBaseSearchRequest, IPageableResponse, IRelease, IProfile, IResponse, ISubsciptionCountResponse, IVoteRelease } from "../types";
2
+ import { IProfileResponse, IBookmarkRequest, IFriendsRequest, IProfileShort, IFriendRequestResponse, IBaseApiParams, IPageableResponse, IRelease, IProfile, IResponse, ISubsciptionCountResponse, IVoteRelease, RemoveFriendRequestResult, AchivementResult, ISocialResponse, IExportBookmarksResponse, BlocklistAddResult, BookmarkType, IChannel } from "../types";
3
3
  /**
4
4
  * Класс профиля
5
5
  *
6
- * TODO: changeAvatar
6
+ * TODO: Понять для чего нужен эндпоинт '/profile/process/{id}' - POST
7
+ * Пока что предположение что это что-то для модерации
7
8
  */
8
9
  export declare class Profile {
9
10
  private readonly client;
10
11
  constructor(client: Anixart);
12
+ /**
13
+ * Получение информация о профиле по его ID
14
+ *
15
+ * Возвращает {@link IProfileResponse}.
16
+ *
17
+ * Возможные ответы API в виде enum смотреть здесь {@link DefaultResult}
18
+ *
19
+ * @param id - ID Профиля
20
+ * @param options - Дополнительные параметры
21
+ * @returns Информацию о профиле с указанным ID
22
+ *
23
+ * @example
24
+ * const result = await client.endpoints.profile.info(1);
25
+ */
11
26
  info(id: number, options?: IBaseApiParams): Promise<IProfileResponse>;
27
+ /**
28
+ * Получение закладок из профиля по его ID
29
+ *
30
+ * Возвращает {@link IRelease} внутри {@link IPageableResponse}.
31
+ *
32
+ * Возможные ответы API в виде enum смотреть здесь {@link DefaultResult}
33
+ *
34
+ * @param data - Данные для запроса
35
+ * @param options - Дополнительные параметры
36
+ * @returns Информацию о релизах которые находятся в закладке
37
+ *
38
+ * @example
39
+ * const { BookmarkType, BookmarkSortType } = require("anixartjs");
40
+ *
41
+ * const result = await client.endpoints.profile.getBookmarks({
42
+ * type: BookmarkType.Watching, //Тип закладки
43
+ * id: 1, //ID профиля
44
+ * sort: BookmarkSortType.NewToOldAddTime, //Сортировка
45
+ * page: 0 //Страница
46
+ * });
47
+ */
12
48
  getBookmarks(data: IBookmarkRequest, options?: IBaseApiParams): Promise<IPageableResponse<IRelease>>;
13
- addBookmark(id: number, type: number, options?: IBaseApiParams): Promise<IResponse>;
14
- removeBookmark(id: number, type: number, options?: IBaseApiParams): Promise<IResponse>;
15
- search(data: IBaseSearchRequest, options?: IBaseApiParams): Promise<IPageableResponse<IProfile>>;
49
+ /**
50
+ * Добавление релиза в закладку
51
+ *
52
+ * Возвращает код результата {@link IResponse}.
53
+ *
54
+ * Возможные ответы API в виде enum смотреть здесь {@link DefaultResult}
55
+ *
56
+ * @param id - ID релиза
57
+ * @param type - Тип закладки {@link BookmarkType}
58
+ * @param options - Дополнительные параметры
59
+ * @returns Ответ API в виде числа
60
+ *
61
+ * @example
62
+ * const { BookmarkType } = require("anixartjs");
63
+ *
64
+ * const result = await client.endpoints.profile.addBookmarks(1, BookmarkType.Watching);
65
+ */
66
+ addBookmark(id: number, type: BookmarkType, options?: IBaseApiParams): Promise<IResponse>;
67
+ /**
68
+ * Удаление релиза из закладки
69
+ *
70
+ * Возвращает код результата {@link IResponse}.
71
+ *
72
+ * Возможные ответы API в виде enum смотреть здесь {@link DefaultResult}
73
+ *
74
+ * @param id - ID релиза
75
+ * @param type - Тип закладки {@link BookmarkType}
76
+ * @param options - Дополнительные параметры
77
+ * @returns Ответ API в виде числа
78
+ *
79
+ * @example
80
+ * const { BookmarkType } = require("anixartjs");
81
+ *
82
+ * const result = await client.endpoints.profile.removeBookmarks(1, BookmarkType.Watching);
83
+ */
84
+ removeBookmark(id: number, type: BookmarkType, options?: IBaseApiParams): Promise<IResponse>;
85
+ /**
86
+ * Получение друзей профиля по его ID
87
+ *
88
+ * Возвращает список {@link IProfileShort} внутри {@link IPageableResponse}.
89
+ *
90
+ * Возможные ответы API в виде enum смотреть здесь {@link DefaultResult}
91
+ *
92
+ * @param data - Данные для получения списка друзей
93
+ * @param options - Дополнительные параметры
94
+ * @returns Список друзей
95
+ *
96
+ * @example
97
+ * const result = await client.endpoints.profile.getFriends({
98
+ * id: 1, //ID Профиля
99
+ * page: 0 //Страница
100
+ * });
101
+ */
16
102
  getFriends(data: IFriendsRequest, options?: IBaseApiParams): Promise<IPageableResponse<IProfileShort>>;
103
+ /**
104
+ * Получение списка рекомендаций для добавления в друзья
105
+ *
106
+ * Возвращает список {@link IProfileShort} внутри {@link IPageableResponse}.
107
+ *
108
+ * Возможные ответы API в виде enum смотреть здесь {@link DefaultResult}
109
+ *
110
+ * @param options - Дополнительные параметры
111
+ * @returns Список потенциальных друзей
112
+ *
113
+ * @example
114
+ * const result = await client.endpoints.profile.getFriendRecomendation();
115
+ */
17
116
  getFriendRecomendation(options?: IBaseApiParams): Promise<IPageableResponse<IProfileShort>>;
18
- getFriendRequests(type: "in" | "out", count: number, options?: IBaseApiParams): Promise<IPageableResponse<IProfileShort>>;
117
+ /**
118
+ * Получение списка последних заявок в друзья
119
+ *
120
+ * Возвращает список {@link IProfileShort} внутри {@link IPageableResponse}.
121
+ *
122
+ * Возможные ответы API в виде enum смотреть здесь {@link DefaultResult}
123
+ *
124
+ * @param type - Тип заявок (Входящие или исходящие)
125
+ * @param count - Количество заявок
126
+ * @param options - Дополнительные параметры
127
+ * @returns Список последних заявок в друзья
128
+ *
129
+ * @example
130
+ * const result = await client.endpoints.profile.getLastFriendRequests("in", 5);
131
+ */
132
+ getLastFriendRequests(type: "in" | "out", count: number, options?: IBaseApiParams): Promise<IPageableResponse<IProfileShort>>;
133
+ /**
134
+ * Получение списка заявок в друзья
135
+ *
136
+ * Возвращает список {@link IProfileShort} внутри {@link IPageableResponse}.
137
+ *
138
+ * Возможные ответы API в виде enum смотреть здесь {@link DefaultResult}
139
+ *
140
+ * @param type - Тип заявок (Входящие или исходящие)
141
+ * @param page - Номер страницы
142
+ * @param options - Дополнительные параметры
143
+ * @returns Список заявок в друзья
144
+ *
145
+ * @example
146
+ * const result = await client.endpoints.profile.getFriendRequests("in", 0);
147
+ */
148
+ getFriendRequests(type: "in" | "out", page: number, options?: IBaseApiParams): Promise<IPageableResponse<IProfileShort>>;
149
+ /**
150
+ * Отправка запроса на добавление в друзья
151
+ *
152
+ * Возвращает ответ {@link IFriendRequestResponse}.
153
+ *
154
+ * Возможные ответы API в виде enum смотреть здесь {@link DefaultResult}, {@link SendFriendRequestResult}
155
+ *
156
+ * @param id - ID Профиля
157
+ * @param options - Дополнительные параметры
158
+ * @returns Статус дружбы
159
+ *
160
+ * @example
161
+ * const result = await client.endpoints.profile.sendFriendRequest(1);
162
+ */
19
163
  sendFriendRequest(id: number, options?: IBaseApiParams): Promise<IFriendRequestResponse>;
20
- removeFriendRequest(id: number, options?: IBaseApiParams): Promise<IFriendRequestResponse>;
164
+ /**
165
+ * Удаление запроса на добавление в друзья
166
+ *
167
+ * Возвращает ответ {@link IFriendRequestResponse}.
168
+ *
169
+ * Возможные ответы API в виде enum смотреть здесь {@link DefaultResult}, {@link RemoveFriendRequestResult}
170
+ *
171
+ * @param id - ID Профиля
172
+ * @param options - Дополнительные параметры
173
+ * @returns Статус дружбы
174
+ *
175
+ * @example
176
+ * const result = await client.endpoints.profile.removeFriendRequest(1);
177
+ */
178
+ removeFriendRequest(id: number, options?: IBaseApiParams): Promise<IFriendRequestResponse<RemoveFriendRequestResult>>;
179
+ /**
180
+ * Скрытие запроса на добавление в друзья
181
+ *
182
+ * Возвращает ответ {@link IResponse}.
183
+ *
184
+ * Возможные ответы API в виде enum смотреть здесь {@link DefaultResult}
185
+ *
186
+ * @param id - ID Профиля
187
+ * @param options - Дополнительные параметры
188
+ * @returns Код ответа
189
+ *
190
+ * @example
191
+ * const result = await client.endpoints.profile.hideFriendRequest(1);
192
+ */
21
193
  hideFriendRequest(id: number, options?: IBaseApiParams): Promise<IResponse>;
22
- getAchivement(id: number, options?: IBaseApiParams): Promise<IResponse>;
23
- getFavorites(data: IBookmarkRequest, options?: IBaseApiParams): Promise<IPageableResponse<IRelease>>;
24
- getSubsciptions(page: number, options?: IBaseApiParams): Promise<IPageableResponse<any>>;
194
+ /**
195
+ * Получение достижения в профиль
196
+ *
197
+ * Возвращает ответ {@link IResponse}.
198
+ *
199
+ * Возможные ответы API в виде enum смотреть здесь {@link DefaultResult}, {@link AchivementResult}
200
+ *
201
+ * @param id - ID Достижения
202
+ * @param options - Дополнительные параметры
203
+ * @returns Код ответа
204
+ *
205
+ * @example
206
+ * const result = await client.endpoints.profile.getAchivement("DEMO1-ACHIV-MENT2");
207
+ * //Или
208
+ * const result = await client.endpoints.profile.getAchivement(1);
209
+ */
210
+ getAchivement(id: string | number, options?: IBaseApiParams): Promise<IResponse<AchivementResult>>;
211
+ /**
212
+ * Получение избранных релизов в профиле
213
+ *
214
+ * Возвращает релизы {@link IRelease} внутри {@link IPageableResponse}.
215
+ *
216
+ * Возможные ответы API в виде enum смотреть здесь {@link DefaultResult}
217
+ *
218
+ * @param data - Данные для запроса
219
+ * @param options - Дополнительные параметры
220
+ * @returns Релизы
221
+ *
222
+ * @example
223
+ * const { BookmarkSortType } = require("anixartjs");
224
+ *
225
+ * const result = await client.endpoints.profile.getFavorites({
226
+ * page: 1, //Страница
227
+ * sort: BookmarkSortType.NewToOldAddTime, //Сортировка
228
+ * filter_announce: 0, //Фильтр по анонсам
229
+ * });
230
+ */
231
+ getFavorites(data: Omit<IBookmarkRequest, "id" | "type">, options?: IBaseApiParams): Promise<IPageableResponse<IRelease>>;
232
+ /**
233
+ * Получение подписок в профиле на каналы и блоги
234
+ *
235
+ * Возвращает каналы и блоги {@link IChannel} внутри {@link IPageableResponse}.
236
+ *
237
+ * Возможные ответы API в виде enum смотреть здесь {@link DefaultResult}
238
+ *
239
+ * @param page - Номер страницы
240
+ * @param options - Дополнительные параметры
241
+ * @returns Каналы и блоги
242
+ *
243
+ * @example
244
+ * const result = await client.endpoints.profile.getSubsciptions(0);
245
+ */
246
+ getSubsciptions(page: number, options?: IBaseApiParams): Promise<IPageableResponse<IChannel>>;
247
+ /**
248
+ * Получение количество подписок в профиле на каналы и блоги
249
+ *
250
+ * Возвращает число подписок {@link ISubsciptionCountResponse}.
251
+ *
252
+ * Возможные ответы API в виде enum смотреть здесь {@link DefaultResult}
253
+ *
254
+ * @param options - Дополнительные параметры
255
+ * @returns Число подписок
256
+ *
257
+ * @example
258
+ * const result = await client.endpoints.profile.getSubsciptionCount(0);
259
+ */
25
260
  getSubscriptionCount(options?: IBaseApiParams): Promise<ISubsciptionCountResponse>;
26
- getVotesReleases(id: number, page: number, sort?: number, options?: IBaseApiParams): Promise<IPageableResponse<IVoteRelease>>;
261
+ /**
262
+ * Получение списка оцененных релизов профиля
263
+ *
264
+ * Возвращает список {@link IVoteRelease} внутри {@link IPageableResponse}.
265
+ *
266
+ * Возможные ответы API в виде enum смотреть здесь {@link DefaultResult}
267
+ *
268
+ * @param id - ID Профиля
269
+ * @param page - Номер страницы
270
+ * @param sort - Сортировка
271
+ * @param options - Дополнительные параметры
272
+ * @returns Список оцененных релизов
273
+ *
274
+ * @example
275
+ * const result = await client.endpoints.profile.getVotedReleases(1, 0);
276
+ */
277
+ getVotedReleases(id: number, page: number, sort?: number, options?: IBaseApiParams): Promise<IPageableResponse<IVoteRelease>>;
278
+ /**
279
+ * Получение списка юзернеймов профиля на другие соц. сети
280
+ *
281
+ * Возвращает ответ {@link ISocialResponse}.
282
+ *
283
+ * Возможные ответы API в виде enum смотреть здесь {@link DefaultResult}
284
+ *
285
+ * @param id - ID Профиля
286
+ * @param options - Дополнительные параметры
287
+ * @returns Список оцененных релизов
288
+ *
289
+ * @example
290
+ * const result = await client.endpoints.profile.getSocials(1);
291
+ */
292
+ getSocials(id: number, options?: IBaseApiParams): Promise<ISocialResponse>;
293
+ /**
294
+ * Получение списка неоцененных релизов профиля (Предположительно которые находятся в закладках профиля)
295
+ *
296
+ * Возвращает список {@link IRelease} внутри {@link IPageableResponse}.
297
+ *
298
+ * Возможные ответы API в виде enum смотреть здесь {@link DefaultResult}
299
+ *
300
+ * @param page - Номер страницы
301
+ * @param options - Дополнительные параметры
302
+ * @returns Список неоцененных релизов
303
+ *
304
+ * @example
305
+ * const result = await client.endpoints.profile.getUnvotedReleases(0);
306
+ */
307
+ getUnvotedReleases(page?: number | "last", options?: IBaseApiParams): Promise<IPageableResponse<IRelease>>;
308
+ /**
309
+ * Получение списка профилей у которых есть конкретная роль
310
+ *
311
+ * Возвращает список {@link IProfileShort} внутри {@link IPageableResponse}.
312
+ *
313
+ * Возможные ответы API в виде enum смотреть здесь {@link DefaultResult}
314
+ *
315
+ * @param id - ID Роли
316
+ * @param page - Номер страницы
317
+ * @param options - Дополнительные параметры
318
+ * @returns Список профилей у которых есть конкретная роль
319
+ *
320
+ * @example
321
+ * const result = await client.endpoints.profile.getRoleProfiles(0);
322
+ */
323
+ getRoleProfiles(id: number, page: number, options?: IBaseApiParams): Promise<IPageableResponse<IProfileShort>>;
324
+ /**
325
+ * Экспорт закладок из профиля
326
+ *
327
+ * Возвращает ответ {@link IExportBookmarksResponse}.
328
+ *
329
+ * Возможные ответы API в виде enum смотреть здесь {@link DefaultResult}, {@link BookmarkExportResult}
330
+ *
331
+ * @param listIds - Типы закладок
332
+ * @param sort - Сортировка
333
+ * @param options - Дополнительные параметры
334
+ * @returns Результат экспорта
335
+ *
336
+ * @example
337
+ * const { BookmarkType } = require("anixartjs");
338
+ *
339
+ * const bookmarks = [BookmarkType.Watching, BookmarkType.Completed];
340
+ * const result = await client.endpoints.profile.exportBookmarks(bookmarks);
341
+ */
342
+ exportBookmarks(listIds: Array<BookmarkType>, sort?: number, options?: IBaseApiParams): Promise<IExportBookmarksResponse>;
343
+ /**
344
+ * Получение списка профилей которые находятся в блоклисте
345
+ *
346
+ * Возвращает список {@link IProfile} внутри {@link IPageableResponse}.
347
+ *
348
+ * Возможные ответы API в виде enum смотреть здесь {@link DefaultResult}
349
+ *
350
+ * @param page - Номер страницы
351
+ * @param options - Дополнительные параметры
352
+ * @returns Список профилей
353
+ *
354
+ * @example
355
+ * const result = await client.endpoints.profile.getBlocklist(0);
356
+ */
357
+ getBlocklist(page: number, options?: IBaseApiParams): Promise<IPageableResponse<IProfile>>;
358
+ /**
359
+ * Добавление профиля в блоклист
360
+ *
361
+ * Возвращает ответ {@link IResponse}.
362
+ *
363
+ * Возможные ответы API в виде enum смотреть здесь {@link DefaultResult}
364
+ *
365
+ * @param id - ID Профиля
366
+ * @param options - Дополнительные параметры
367
+ * @returns Код ответа
368
+ *
369
+ * @example
370
+ * const result = await client.endpoints.profile.addToBlocklist(1);
371
+ */
372
+ addToBlocklist(id: number, options?: IBaseApiParams): Promise<IResponse>;
373
+ /**
374
+ * Удаление профиля из блоклиста
375
+ *
376
+ * Возвращает ответ {@link IResponse}.
377
+ *
378
+ * Возможные ответы API в виде enum смотреть здесь {@link DefaultResult}
379
+ *
380
+ * @param id - ID Профиля
381
+ * @param options - Дополнительные параметры
382
+ * @returns Код ответа
383
+ *
384
+ * @example
385
+ * const result = await client.endpoints.profile.removeToBlocklist(1);
386
+ */
387
+ removeFromBlocklist(id: number, options?: IBaseApiParams): Promise<IResponse<BlocklistAddResult>>;
27
388
  }