anixapi 0.2.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.
- package/LICENSE +339 -0
- package/README.md +165 -0
- package/dist/api/auth.d.ts +129 -0
- package/dist/api/auth.js +156 -0
- package/dist/api/bookmarks/export.d.ts +19 -0
- package/dist/api/bookmarks/export.js +24 -0
- package/dist/api/bookmarks/import.d.ts +29 -0
- package/dist/api/bookmarks/import.js +36 -0
- package/dist/api/bookmarks/index.d.ts +2 -0
- package/dist/api/bookmarks/index.js +18 -0
- package/dist/api/channel/article.d.ts +119 -0
- package/dist/api/channel/article.js +144 -0
- package/dist/api/channel/articleComment.d.ts +119 -0
- package/dist/api/channel/articleComment.js +144 -0
- package/dist/api/channel/articleSuggestion.d.ts +69 -0
- package/dist/api/channel/articleSuggestion.js +84 -0
- package/dist/api/channel/channel.d.ts +249 -0
- package/dist/api/channel/channel.js +300 -0
- package/dist/api/channel/index.d.ts +4 -0
- package/dist/api/channel/index.js +20 -0
- package/dist/api/collection/collection.d.ts +59 -0
- package/dist/api/collection/collection.js +72 -0
- package/dist/api/collection/collectionComment.d.ts +109 -0
- package/dist/api/collection/collectionComment.js +132 -0
- package/dist/api/collection/collectionFavorite.d.ts +39 -0
- package/dist/api/collection/collectionFavorite.js +48 -0
- package/dist/api/collection/collectionMy.d.ts +69 -0
- package/dist/api/collection/collectionMy.js +84 -0
- package/dist/api/collection/index.d.ts +4 -0
- package/dist/api/collection/index.js +20 -0
- package/dist/api/config.d.ts +29 -0
- package/dist/api/config.js +36 -0
- package/dist/api/discover.d.ts +59 -0
- package/dist/api/discover.js +72 -0
- package/dist/api/feed.d.ts +39 -0
- package/dist/api/feed.js +48 -0
- package/dist/api/index.d.ts +12 -0
- package/dist/api/index.js +28 -0
- package/dist/api/notification/index.d.ts +2 -0
- package/dist/api/notification/index.js +18 -0
- package/dist/api/notification/notification.d.ts +199 -0
- package/dist/api/notification/notification.js +240 -0
- package/dist/api/notification/notificationPreference.d.ts +159 -0
- package/dist/api/notification/notificationPreference.js +192 -0
- package/dist/api/profile/index.d.ts +10 -0
- package/dist/api/profile/index.js +26 -0
- package/dist/api/profile/profile.d.ts +65 -0
- package/dist/api/profile/profile.js +80 -0
- package/dist/api/profile/profileBadge.d.ts +39 -0
- package/dist/api/profile/profileBadge.js +48 -0
- package/dist/api/profile/profileBlockList.d.ts +39 -0
- package/dist/api/profile/profileBlockList.js +48 -0
- package/dist/api/profile/profileDeletion.d.ts +39 -0
- package/dist/api/profile/profileDeletion.js +48 -0
- package/dist/api/profile/profileFriend.d.ts +99 -0
- package/dist/api/profile/profileFriend.js +120 -0
- package/dist/api/profile/profileHealth.d.ts +59 -0
- package/dist/api/profile/profileHealth.js +72 -0
- package/dist/api/profile/profileList.d.ts +49 -0
- package/dist/api/profile/profileList.js +60 -0
- package/dist/api/profile/profilePreference.d.ts +239 -0
- package/dist/api/profile/profilePreference.js +288 -0
- package/dist/api/profile/profileReleaseVote.d.ts +39 -0
- package/dist/api/profile/profileReleaseVote.js +48 -0
- package/dist/api/profile/profileRoleList.d.ts +19 -0
- package/dist/api/profile/profileRoleList.js +24 -0
- package/dist/api/release/episode.d.ts +99 -0
- package/dist/api/release/episode.js +120 -0
- package/dist/api/release/favorite.d.ts +39 -0
- package/dist/api/release/favorite.js +48 -0
- package/dist/api/release/filter.d.ts +19 -0
- package/dist/api/release/filter.js +24 -0
- package/dist/api/release/history.d.ts +39 -0
- package/dist/api/release/history.js +48 -0
- package/dist/api/release/index.d.ts +13 -0
- package/dist/api/release/index.js +29 -0
- package/dist/api/release/related.d.ts +19 -0
- package/dist/api/release/related.js +24 -0
- package/dist/api/release/release.d.ts +79 -0
- package/dist/api/release/release.js +96 -0
- package/dist/api/release/releaseComment.d.ts +109 -0
- package/dist/api/release/releaseComment.js +132 -0
- package/dist/api/release/releaseStreamingPlatform.d.ts +19 -0
- package/dist/api/release/releaseStreamingPlatform.js +24 -0
- package/dist/api/release/releaseVideo.d.ts +59 -0
- package/dist/api/release/releaseVideo.js +72 -0
- package/dist/api/release/releaseVideoAppeal.d.ts +49 -0
- package/dist/api/release/releaseVideoAppeal.js +60 -0
- package/dist/api/release/releaseVideoFavorite.d.ts +39 -0
- package/dist/api/release/releaseVideoFavorite.js +48 -0
- package/dist/api/release/schedule.d.ts +19 -0
- package/dist/api/release/schedule.js +24 -0
- package/dist/api/release/type.d.ts +39 -0
- package/dist/api/release/type.js +48 -0
- package/dist/api/report.d.ts +189 -0
- package/dist/api/report.js +228 -0
- package/dist/api/search.d.ts +129 -0
- package/dist/api/search.js +156 -0
- package/dist/classes/Article.d.ts +18 -0
- package/dist/classes/Article.js +44 -0
- package/dist/classes/ArticleComment.d.ts +15 -0
- package/dist/classes/ArticleComment.js +37 -0
- package/dist/classes/BaseArticle.d.ts +21 -0
- package/dist/classes/BaseArticle.js +23 -0
- package/dist/classes/BaseComment.d.ts +22 -0
- package/dist/classes/BaseComment.js +25 -0
- package/dist/classes/BaseProfile.d.ts +29 -0
- package/dist/classes/BaseProfile.js +52 -0
- package/dist/classes/Channel.d.ts +47 -0
- package/dist/classes/Channel.js +108 -0
- package/dist/classes/Collection.d.ts +29 -0
- package/dist/classes/Collection.js +58 -0
- package/dist/classes/Dubber.d.ts +19 -0
- package/dist/classes/Dubber.js +24 -0
- package/dist/classes/Episode.d.ts +20 -0
- package/dist/classes/Episode.js +30 -0
- package/dist/classes/FullProfile.d.ts +70 -0
- package/dist/classes/FullProfile.js +92 -0
- package/dist/classes/Release.d.ts +91 -0
- package/dist/classes/Release.js +150 -0
- package/dist/classes/ReleaseComment.d.ts +16 -0
- package/dist/classes/ReleaseComment.js +45 -0
- package/dist/classes/Source.d.ts +15 -0
- package/dist/classes/Source.js +20 -0
- package/dist/classes/SuggestionArticle.d.ts +14 -0
- package/dist/classes/SuggestionArticle.js +30 -0
- package/dist/client.d.ts +49 -0
- package/dist/client.js +183 -0
- package/dist/endpoints.d.ts +63 -0
- package/dist/endpoints.js +67 -0
- package/dist/errors.d.ts +37 -0
- package/dist/errors.js +122 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.js +23 -0
- package/dist/types/auth.d.ts +127 -0
- package/dist/types/auth.js +47 -0
- package/dist/types/channel.d.ts +350 -0
- package/dist/types/channel.js +104 -0
- package/dist/types/collection.d.ts +105 -0
- package/dist/types/collection.js +44 -0
- package/dist/types/config.d.ts +41 -0
- package/dist/types/config.js +4 -0
- package/dist/types/index.d.ts +13 -0
- package/dist/types/index.js +26 -0
- package/dist/types/notification.d.ts +81 -0
- package/dist/types/notification.js +2 -0
- package/dist/types/profile.d.ts +339 -0
- package/dist/types/profile.js +46 -0
- package/dist/types/release.d.ts +467 -0
- package/dist/types/release.js +39 -0
- package/dist/types/request.d.ts +138 -0
- package/dist/types/request.js +2 -0
- package/dist/types/response.d.ts +104 -0
- package/dist/types/response.js +35 -0
- package/dist/types/settings.d.ts +119 -0
- package/dist/types/settings.js +48 -0
- package/dist/utils/ArticleBuilder.d.ts +38 -0
- package/dist/utils/ArticleBuilder.js +144 -0
- package/dist/utils/LinkParser.d.ts +253 -0
- package/dist/utils/LinkParser.js +253 -0
- package/dist/utils/Utils.d.ts +3 -0
- package/dist/utils/Utils.js +11 -0
- package/docs/DOCUMENTATION.md +290 -0
- package/package.json +55 -0
|
@@ -0,0 +1,290 @@
|
|
|
1
|
+
# Документация AnixApi
|
|
2
|
+
|
|
3
|
+
Полное руководство по установке, настройке и использованию библиотеки.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Содержание
|
|
8
|
+
|
|
9
|
+
1. [Установка](#установка)
|
|
10
|
+
2. [Быстрый старт](#быстрый-старт)
|
|
11
|
+
3. [Инициализация](#инициализация)
|
|
12
|
+
4. [Аутентификация](#аутентификация)
|
|
13
|
+
5. [Высокоуровневые методы](#высокоуровневые-методы)
|
|
14
|
+
6. [Прямой доступ к эндпоинтам](#прямой-доступ-к-эндпоинтам)
|
|
15
|
+
7. [Структура API](#структура-api)
|
|
16
|
+
8. [Обработка ошибок](#обработка-ошибок)
|
|
17
|
+
9. [Сборка из исходников](#сборка-из-исходников)
|
|
18
|
+
10. [TypeScript](#typescript)
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## Установка
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
npm install anixapi
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
Для разработки из репозитория:
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
git clone https://github.com/Maks1mio/anixapi
|
|
32
|
+
cd AnixApi
|
|
33
|
+
npm install
|
|
34
|
+
npm run build-win # Windows
|
|
35
|
+
npm run build # Linux / macOS
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## Быстрый старт
|
|
41
|
+
|
|
42
|
+
```javascript
|
|
43
|
+
const { Anixart, DefaultResult } = require("anixapi");
|
|
44
|
+
|
|
45
|
+
const client = new Anixart();
|
|
46
|
+
|
|
47
|
+
// Вход
|
|
48
|
+
const code = await client.login("username", "password");
|
|
49
|
+
if (code !== DefaultResult.Ok) {
|
|
50
|
+
console.error("Ошибка входа, код:", code);
|
|
51
|
+
process.exit(1);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
// Релиз (RAW-ответ API)
|
|
55
|
+
const raw = await client.endpoints.release.info(789, true);
|
|
56
|
+
console.log(raw);
|
|
57
|
+
|
|
58
|
+
// Профиль (обёртка-класс)
|
|
59
|
+
const profile = await client.getProfileById(456);
|
|
60
|
+
console.log(profile.login);
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## Инициализация
|
|
66
|
+
|
|
67
|
+
```typescript
|
|
68
|
+
import { Anixart } from "anixapi";
|
|
69
|
+
// const { Anixart } = require("anixapi");
|
|
70
|
+
|
|
71
|
+
const client = new Anixart({
|
|
72
|
+
baseUrl: "https://api-s.anixsekai.com", // опционально
|
|
73
|
+
token: "your-token", // опционально
|
|
74
|
+
throwOnApiError: false, // опционально, см. «Обработка ошибок»
|
|
75
|
+
});
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
| Параметр | Описание |
|
|
79
|
+
|----------|----------|
|
|
80
|
+
| `baseUrl` | Базовый URL API. По умолчанию `https://api-s.anixsekai.com` |
|
|
81
|
+
| `token` | Токен сессии для авторизованных запросов |
|
|
82
|
+
| `throwOnApiError` | Бросать `AnixApiError`, если `code !== 0` в ответе API |
|
|
83
|
+
|
|
84
|
+
Токен можно передать при создании или получить через `login()` — он сохранится в экземпляре автоматически.
|
|
85
|
+
|
|
86
|
+
---
|
|
87
|
+
|
|
88
|
+
## Аутентификация
|
|
89
|
+
|
|
90
|
+
### Логин и пароль
|
|
91
|
+
|
|
92
|
+
```typescript
|
|
93
|
+
import { DefaultResult } from "anixapi";
|
|
94
|
+
|
|
95
|
+
const code = await client.login("username", "password");
|
|
96
|
+
|
|
97
|
+
if (code === DefaultResult.Ok) {
|
|
98
|
+
console.log("Вход выполнен, token:", client.token);
|
|
99
|
+
}
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
### Готовый токен
|
|
103
|
+
|
|
104
|
+
```typescript
|
|
105
|
+
const client = new Anixart({ token: "existing-token" });
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
### OAuth и регистрация
|
|
109
|
+
|
|
110
|
+
```typescript
|
|
111
|
+
// Вход через VK
|
|
112
|
+
await client.endpoints.auth.signInWithVk({ vkAccessToken: "..." });
|
|
113
|
+
|
|
114
|
+
// Регистрация
|
|
115
|
+
await client.endpoints.auth.signUp({ login, email, password });
|
|
116
|
+
await client.endpoints.auth.verify({ login, email, password, code, hash });
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
Полный список методов: `client.endpoints.auth.*`
|
|
120
|
+
|
|
121
|
+
---
|
|
122
|
+
|
|
123
|
+
## Высокоуровневые методы
|
|
124
|
+
|
|
125
|
+
Класс `Anixart` предоставляет готовые методы, возвращающие доменные объекты (`Article`, `Channel`, `Release`, `FullProfile`, `Collection`).
|
|
126
|
+
|
|
127
|
+
| Метод | Описание |
|
|
128
|
+
|-------|----------|
|
|
129
|
+
| `getChannelById(id)` | Канал или `null` |
|
|
130
|
+
| `getProfileById(id)` | `FullProfile` |
|
|
131
|
+
| `getArticleById(id)` | Статья или `null` |
|
|
132
|
+
| `getReleaseById(id, extended?)` | Релиз или `null` |
|
|
133
|
+
| `getCollectionById(id)` | Коллекция или `null` |
|
|
134
|
+
| `getRandomRelease(extended?)` | Случайный релиз |
|
|
135
|
+
| `getLatestFeed(page)` | Массив `Article` |
|
|
136
|
+
| `getFavoriteCollections(page)` | Избранные коллекции |
|
|
137
|
+
| `getAllCollections(page, sort?)` | Все коллекции |
|
|
138
|
+
| `login(username, password)` | Авторизация, возвращает код ответа |
|
|
139
|
+
| `getEndpointUrls()` | Статический: зеркала API |
|
|
140
|
+
|
|
141
|
+
### Примеры
|
|
142
|
+
|
|
143
|
+
```typescript
|
|
144
|
+
const channel = await client.getChannelById(123);
|
|
145
|
+
if (channel) console.log(channel.title);
|
|
146
|
+
|
|
147
|
+
const profile = await client.getProfileById(456);
|
|
148
|
+
console.log(profile.login, profile.watchingCount);
|
|
149
|
+
|
|
150
|
+
const articles = await client.getLatestFeed(1);
|
|
151
|
+
articles.forEach(a => console.log(a.id));
|
|
152
|
+
|
|
153
|
+
const release = await client.getReleaseById(101, true);
|
|
154
|
+
if (release) console.log(release.titleRu);
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
---
|
|
158
|
+
|
|
159
|
+
## Прямой доступ к эндпоинтам
|
|
160
|
+
|
|
161
|
+
Все **275** эндпоинтов доступны через `client.endpoints`:
|
|
162
|
+
|
|
163
|
+
```typescript
|
|
164
|
+
// Релиз
|
|
165
|
+
const info = await client.endpoints.release.info(789, true);
|
|
166
|
+
|
|
167
|
+
// Профиль
|
|
168
|
+
const response = await client.endpoints.profile.byId(456);
|
|
169
|
+
|
|
170
|
+
// Канал
|
|
171
|
+
const channel = await client.endpoints.channel.channel(123);
|
|
172
|
+
|
|
173
|
+
// Друзья
|
|
174
|
+
const friends = await client.endpoints.profileFriend.friends(profileId, 0);
|
|
175
|
+
|
|
176
|
+
// Эпизоды
|
|
177
|
+
const episodes = await client.endpoints.episode.episodes(releaseId, typeId, sourceId);
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
Каждый метод возвращает типизированный ответ с полем `code`. Список возможных кодов описан в JSDoc и в enum'ах (`LoginResult`, `CommentAddResult` и т.д.).
|
|
181
|
+
|
|
182
|
+
### Устаревший алиас
|
|
183
|
+
|
|
184
|
+
```typescript
|
|
185
|
+
client.endpoints.settings // → profilePreference (deprecated)
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
---
|
|
189
|
+
|
|
190
|
+
## Структура API
|
|
191
|
+
|
|
192
|
+
```
|
|
193
|
+
client.endpoints
|
|
194
|
+
├── auth, config
|
|
195
|
+
├── channel, article, articleComment, articleSuggestion
|
|
196
|
+
├── collection, collectionMy, collectionFavorite, collectionComment
|
|
197
|
+
├── feed, discover, search
|
|
198
|
+
├── profile, profileFriend, profileHealth, profilePreference, …
|
|
199
|
+
├── release, episode, releaseComment, releaseVideo, …
|
|
200
|
+
├── notification, notificationPreference
|
|
201
|
+
├── export, import
|
|
202
|
+
└── report
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
Исходники разложены по доменам в `src/api/`:
|
|
206
|
+
|
|
207
|
+
```
|
|
208
|
+
src/api/
|
|
209
|
+
├── auth.ts, config.ts, discover.ts, feed.ts, search.ts, report.ts
|
|
210
|
+
├── channel/ — каналы и статьи
|
|
211
|
+
├── collection/ — коллекции
|
|
212
|
+
├── notification/ — уведомления
|
|
213
|
+
├── profile/ — профиль и настройки
|
|
214
|
+
├── release/ — релизы, эпизоды, видео
|
|
215
|
+
└── bookmarks/ — импорт / экспорт закладок
|
|
216
|
+
```
|
|
217
|
+
|
|
218
|
+
---
|
|
219
|
+
|
|
220
|
+
## Обработка ошибок
|
|
221
|
+
|
|
222
|
+
### Коды ответа API
|
|
223
|
+
|
|
224
|
+
Большинство запросов возвращают `{ code: number, ... }`. Успех — `DefaultResult.Ok` (0).
|
|
225
|
+
|
|
226
|
+
```typescript
|
|
227
|
+
import { DefaultResult, isApiOk, getApiErrorMessage, describeResultCode } from "anixapi";
|
|
228
|
+
|
|
229
|
+
const result = await client.endpoints.auth.signIn({ login, password });
|
|
230
|
+
|
|
231
|
+
if (!isApiOk(result)) {
|
|
232
|
+
console.error(getApiErrorMessage(result, "/auth/signIn"));
|
|
233
|
+
// code=3 (LoginResult.InvalidPassword | ...)
|
|
234
|
+
console.log(describeResultCode(result.code));
|
|
235
|
+
}
|
|
236
|
+
```
|
|
237
|
+
|
|
238
|
+
### Сетевые и парсинг-ошибки
|
|
239
|
+
|
|
240
|
+
При сбое сети, пустом ответе или невалидном JSON бросается `AnixApiError` с полями `path`, `httpStatus`, `body`.
|
|
241
|
+
|
|
242
|
+
### Автоброс при code !== 0
|
|
243
|
+
|
|
244
|
+
```typescript
|
|
245
|
+
const client = new Anixart({ throwOnApiError: true });
|
|
246
|
+
|
|
247
|
+
// или на один запрос
|
|
248
|
+
await client.endpoints.article.delete(123, { throwOnApiError: true });
|
|
249
|
+
```
|
|
250
|
+
|
|
251
|
+
---
|
|
252
|
+
|
|
253
|
+
## Сборка из исходников
|
|
254
|
+
|
|
255
|
+
```bash
|
|
256
|
+
npm run typecheck # проверка типов без сборки
|
|
257
|
+
npm run build-win # Windows: typecheck + tsc → dist/
|
|
258
|
+
npm run build # Unix: typecheck + tsc → dist/
|
|
259
|
+
```
|
|
260
|
+
|
|
261
|
+
Перед сборкой автоматически запускается `tsc --noEmit` — при ошибках типов билд прерывается.
|
|
262
|
+
|
|
263
|
+
---
|
|
264
|
+
|
|
265
|
+
## TypeScript
|
|
266
|
+
|
|
267
|
+
Библиотека поставляется с декларациями (`dist/index.d.ts`). Основные экспорты:
|
|
268
|
+
|
|
269
|
+
```typescript
|
|
270
|
+
import {
|
|
271
|
+
Anixart,
|
|
272
|
+
DefaultResult,
|
|
273
|
+
LoginResult,
|
|
274
|
+
AnixApiError,
|
|
275
|
+
isApiOk,
|
|
276
|
+
describeResultCode,
|
|
277
|
+
// типы ответов и сущностей
|
|
278
|
+
IProfile,
|
|
279
|
+
IRelease,
|
|
280
|
+
IArticle,
|
|
281
|
+
} from "anixapi";
|
|
282
|
+
```
|
|
283
|
+
|
|
284
|
+
Доменные классы-обёртки (`Article`, `Channel`, `Release`, `FullProfile`, `Collection`) создаются через методы `Anixart`, а не экспортируются напрямую из корня пакета.
|
|
285
|
+
|
|
286
|
+
---
|
|
287
|
+
|
|
288
|
+
## Лицензия
|
|
289
|
+
|
|
290
|
+
[GPL-2.0](../LICENSE)
|
package/package.json
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "anixapi",
|
|
3
|
+
"version": "0.2.1",
|
|
4
|
+
"description": "Unofficial Anixart API wrapper for Node.js (TypeScript)",
|
|
5
|
+
"type": "commonjs",
|
|
6
|
+
"main": "dist/index.js",
|
|
7
|
+
"types": "dist/index.d.ts",
|
|
8
|
+
"files": [
|
|
9
|
+
"dist",
|
|
10
|
+
"README.md",
|
|
11
|
+
"LICENSE",
|
|
12
|
+
"docs/DOCUMENTATION.md"
|
|
13
|
+
],
|
|
14
|
+
"scripts": {
|
|
15
|
+
"typecheck": "tsc --noEmit",
|
|
16
|
+
"clean": "node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\"",
|
|
17
|
+
"build": "npm run typecheck && npm run clean && tsc",
|
|
18
|
+
"build-win": "npm run build",
|
|
19
|
+
"prepublishOnly": "npm run build",
|
|
20
|
+
"publish:npm": "npm publish --access public",
|
|
21
|
+
"publish:yarn": "yarn publish"
|
|
22
|
+
},
|
|
23
|
+
"keywords": [
|
|
24
|
+
"api",
|
|
25
|
+
"anixart",
|
|
26
|
+
"anixapi",
|
|
27
|
+
"wrapper",
|
|
28
|
+
"anime",
|
|
29
|
+
"typescript"
|
|
30
|
+
],
|
|
31
|
+
"homepage": "https://github.com/Maks1mio/anixapi#readme",
|
|
32
|
+
"bugs": {
|
|
33
|
+
"url": "https://github.com/Maks1mio/anixapi/issues"
|
|
34
|
+
},
|
|
35
|
+
"repository": {
|
|
36
|
+
"type": "git",
|
|
37
|
+
"url": "git+https://github.com/Maks1mio/anixapi.git"
|
|
38
|
+
},
|
|
39
|
+
"author": "Roman U. (DesConnet) & Maksim K. (Maks1mio)",
|
|
40
|
+
"license": "GPL-2.0",
|
|
41
|
+
"engines": {
|
|
42
|
+
"node": ">=18"
|
|
43
|
+
},
|
|
44
|
+
"publishConfig": {
|
|
45
|
+
"access": "public",
|
|
46
|
+
"registry": "https://registry.npmjs.org/"
|
|
47
|
+
},
|
|
48
|
+
"devDependencies": {
|
|
49
|
+
"@types/node": "^22.10.2",
|
|
50
|
+
"typescript": "^5.7.2"
|
|
51
|
+
},
|
|
52
|
+
"dependencies": {
|
|
53
|
+
"form-data": "^4.0.2"
|
|
54
|
+
}
|
|
55
|
+
}
|