solver-sdk 8.1.0 → 8.2.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.
Files changed (43) hide show
  1. package/README.md +84 -14
  2. package/dist/cjs/api/credits-api.js +31 -11
  3. package/dist/cjs/api/credits-api.js.map +1 -1
  4. package/dist/cjs/errors/sdk-errors.js +216 -0
  5. package/dist/cjs/errors/sdk-errors.js.map +1 -0
  6. package/dist/cjs/index.js +20 -3
  7. package/dist/cjs/index.js.map +1 -1
  8. package/dist/cjs/types/index.js.map +1 -1
  9. package/dist/cjs/utils/error-mapper.js +149 -0
  10. package/dist/cjs/utils/error-mapper.js.map +1 -0
  11. package/dist/cjs/utils/http-client.js +9 -37
  12. package/dist/cjs/utils/http-client.js.map +1 -1
  13. package/dist/esm/api/credits-api.js +31 -11
  14. package/dist/esm/api/credits-api.js.map +1 -1
  15. package/dist/esm/errors/sdk-errors.js +198 -0
  16. package/dist/esm/errors/sdk-errors.js.map +1 -0
  17. package/dist/esm/index.js +4 -2
  18. package/dist/esm/index.js.map +1 -1
  19. package/dist/esm/types/index.js.map +1 -1
  20. package/dist/esm/utils/error-mapper.js +145 -0
  21. package/dist/esm/utils/error-mapper.js.map +1 -0
  22. package/dist/esm/utils/http-client.js +9 -37
  23. package/dist/esm/utils/http-client.js.map +1 -1
  24. package/dist/types/api/credits-api.d.ts +24 -4
  25. package/dist/types/api/credits-api.d.ts.map +1 -1
  26. package/dist/types/errors/sdk-errors.d.ts +156 -0
  27. package/dist/types/errors/sdk-errors.d.ts.map +1 -0
  28. package/dist/types/index.d.ts +2 -1
  29. package/dist/types/index.d.ts.map +1 -1
  30. package/dist/types/interfaces/http-client.d.ts +0 -9
  31. package/dist/types/interfaces/http-client.d.ts.map +1 -1
  32. package/dist/types/types/index.d.ts +1 -1
  33. package/dist/types/types/index.d.ts.map +1 -1
  34. package/dist/types/utils/error-mapper.d.ts +24 -0
  35. package/dist/types/utils/error-mapper.d.ts.map +1 -0
  36. package/dist/types/utils/http-client.d.ts.map +1 -1
  37. package/package.json +1 -1
  38. package/dist/cjs/errors/limit-errors.js +0 -80
  39. package/dist/cjs/errors/limit-errors.js.map +0 -1
  40. package/dist/esm/errors/limit-errors.js +0 -74
  41. package/dist/esm/errors/limit-errors.js.map +0 -1
  42. package/dist/types/errors/limit-errors.d.ts +0 -61
  43. package/dist/types/errors/limit-errors.d.ts.map +0 -1
@@ -0,0 +1,149 @@
1
+ "use strict";
2
+ /**
3
+ * Централизованный маппер ошибок
4
+ * Преобразует Axios errors в типизированные SDK исключения
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.ErrorMapper = void 0;
8
+ const sdk_errors_js_1 = require("../errors/sdk-errors.js");
9
+ /**
10
+ * Класс для маппинга HTTP ошибок на типизированные исключения SDK
11
+ */
12
+ class ErrorMapper {
13
+ /**
14
+ * Маппит Axios error на типизированное SDK исключение
15
+ * @param axiosError Ошибка от Axios
16
+ * @returns Типизированное исключение SDK
17
+ */
18
+ static mapError(axiosError) {
19
+ const response = axiosError.response;
20
+ // 1. Network errors (нет ответа от сервера)
21
+ if (!response) {
22
+ return new sdk_errors_js_1.NetworkError(axiosError.message || 'Network error occurred', { originalError: axiosError });
23
+ }
24
+ const status = response.status;
25
+ const data = response.data || {};
26
+ // Извлекаем errorType из backend response
27
+ // Backend структура: { success: false, error: { type, message, code }, requestId, timestamp }
28
+ const errorType = data.error?.type || this.inferErrorType(status);
29
+ const message = data.error?.message || data.message || axiosError.message || 'Unknown error';
30
+ const details = {
31
+ ...data,
32
+ originalError: axiosError,
33
+ };
34
+ // 2. Специальные случаи (приоритет - проверяем первыми)
35
+ // LimitExceededError: 403 + usage_limit_exceeded
36
+ if (status === 403 && (data.details?.error === 'usage_limit_exceeded' || data.error === 'credits_limit_exceeded')) {
37
+ return new sdk_errors_js_1.LimitExceededError(data);
38
+ }
39
+ // RateLimitError: 429
40
+ if (status === 429) {
41
+ return new sdk_errors_js_1.RateLimitError(data);
42
+ }
43
+ // 3. Маппинг по errorType из backend
44
+ switch (errorType) {
45
+ case 'unauthorized':
46
+ return new sdk_errors_js_1.AuthenticationError(message, details);
47
+ case 'forbidden':
48
+ return new sdk_errors_js_1.ForbiddenError(message, details);
49
+ case 'validation_error':
50
+ return new sdk_errors_js_1.ValidationError(message, details);
51
+ case 'not_found':
52
+ return new sdk_errors_js_1.NotFoundError(message, details);
53
+ case 'conflict':
54
+ return new sdk_errors_js_1.ConflictError(message, details);
55
+ case 'bad_request':
56
+ return new sdk_errors_js_1.BadRequestError(message, details);
57
+ case 'database_error':
58
+ return new sdk_errors_js_1.DatabaseError(message, details);
59
+ case 'timeout_error':
60
+ case 'gateway_timeout':
61
+ return new sdk_errors_js_1.TimeoutError(message, details);
62
+ case 'internal_server_error':
63
+ case 'server_error':
64
+ return new sdk_errors_js_1.InternalServerError(message, details);
65
+ case 'service_unavailable':
66
+ return new sdk_errors_js_1.ServiceUnavailableError(message, details);
67
+ case 'rate_limit_exceeded':
68
+ return new sdk_errors_js_1.RateLimitError(data);
69
+ case 'usage_limit_exceeded':
70
+ case 'credits_limit_exceeded':
71
+ return new sdk_errors_js_1.LimitExceededError(data);
72
+ default:
73
+ // 4. Fallback по HTTP статусу
74
+ return this.mapByStatusCode(status, message, details);
75
+ }
76
+ }
77
+ /**
78
+ * Определяет тип ошибки по HTTP статусу (fallback)
79
+ */
80
+ static inferErrorType(status) {
81
+ if (status === 401)
82
+ return 'unauthorized';
83
+ if (status === 403)
84
+ return 'forbidden';
85
+ if (status === 404)
86
+ return 'not_found';
87
+ if (status === 422)
88
+ return 'validation_error';
89
+ if (status === 409)
90
+ return 'conflict';
91
+ if (status === 400)
92
+ return 'bad_request';
93
+ if (status === 429)
94
+ return 'rate_limit_exceeded';
95
+ if (status === 408)
96
+ return 'timeout_error';
97
+ if (status === 503)
98
+ return 'service_unavailable';
99
+ if (status === 504)
100
+ return 'gateway_timeout';
101
+ if (status >= 500)
102
+ return 'internal_server_error';
103
+ return 'unknown_error';
104
+ }
105
+ /**
106
+ * Маппит ошибку по HTTP статусу (fallback когда errorType неизвестен)
107
+ */
108
+ static mapByStatusCode(status, message, details) {
109
+ // 4xx Client Errors
110
+ if (status === 401) {
111
+ return new sdk_errors_js_1.AuthenticationError(message, details);
112
+ }
113
+ if (status === 403) {
114
+ return new sdk_errors_js_1.ForbiddenError(message, details);
115
+ }
116
+ if (status === 404) {
117
+ return new sdk_errors_js_1.NotFoundError(message, details);
118
+ }
119
+ if (status === 422) {
120
+ return new sdk_errors_js_1.ValidationError(message, details);
121
+ }
122
+ if (status === 409) {
123
+ return new sdk_errors_js_1.ConflictError(message, details);
124
+ }
125
+ if (status === 400) {
126
+ return new sdk_errors_js_1.BadRequestError(message, details);
127
+ }
128
+ if (status === 408) {
129
+ return new sdk_errors_js_1.TimeoutError(message, details);
130
+ }
131
+ if (status === 429) {
132
+ return new sdk_errors_js_1.RateLimitError(details);
133
+ }
134
+ // 5xx Server Errors
135
+ if (status === 503) {
136
+ return new sdk_errors_js_1.ServiceUnavailableError(message, details);
137
+ }
138
+ if (status === 504) {
139
+ return new sdk_errors_js_1.GatewayTimeoutError(message, details);
140
+ }
141
+ if (status >= 500) {
142
+ return new sdk_errors_js_1.InternalServerError(message, details);
143
+ }
144
+ // Unknown error - возвращаем базовый класс
145
+ return new sdk_errors_js_1.BaseSDKError(status, 'unknown_error', message, details);
146
+ }
147
+ }
148
+ exports.ErrorMapper = ErrorMapper;
149
+ //# sourceMappingURL=error-mapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-mapper.js","sourceRoot":"","sources":["../../../src/utils/error-mapper.ts"],"names":[],"mappings":"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"}
@@ -38,7 +38,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.HttpClient = void 0;
40
40
  const axios_1 = __importDefault(require("axios"));
41
- const limit_errors_js_1 = require("../errors/limit-errors.js");
41
+ const error_mapper_js_1 = require("./error-mapper.js");
42
42
  /**
43
43
  * Определение типа среды выполнения
44
44
  * @returns 'browser' | 'node'
@@ -75,8 +75,7 @@ class HttpClient {
75
75
  maxRetryDelay: 10000,
76
76
  retryStatusCodes: [408, 429, 500, 502, 503, 504]
77
77
  },
78
- httpsAgent: options.httpsAgent,
79
- suppressAuthErrors: options.suppressAuthErrors !== false // По умолчанию true
78
+ httpsAgent: options.httpsAgent
80
79
  };
81
80
  this.environment = getEnvironment();
82
81
  // Создаем Axios инстанс с базовыми настройками
@@ -96,26 +95,11 @@ class HttpClient {
96
95
  // Интерцептор для ответов
97
96
  this.axiosInstance.interceptors.response.use((response) => response.data, async (error) => {
98
97
  const { config, response } = error;
99
- // СПЕЦИАЛЬНАЯ ОБРАБОТКА: 403 с usage_limit_exceeded
100
- if (response?.status === 403 && response?.data?.details?.error === 'usage_limit_exceeded') {
101
- throw new limit_errors_js_1.LimitExceededError(response.data);
102
- }
103
- // СПЕЦИАЛЬНАЯ ОБРАБОТКА: 429 rate limit
104
- if (response?.status === 429 && response?.data?.details?.error === 'rate_limit_exceeded') {
105
- throw new limit_errors_js_1.RateLimitError(response.data);
106
- }
107
- // GRACEFUL AUTH ERRORS: Если suppressAuthErrors включен
108
- if (this.options.suppressAuthErrors && response) {
109
- const status = response.status;
110
- if (status === 401 || status === 403) {
111
- const errorMessage = response.data?.message || error.message || 'Authentication error';
112
- console.debug(`[SDK HttpClient] Auth error ${status}, handled gracefully:`, errorMessage);
113
- return null;
114
- }
115
- }
98
+ // ЦЕНТРАЛИЗОВАННЫЙ МАППИНГ через ErrorMapper
99
+ const mappedError = error_mapper_js_1.ErrorMapper.mapError(error);
116
100
  // RETRY LOGIC: Если нет конфига запроса или это уже повторный запрос, или skipRetry установлен
117
101
  if (!config || config._retryCount || config.skipRetry) {
118
- return Promise.reject(error);
102
+ throw mappedError;
119
103
  }
120
104
  config._retryCount = config._retryCount || 0;
121
105
  const retryConfig = this.options.retry;
@@ -132,8 +116,8 @@ class HttpClient {
132
116
  // Делаем повторную попытку
133
117
  return this.axiosInstance(config);
134
118
  }
135
- // Если не нужно делать повторную попытку, возвращаем ошибку
136
- return Promise.reject(error);
119
+ // Если не нужно делать повторную попытку, выбрасываем типизированную ошибку
120
+ throw mappedError;
137
121
  });
138
122
  }
139
123
  /**
@@ -176,20 +160,8 @@ class HttpClient {
176
160
  return await this.axiosInstance.request(axiosConfig);
177
161
  }
178
162
  catch (error) {
179
- // 🔇 Graceful handling для auth ошибок (избегаем unhandled rejection в VS Code Extension Host)
180
- if (this.options.suppressAuthErrors && error?.response) {
181
- const status = error.response.status;
182
- // Для auth ошибок логируем тихо и НЕ бросаем наружу
183
- if (status === 401 || status === 403) {
184
- const errorMessage = error.response?.data?.message || error.message || 'Authentication error';
185
- console.debug(`[SDK HttpClient] Auth error ${status}, handled gracefully:`, errorMessage);
186
- // Возвращаем null вместо выброса ошибки
187
- // Extension может проверить результат и обработать
188
- return null;
189
- }
190
- }
191
- // Для остальных ошибок бросаем как обычно
192
- throw this.handleError(error);
163
+ // Все ошибки маппятся через ErrorMapper
164
+ throw error_mapper_js_1.ErrorMapper.mapError(error);
193
165
  }
194
166
  }
195
167
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"http-client.js","sourceRoot":"","sources":["../../../src/utils/http-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http-client.js","sourceRoot":"","sources":["../../../src/utils/http-client.ts"],"names":[],"mappings":"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"}
@@ -10,19 +10,24 @@ export class CreditsApi {
10
10
  * Получить баланс credits (WorkCoins)
11
11
  *
12
12
  * @returns Текущий баланс credits пользователя
13
- * @throws {Error} 401 если не авторизован
13
+ * @throws {AuthenticationError} При истекшем или невалидном access token (401)
14
+ * @throws {ForbiddenError} При отсутствии доступа (403)
15
+ * @throws {InternalServerError} При ошибке сервера (500)
14
16
  */
15
17
  async getBalance() {
16
- return await this.httpClient.get('/api/credits/balance');
18
+ return await this.httpClient.get('/api/v1/credits/balance');
17
19
  }
18
20
  /**
19
21
  * Получить статус credits (с рекомендациями)
20
22
  *
21
23
  * @returns Статус credits и рекомендации
22
- * @throws {Error} 401 если не авторизован
24
+ * @throws {AuthenticationError} При истекшем или невалидном access token (401)
25
+ * @throws {ForbiddenError} При отсутствии доступа (403)
26
+ * @throws {LimitExceededError} При превышении лимита credits
27
+ * @throws {InternalServerError} При ошибке сервера (500)
23
28
  */
24
29
  async getStatus() {
25
- return await this.httpClient.get('/api/credits/status');
30
+ return await this.httpClient.get('/api/v1/credits/status');
26
31
  }
27
32
  /**
28
33
  * Оценить стоимость операции в credits (WorkCoins) до выполнения
@@ -31,9 +36,12 @@ export class CreditsApi {
31
36
  * @param model - Модель (haiku/sonnet/auto)
32
37
  * @param operationType - Тип операции
33
38
  * @returns Оценка стоимости в credits (WorkCoins)
39
+ * @throws {AuthenticationError} При истекшем или невалидном access token (401)
40
+ * @throws {ValidationError} При некорректных параметрах запроса (422)
41
+ * @throws {InternalServerError} При ошибке сервера (500)
34
42
  */
35
43
  async estimate(tokens, model = 'haiku', operationType = 'simple_prompt') {
36
- return await this.httpClient.post('/api/credits/estimate', {
44
+ return await this.httpClient.post('/api/v1/credits/estimate', {
37
45
  tokens,
38
46
  model,
39
47
  operationType,
@@ -43,35 +51,47 @@ export class CreditsApi {
43
51
  * Получить конфигурацию overage (pay-as-you-go)
44
52
  *
45
53
  * @returns Настройки overage пользователя
54
+ * @throws {AuthenticationError} При истекшем или невалидном access token (401)
55
+ * @throws {ForbiddenError} При отсутствии доступа (403)
56
+ * @throws {InternalServerError} При ошибке сервера (500)
46
57
  */
47
58
  async getOverageConfig() {
48
- return await this.httpClient.get('/api/credits/overage');
59
+ return await this.httpClient.get('/api/v1/credits/overage');
49
60
  }
50
61
  /**
51
62
  * Получить статистику overage за текущий месяц
52
63
  *
53
64
  * @returns Статистика использования overage
65
+ * @throws {AuthenticationError} При истекшем или невалидном access token (401)
66
+ * @throws {ForbiddenError} При отсутствии доступа (403)
67
+ * @throws {InternalServerError} При ошибке сервера (500)
54
68
  */
55
69
  async getOverageStats() {
56
- return await this.httpClient.get('/api/credits/overage/stats');
70
+ return await this.httpClient.get('/api/v1/credits/overage/stats');
57
71
  }
58
72
  /**
59
73
  * Включить/выключить overage
60
74
  *
61
75
  * @param enabled - true для включения, false для выключения
62
- * @throws {AxiosError} 403 если пользователь на Free плане
76
+ * @throws {AuthenticationError} При истекшем или невалидном access token (401)
77
+ * @throws {ForbiddenError} Если пользователь на Free плане (403)
78
+ * @throws {ValidationError} При некорректных параметрах (422)
79
+ * @throws {InternalServerError} При ошибке сервера (500)
63
80
  */
64
81
  async toggleOverage(enabled) {
65
- await this.httpClient.post('/api/credits/overage/toggle', { enabled });
82
+ await this.httpClient.post('/api/v1/credits/overage/toggle', { enabled });
66
83
  }
67
84
  /**
68
85
  * Обновить лимит overage
69
86
  *
70
87
  * @param limitCredits - Новый лимит overage в credits
71
- * @throws {AxiosError} 400 если лимит некорректный
88
+ * @throws {AuthenticationError} При истекшем или невалидном access token (401)
89
+ * @throws {BadRequestError} Если лимит некорректный (400)
90
+ * @throws {ValidationError} При ошибке валидации (422)
91
+ * @throws {InternalServerError} При ошибке сервера (500)
72
92
  */
73
93
  async updateOverageLimit(limitCredits) {
74
- await this.httpClient.post('/api/credits/overage/limit', { limitCredits });
94
+ await this.httpClient.post('/api/v1/credits/overage/limit', { limitCredits });
75
95
  }
76
96
  }
77
97
  //# sourceMappingURL=credits-api.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"credits-api.js","sourceRoot":"","sources":["../../../src/api/credits-api.ts"],"names":[],"mappings":"AAWA;;;GAGG;AACH,MAAM,OAAO,UAAU;IACrB,YAAoB,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;IAAG,CAAC;IAE9C;;;;;OAKG;IACH,KAAK,CAAC,UAAU;QACd,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAiB,sBAAsB,CAAC,CAAC;IAC3E,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,SAAS;QACb,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAgB,qBAAqB,CAAC,CAAC;IACzE,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,QAAQ,CACZ,MAAc,EACd,QAAmB,OAAO,EAC1B,gBAA+B,eAAe;QAE9C,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAkB,uBAAuB,EAAE;YAC1E,MAAM;YACN,KAAK;YACL,aAAa;SACd,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,gBAAgB;QACpB,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAgB,sBAAsB,CAAC,CAAC;IAC1E,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,eAAe;QACnB,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAe,4BAA4B,CAAC,CAAC;IAC/E,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,aAAa,CAAC,OAAgB;QAClC,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,6BAA6B,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IACzE,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,kBAAkB,CAAC,YAAoB;QAC3C,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,4BAA4B,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC;IAC7E,CAAC;CACF"}
1
+ {"version":3,"file":"credits-api.js","sourceRoot":"","sources":["../../../src/api/credits-api.ts"],"names":[],"mappings":"AAWA;;;GAGG;AACH,MAAM,OAAO,UAAU;IACrB,YAAoB,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;IAAG,CAAC;IAE9C;;;;;;;OAOG;IACH,KAAK,CAAC,UAAU;QACd,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAiB,yBAAyB,CAAC,CAAC;IAC9E,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,SAAS;QACb,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAgB,wBAAwB,CAAC,CAAC;IAC5E,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,QAAQ,CACZ,MAAc,EACd,QAAmB,OAAO,EAC1B,gBAA+B,eAAe;QAE9C,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAkB,0BAA0B,EAAE;YAC7E,MAAM;YACN,KAAK;YACL,aAAa;SACd,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,gBAAgB;QACpB,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAgB,yBAAyB,CAAC,CAAC;IAC7E,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,eAAe;QACnB,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAe,+BAA+B,CAAC,CAAC;IAClF,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,aAAa,CAAC,OAAgB;QAClC,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,gCAAgC,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IAC5E,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,kBAAkB,CAAC,YAAoB;QAC3C,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,+BAA+B,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC;IAChF,CAAC;CACF"}
@@ -0,0 +1,198 @@
1
+ /**
2
+ * Централизованные классы ошибок SDK
3
+ * Покрывают все типы ошибок backend с типизацией
4
+ */
5
+ /**
6
+ * Базовый класс для всех SDK ошибок
7
+ */
8
+ export class BaseSDKError extends Error {
9
+ constructor(statusCode, errorType, message, details) {
10
+ super(message);
11
+ this.name = this.constructor.name;
12
+ this.statusCode = statusCode;
13
+ this.errorType = errorType;
14
+ this.requestId = details?.requestId;
15
+ this.timestamp = details?.timestamp;
16
+ this.rawResponse = details;
17
+ // Поддержка stack trace в V8
18
+ if (Error.captureStackTrace) {
19
+ Error.captureStackTrace(this, this.constructor);
20
+ }
21
+ }
22
+ }
23
+ // ========================================
24
+ // CLIENT ERRORS (4xx)
25
+ // ========================================
26
+ /**
27
+ * Ошибка аутентификации (401)
28
+ * Выбрасывается при истекшем или невалидном access token
29
+ */
30
+ export class AuthenticationError extends BaseSDKError {
31
+ constructor(message, details) {
32
+ super(401, 'unauthorized', message, details);
33
+ /** Можно ли повторить запрос после refresh токена */
34
+ this.shouldRetry = true;
35
+ }
36
+ }
37
+ /**
38
+ * Ошибка доступа (403)
39
+ * Выбрасывается когда доступ запрещен (не путать с LimitExceededError)
40
+ */
41
+ export class ForbiddenError extends BaseSDKError {
42
+ constructor(message, details) {
43
+ super(403, 'forbidden', message, details);
44
+ this.reason = details?.reason;
45
+ }
46
+ }
47
+ /**
48
+ * Ошибка валидации (422)
49
+ * Выбрасывается при невалидных данных в запросе
50
+ */
51
+ export class ValidationError extends BaseSDKError {
52
+ constructor(message, details) {
53
+ super(422, 'validation_error', message, details);
54
+ this.fields = details?.fields;
55
+ }
56
+ }
57
+ /**
58
+ * Ресурс не найден (404)
59
+ */
60
+ export class NotFoundError extends BaseSDKError {
61
+ constructor(message, details) {
62
+ super(404, 'not_found', message, details);
63
+ this.resource = details?.resource;
64
+ }
65
+ }
66
+ /**
67
+ * Конфликт данных (409)
68
+ * Выбрасывается при попытке создать дубликат или конфликтующую запись
69
+ */
70
+ export class ConflictError extends BaseSDKError {
71
+ constructor(message, details) {
72
+ super(409, 'conflict', message, details);
73
+ }
74
+ }
75
+ /**
76
+ * Некорректный запрос (400)
77
+ */
78
+ export class BadRequestError extends BaseSDKError {
79
+ constructor(message, details) {
80
+ super(400, 'bad_request', message, details);
81
+ }
82
+ }
83
+ // ========================================
84
+ // SERVER ERRORS (5xx)
85
+ // ========================================
86
+ /**
87
+ * Внутренняя ошибка сервера (500)
88
+ */
89
+ export class InternalServerError extends BaseSDKError {
90
+ constructor(message, details) {
91
+ super(500, 'internal_server_error', message, details);
92
+ }
93
+ }
94
+ /**
95
+ * Сервис недоступен (503)
96
+ */
97
+ export class ServiceUnavailableError extends BaseSDKError {
98
+ constructor(message, details) {
99
+ super(503, 'service_unavailable', message, details);
100
+ this.retryAfter = details?.retryAfter;
101
+ }
102
+ }
103
+ /**
104
+ * Таймаут gateway (504)
105
+ */
106
+ export class GatewayTimeoutError extends BaseSDKError {
107
+ constructor(message, details) {
108
+ super(504, 'gateway_timeout', message, details);
109
+ }
110
+ }
111
+ // ========================================
112
+ // СПЕЦИАЛЬНЫЕ ОШИБКИ
113
+ // ========================================
114
+ /**
115
+ * Ошибка базы данных
116
+ * Выбрасывается при SQL ошибках или проблемах с БД
117
+ */
118
+ export class DatabaseError extends BaseSDKError {
119
+ constructor(message, details) {
120
+ super(400, 'database_error', message, details);
121
+ }
122
+ }
123
+ /**
124
+ * Таймаут запроса (408)
125
+ */
126
+ export class TimeoutError extends BaseSDKError {
127
+ constructor(message, details) {
128
+ super(408, 'timeout_error', message, details);
129
+ }
130
+ }
131
+ /**
132
+ * Ошибка сети
133
+ * Выбрасывается когда запрос не смог достичь сервера
134
+ */
135
+ export class NetworkError extends BaseSDKError {
136
+ constructor(message, details) {
137
+ super(0, 'network_error', message, details);
138
+ }
139
+ }
140
+ // ========================================
141
+ // СУЩЕСТВУЮЩИЕ КЛАССЫ (обратная совместимость)
142
+ // ========================================
143
+ /**
144
+ * Ошибка превышения лимита использования
145
+ * Выбрасывается при HTTP 403 с details.error === 'usage_limit_exceeded'
146
+ */
147
+ export class LimitExceededError extends BaseSDKError {
148
+ constructor(errorData) {
149
+ const message = errorData.message || errorData.details?.message || 'Usage limit exceeded';
150
+ super(403, 'usage_limit_exceeded', message, errorData);
151
+ this.statusType = errorData.details?.statusType || 'unknown';
152
+ this.status = errorData.details?.status || 'blocked';
153
+ this.details = errorData.details || {};
154
+ this.action = errorData.details?.action;
155
+ this.balance = errorData.details?.balance;
156
+ }
157
+ /**
158
+ * Проверяет, заблокирован ли пользователь
159
+ */
160
+ isBlocked() {
161
+ return !this.details.canMakeRequest;
162
+ }
163
+ /**
164
+ * Получает URL для действия пользователя
165
+ */
166
+ getActionUrl() {
167
+ return this.action?.ctaUrl;
168
+ }
169
+ }
170
+ /**
171
+ * Ошибка превышения rate limit
172
+ * Выбрасывается при HTTP 429
173
+ */
174
+ export class RateLimitError extends BaseSDKError {
175
+ constructor(errorData) {
176
+ const message = errorData.message || errorData.details?.message || 'Rate limit exceeded';
177
+ super(429, 'rate_limit_exceeded', message, errorData);
178
+ this.details = errorData.details || {};
179
+ this.retryAfter = this.details.retryAfter || 60;
180
+ // Парсим дату из ISO строки или используем текущее время + retryAfter
181
+ this.retryAt = this.details.retryAt
182
+ ? new Date(this.details.retryAt)
183
+ : new Date(Date.now() + this.retryAfter * 1000);
184
+ }
185
+ /**
186
+ * Получает время ожидания в миллисекундах
187
+ */
188
+ getRetryDelayMs() {
189
+ return Math.max(0, this.retryAt.getTime() - Date.now());
190
+ }
191
+ /**
192
+ * Проверяет, прошло ли время ожидания
193
+ */
194
+ canRetryNow() {
195
+ return Date.now() >= this.retryAt.getTime();
196
+ }
197
+ }
198
+ //# sourceMappingURL=sdk-errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sdk-errors.js","sourceRoot":"","sources":["../../../src/errors/sdk-errors.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;GAEG;AACH,MAAM,OAAO,YAAa,SAAQ,KAAK;IAgBrC,YAAY,UAAkB,EAAE,SAAiB,EAAE,OAAe,EAAE,OAAa;QAC/E,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAClC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,SAAS,GAAG,OAAO,EAAE,SAAS,CAAC;QACpC,IAAI,CAAC,SAAS,GAAG,OAAO,EAAE,SAAS,CAAC;QACpC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;QAE3B,6BAA6B;QAC7B,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;YAC5B,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;CACF;AAED,2CAA2C;AAC3C,sBAAsB;AACtB,2CAA2C;AAE3C;;;GAGG;AACH,MAAM,OAAO,mBAAoB,SAAQ,YAAY;IAInD,YAAY,OAAe,EAAE,OAAa;QACxC,KAAK,CAAC,GAAG,EAAE,cAAc,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAJ/C,qDAAqD;QACrC,gBAAW,GAAY,IAAI,CAAC;IAI5C,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,OAAO,cAAe,SAAQ,YAAY;IAI9C,YAAY,OAAe,EAAE,OAAa;QACxC,KAAK,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,GAAG,OAAO,EAAE,MAAM,CAAC;IAChC,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,OAAO,eAAgB,SAAQ,YAAY;IAI/C,YAAY,OAAe,EAAE,OAAa;QACxC,KAAK,CAAC,GAAG,EAAE,kBAAkB,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACjD,IAAI,CAAC,MAAM,GAAG,OAAO,EAAE,MAAM,CAAC;IAChC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,YAAY;IAI7C,YAAY,OAAe,EAAE,OAAa;QACxC,KAAK,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAC1C,IAAI,CAAC,QAAQ,GAAG,OAAO,EAAE,QAAQ,CAAC;IACpC,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,OAAO,aAAc,SAAQ,YAAY;IAC7C,YAAY,OAAe,EAAE,OAAa;QACxC,KAAK,CAAC,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,eAAgB,SAAQ,YAAY;IAC/C,YAAY,OAAe,EAAE,OAAa;QACxC,KAAK,CAAC,GAAG,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;CACF;AAED,2CAA2C;AAC3C,sBAAsB;AACtB,2CAA2C;AAE3C;;GAEG;AACH,MAAM,OAAO,mBAAoB,SAAQ,YAAY;IACnD,YAAY,OAAe,EAAE,OAAa;QACxC,KAAK,CAAC,GAAG,EAAE,uBAAuB,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACxD,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,uBAAwB,SAAQ,YAAY;IAIvD,YAAY,OAAe,EAAE,OAAa;QACxC,KAAK,CAAC,GAAG,EAAE,qBAAqB,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACpD,IAAI,CAAC,UAAU,GAAG,OAAO,EAAE,UAAU,CAAC;IACxC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,mBAAoB,SAAQ,YAAY;IACnD,YAAY,OAAe,EAAE,OAAa;QACxC,KAAK,CAAC,GAAG,EAAE,iBAAiB,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAClD,CAAC;CACF;AAED,2CAA2C;AAC3C,qBAAqB;AACrB,2CAA2C;AAE3C;;;GAGG;AACH,MAAM,OAAO,aAAc,SAAQ,YAAY;IAC7C,YAAY,OAAe,EAAE,OAAa;QACxC,KAAK,CAAC,GAAG,EAAE,gBAAgB,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACjD,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,YAAa,SAAQ,YAAY;IAC5C,YAAY,OAAe,EAAE,OAAa;QACxC,KAAK,CAAC,GAAG,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,OAAO,YAAa,SAAQ,YAAY;IAC5C,YAAY,OAAe,EAAE,OAAa;QACxC,KAAK,CAAC,CAAC,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;CACF;AAED,2CAA2C;AAC3C,+CAA+C;AAC/C,2CAA2C;AAE3C;;;GAGG;AACH,MAAM,OAAO,kBAAmB,SAAQ,YAAY;IAgBlD,YAAY,SAAc;QACxB,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC,OAAO,EAAE,OAAO,IAAI,sBAAsB,CAAC;QAC1F,KAAK,CAAC,GAAG,EAAE,sBAAsB,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;QAEvD,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC,OAAO,EAAE,UAAU,IAAI,SAAS,CAAC;QAC7D,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE,MAAM,IAAI,SAAS,CAAC;QACrD,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,IAAI,EAAE,CAAC;QACvC,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;QACxC,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC;IAC5C,CAAC;IAED;;OAEG;IACI,SAAS;QACd,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;IACtC,CAAC;IAED;;OAEG;IACI,YAAY;QACjB,OAAO,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC;IAC7B,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,OAAO,cAAe,SAAQ,YAAY;IAU9C,YAAY,SAAc;QACxB,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC,OAAO,EAAE,OAAO,IAAI,qBAAqB,CAAC;QACzF,KAAK,CAAC,GAAG,EAAE,qBAAqB,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;QAEtD,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,IAAI,EAAE,CAAC;QACvC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC;QAEhD,sEAAsE;QACtE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO;YACjC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;YAChC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC;IACpD,CAAC;IAED;;OAEG;IACI,eAAe;QACpB,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED;;OAEG;IACI,WAAW;QAChB,OAAO,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;IAC9C,CAAC;CACF"}
package/dist/esm/index.js CHANGED
@@ -17,8 +17,10 @@ export * from './api/updates-api.js';
17
17
  export * from './api/user-api.js';
18
18
  // Экспортируем типы лимитов
19
19
  export * from './types/limit-status.js';
20
- // Экспортируем классы ошибок лимитов
21
- export * from './errors/limit-errors.js';
20
+ // Экспортируем все классы ошибок SDK
21
+ export * from './errors/sdk-errors.js';
22
+ // Явно экспортируем основные классы ошибок для удобства импорта
23
+ export { AuthenticationError, ForbiddenError, ValidationError, NotFoundError, ConflictError, BadRequestError, InternalServerError, ServiceUnavailableError, GatewayTimeoutError, DatabaseError, TimeoutError, NetworkError, LimitExceededError, RateLimitError, BaseSDKError, } from './errors/sdk-errors.js';
22
24
  // Экспортируем Credits API и типы
23
25
  export * from './types/credits.js';
24
26
  export * from './api/credits-api.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,2DAA2D;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,4CAA4C;AAC5C,OAAO,EAAE,aAAa,EAAE,CAAC;AAEzB,OAAO,EAAE,UAAU,EAAE,CAAC;AAEtB,0CAA0C;AAC1C,cAAc,6BAA6B,CAAC;AAE5C,gCAAgC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAElC,4BAA4B;AAC5B,cAAc,yBAAyB,CAAC;AAExC,qCAAqC;AACrC,cAAc,0BAA0B,CAAC;AAEzC,kCAAkC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AAErC,kDAAkD;AAClD,cAAc,4BAA4B,CAAC;AAE3C,iEAAiE;AACjE,OAAO,EACL,mBAAmB,EACnB,uBAAuB,EACvB,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,uBAAuB,EACvB,8BAA8B,EAC9B,6BAA6B,EAC7B,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,uBAAuB,CAAE,+DAA+D;EACzF,MAAM,4BAA4B,CAAC;AAEpC,oEAAoE;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAClF,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAE9E,+BAA+B;AAC/B,cAAc,2BAA2B,CAAC;AAE1C,wCAAwC;AACxC,cAAc,iCAAiC,CAAC;AAEhD,2BAA2B;AAC3B,cAAc,oBAAoB,CAAC;AAEnC,iDAAiD;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE1D,uBAAuB;AACvB,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,2DAA2D;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,4CAA4C;AAC5C,OAAO,EAAE,aAAa,EAAE,CAAC;AAEzB,OAAO,EAAE,UAAU,EAAE,CAAC;AAEtB,0CAA0C;AAC1C,cAAc,6BAA6B,CAAC;AAE5C,gCAAgC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAElC,4BAA4B;AAC5B,cAAc,yBAAyB,CAAC;AAExC,qCAAqC;AACrC,cAAc,wBAAwB,CAAC;AAEvC,gEAAgE;AAChE,OAAO,EACL,mBAAmB,EACnB,cAAc,EACd,eAAe,EACf,aAAa,EACb,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,uBAAuB,EACvB,mBAAmB,EACnB,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,cAAc,EACd,YAAY,GACb,MAAM,wBAAwB,CAAC;AAEhC,kCAAkC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AAErC,kDAAkD;AAClD,cAAc,4BAA4B,CAAC;AAE3C,iEAAiE;AACjE,OAAO,EACL,mBAAmB,EACnB,uBAAuB,EACvB,kBAAkB,EAClB,qBAAqB,EACrB,oBAAoB,EACpB,uBAAuB,EACvB,8BAA8B,EAC9B,6BAA6B,EAC7B,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,uBAAuB,CAAE,+DAA+D;EACzF,MAAM,4BAA4B,CAAC;AAEpC,oEAAoE;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAClF,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAE9E,+BAA+B;AAC/B,cAAc,2BAA2B,CAAC;AAE1C,wCAAwC;AACxC,cAAc,iCAAiC,CAAC;AAEhD,2BAA2B;AAC3B,cAAc,oBAAoB,CAAC;AAEnC,iDAAiD;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE1D,uBAAuB;AACvB,eAAe,aAAa,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAucH,gCAAgC;AAChC,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAgeH,gCAAgC;AAChC,cAAc,cAAc,CAAC"}