@pushwoosh/http-client 2.12.0 → 2.13.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.
@@ -228,4 +228,3 @@ export declare class GatewayTimeoutError extends ClassifiedError {
228
228
  */
229
229
  constructor(message?: string, details?: RequestDetails | null);
230
230
  }
231
- //# sourceMappingURL=http-client.errors.d.ts.map
@@ -0,0 +1,285 @@
1
+ /**
2
+ * Class describes an error related to HttpClient.
3
+ * Should be used to describe all other errors related to HttpClient, but never used as a separate instance.
4
+ */
5
+ export class HttpClientError extends Error {
6
+ /**
7
+ * Error code.
8
+ */
9
+ code;
10
+ /**
11
+ * Create an error instance.
12
+ *
13
+ * @param message - error message.
14
+ * @param code - error code.
15
+ */
16
+ constructor(message, code) {
17
+ super(message);
18
+ this.code = code;
19
+ Object.setPrototypeOf(this, HttpClientError.prototype);
20
+ }
21
+ }
22
+ /**
23
+ * Class describes a logic error in HttpClient.
24
+ */
25
+ export class LogicError extends HttpClientError {
26
+ /**
27
+ * Create an error instance.
28
+ *
29
+ * @param message - error message.
30
+ */
31
+ constructor(message) {
32
+ super(message, 0);
33
+ Object.setPrototypeOf(this, LogicError.prototype);
34
+ }
35
+ }
36
+ /**
37
+ * Class describes categorized errors.
38
+ * Should be used to describe all other categorized errors, but never used as a separate instance.
39
+ *
40
+ * @extends HttpClientError
41
+ */
42
+ export class ClassifiedError extends HttpClientError {
43
+ /**
44
+ * Request details.
45
+ */
46
+ details;
47
+ /**
48
+ * Create an error instance.
49
+ *
50
+ * @param message - error message.
51
+ * @param code - error code.
52
+ * @param details - request details.
53
+ */
54
+ constructor(message, code, details) {
55
+ super(message, code);
56
+ this.details = details;
57
+ Object.setPrototypeOf(this, ClassifiedError.prototype);
58
+ }
59
+ }
60
+ /**
61
+ * Error that doesn't fit into any category.
62
+ */
63
+ export class UntiledError extends ClassifiedError {
64
+ /**
65
+ * Create an error instance.
66
+ *
67
+ * @param message - error message.
68
+ * @param code - error code.
69
+ * @param details - request details.
70
+ */
71
+ constructor(message, code, details) {
72
+ super(message, code, details);
73
+ Object.setPrototypeOf(this, UntiledError.prototype);
74
+ }
75
+ }
76
+ /**
77
+ * Class describes "Bad Request" error.
78
+ */
79
+ export class BadRequestError extends ClassifiedError {
80
+ /**
81
+ * Create an error instance.
82
+ *
83
+ * @param message - error message.
84
+ * @param details - request details.
85
+ */
86
+ constructor(message = 'Bad Request!', details = null) {
87
+ super(message, 400, details);
88
+ Object.setPrototypeOf(this, BadRequestError.prototype);
89
+ }
90
+ }
91
+ /**
92
+ * Class describes "Unauthorized" error.
93
+ */
94
+ export class UnauthorizedError extends ClassifiedError {
95
+ /**
96
+ * Create an error instance.
97
+ *
98
+ * @param message - error message.
99
+ * @param details - request details.
100
+ */
101
+ constructor(message = 'Unauthorized!', details = null) {
102
+ super(message, 401, details);
103
+ Object.setPrototypeOf(this, UnauthorizedError.prototype);
104
+ }
105
+ }
106
+ /**
107
+ * Class describes "Forbidden" error.
108
+ */
109
+ export class ForbiddenError extends ClassifiedError {
110
+ /**
111
+ * Create an error instance.
112
+ *
113
+ * @param message - error message.
114
+ * @param details - request details.
115
+ */
116
+ constructor(message = 'Forbidden!', details = null) {
117
+ super(message, 403, details);
118
+ Object.setPrototypeOf(this, ForbiddenError.prototype);
119
+ }
120
+ }
121
+ /**
122
+ * Class describes "Not Found" error.
123
+ */
124
+ export class NotFoundError extends ClassifiedError {
125
+ /**
126
+ * Create an error instance.
127
+ *
128
+ * @param message - error message.
129
+ * @param details - request details.
130
+ */
131
+ constructor(message = 'Not Found!', details = null) {
132
+ super(message, 404, details);
133
+ Object.setPrototypeOf(this, NotFoundError.prototype);
134
+ }
135
+ }
136
+ /**
137
+ * Class describes "Method Not Allowed" error.
138
+ */
139
+ export class MethodNotAllowedError extends ClassifiedError {
140
+ /**
141
+ * Create an error instance.
142
+ *
143
+ * @param message - error message.
144
+ * @param details - request details.
145
+ */
146
+ constructor(message = 'Method Not Allowed!', details = null) {
147
+ super(message, 405, details);
148
+ Object.setPrototypeOf(this, MethodNotAllowedError.prototype);
149
+ }
150
+ }
151
+ /**
152
+ * Class describes "Payload Too Large" error.
153
+ */
154
+ export class PayloadTooLargeError extends ClassifiedError {
155
+ /**
156
+ * Create an error instance.
157
+ *
158
+ * @param message - error message.
159
+ * @param details - request details.
160
+ */
161
+ constructor(message = 'Payload Too Large!', details = null) {
162
+ super(message, 413, details);
163
+ Object.setPrototypeOf(this, PayloadTooLargeError.prototype);
164
+ }
165
+ }
166
+ /**
167
+ * Class describes "Unsupported Media Type" error.
168
+ */
169
+ export class UnsupportedMediaTypeError extends ClassifiedError {
170
+ /**
171
+ * Create an error instance.
172
+ *
173
+ * @param message - error message.
174
+ * @param details - request details.
175
+ */
176
+ constructor(message = 'Unsupported Media Type!', details = null) {
177
+ super(message, 415, details);
178
+ Object.setPrototypeOf(this, UnsupportedMediaTypeError.prototype);
179
+ }
180
+ }
181
+ /**
182
+ * Class describes "Unprocessable Entity" error.
183
+ */
184
+ export class UnprocessableEntityError extends ClassifiedError {
185
+ /**
186
+ * Create an error instance.
187
+ *
188
+ * @param message - error message.
189
+ * @param details - request details.
190
+ */
191
+ constructor(message = 'Unprocessable Entity!', details = null) {
192
+ super(message, 422, details);
193
+ Object.setPrototypeOf(this, UnprocessableEntityError.prototype);
194
+ }
195
+ }
196
+ /**
197
+ * Class describes "Too Many Requests" error.
198
+ */
199
+ export class TooManyRequestsError extends ClassifiedError {
200
+ /**
201
+ * Create an error instance.
202
+ *
203
+ * @param message - error message.
204
+ * @param details - request details.
205
+ */
206
+ constructor(message = 'Too Many Requests!', details = null) {
207
+ super(message, 429, details);
208
+ Object.setPrototypeOf(this, TooManyRequestsError.prototype);
209
+ }
210
+ }
211
+ /**
212
+ * Class describes "Internal Server Error" error.
213
+ */
214
+ export class InternalServerError extends ClassifiedError {
215
+ /**
216
+ * Create an error instance.
217
+ *
218
+ * @param message - error message.
219
+ * @param details - request details.
220
+ */
221
+ constructor(message = 'Internal Server Error!', details = null) {
222
+ super(message, 500, details);
223
+ Object.setPrototypeOf(this, InternalServerError.prototype);
224
+ }
225
+ }
226
+ /**
227
+ * Class describes "Not Implemented" error.
228
+ */
229
+ export class NotImplementedError extends ClassifiedError {
230
+ /**
231
+ * Create an error instance.
232
+ *
233
+ * @param message - error message.
234
+ * @param details - request details.
235
+ */
236
+ constructor(message = 'Not Implemented!', details = null) {
237
+ super(message, 501, details);
238
+ Object.setPrototypeOf(this, NotImplementedError.prototype);
239
+ }
240
+ }
241
+ /**
242
+ * Class describes "Bad Gateway" error.
243
+ */
244
+ export class BadGatewayError extends ClassifiedError {
245
+ /**
246
+ * Create an error instance.
247
+ *
248
+ * @param message - error message.
249
+ * @param details - request details.
250
+ */
251
+ constructor(message = 'Bad Gateway!', details = null) {
252
+ super(message, 502, details);
253
+ Object.setPrototypeOf(this, BadGatewayError.prototype);
254
+ }
255
+ }
256
+ /**
257
+ * Class describes "Service Unavailable" error.
258
+ */
259
+ export class ServiceUnavailableError extends ClassifiedError {
260
+ /**
261
+ * Create an error instance.
262
+ *
263
+ * @param message - error message.
264
+ * @param details - request details.
265
+ */
266
+ constructor(message = 'Service Unavailable!', details = null) {
267
+ super(message, 503, details);
268
+ Object.setPrototypeOf(this, ServiceUnavailableError.prototype);
269
+ }
270
+ }
271
+ /**
272
+ * Class describes "Gateway Timeout" error.
273
+ */
274
+ export class GatewayTimeoutError extends ClassifiedError {
275
+ /**
276
+ * Create an error instance.
277
+ *
278
+ * @param message - error message.
279
+ * @param details - request details.
280
+ */
281
+ constructor(message = 'Gateway Timeout!', details = null) {
282
+ super(message, 504, details);
283
+ Object.setPrototypeOf(this, GatewayTimeoutError.prototype);
284
+ }
285
+ }
@@ -1,3 +1,2 @@
1
1
  import { type Params } from './http-client.types';
2
2
  export declare function updatePath(url: string, params: Params): string;
3
- //# sourceMappingURL=http-client.helpers.d.ts.map
@@ -0,0 +1,14 @@
1
+ import { compile } from 'path-to-regexp';
2
+ const domainRegExp = /[a-zA-z]+:\/\/[^/]*/;
3
+ function isUrlContainsDomain(url) {
4
+ return !!url.match(domainRegExp);
5
+ }
6
+ export function updatePath(url, params) {
7
+ let domain = '';
8
+ let path = `${url}`;
9
+ if (isUrlContainsDomain(url)) {
10
+ [domain] = url.match(domainRegExp);
11
+ path = url.slice(domain.length);
12
+ }
13
+ return domain + compile(path)(params);
14
+ }
@@ -185,4 +185,3 @@ export declare class HttpClient {
185
185
  */
186
186
  setAccessToken: (accessToken: string) => void;
187
187
  }
188
- //# sourceMappingURL=http-client.main.d.ts.map