@hyperttp/core 1.3.0 → 1.3.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/Core/HyperCore.d.ts +127 -18
- package/Core/HyperCore.d.ts.map +1 -1
- package/Core/HyperCore.js +154 -42
- package/Core/HyperCore.js.map +1 -1
- package/package.json +1 -1
- package/transports/manager.d.ts +74 -0
- package/transports/manager.d.ts.map +1 -1
- package/transports/manager.js +100 -0
- package/transports/manager.js.map +1 -1
- package/transports/node.d.ts +29 -0
- package/transports/node.d.ts.map +1 -1
- package/transports/node.js +29 -4
- package/transports/node.js.map +1 -1
- package/utils/decompress.d.ts +22 -0
- package/utils/decompress.d.ts.map +1 -1
- package/utils/decompress.js +39 -0
- package/utils/decompress.js.map +1 -1
- package/utils/normalize.d.ts +26 -0
- package/utils/normalize.d.ts.map +1 -1
- package/utils/normalize.js +34 -0
- package/utils/normalize.js.map +1 -1
- package/utils/pipeline.d.ts +42 -10
- package/utils/pipeline.d.ts.map +1 -1
- package/utils/pipeline.js +34 -15
- package/utils/pipeline.js.map +1 -1
- package/utils/retryUtils.d.ts +20 -0
- package/utils/retryUtils.d.ts.map +1 -1
- package/utils/retryUtils.js +24 -0
- package/utils/retryUtils.js.map +1 -1
package/Core/HyperCore.d.ts
CHANGED
|
@@ -1,59 +1,168 @@
|
|
|
1
1
|
import type { IHyperCore, HyperTransport, HttpClientOptions, HyperPlugin, InternalRequest, HttpResponse, RequestInterface, StreamResponse, RequestBodyData } from "@hyperttp/types";
|
|
2
|
+
/**
|
|
3
|
+
* @ru Основной класс HTTP-клиента Hyperttp. Управляет транспортами, плагинами, перехватчиками, повторными попытками и сжатием.
|
|
4
|
+
* @en Core HTTP client class for Hyperttp. Manages transports, plugins, interceptors, retries, and compression.
|
|
5
|
+
*/
|
|
2
6
|
export declare class HyperCore implements IHyperCore {
|
|
7
|
+
/** @ru Конфигурация клиента (базовый URL, таймауты, заголовки и т.д.). @en Client configuration (base URL, timeouts, headers, etc.). */
|
|
3
8
|
config: HttpClientOptions;
|
|
4
9
|
private readonly transportManager;
|
|
5
10
|
private readonly defaultHeaders;
|
|
6
11
|
private readonly pluginCtx;
|
|
7
12
|
private readonly pipelines;
|
|
13
|
+
/**
|
|
14
|
+
* @ru Создаёт экземпляр HyperCore.
|
|
15
|
+
* @en Creates an instance of HyperCore.
|
|
16
|
+
* @param config - Client configuration options.
|
|
17
|
+
* @param transport - Optional custom transport implementation.
|
|
18
|
+
*/
|
|
8
19
|
constructor(config?: HttpClientOptions, transport?: HyperTransport);
|
|
9
20
|
private get transport();
|
|
10
21
|
private ensureTransport;
|
|
22
|
+
private dispatchInternal;
|
|
11
23
|
/**
|
|
12
|
-
*
|
|
24
|
+
* @ru Выполняет HTTP-запрос с полным контролем (через объект InternalRequest).
|
|
25
|
+
* @en Performs an HTTP request with full control (via InternalRequest object).
|
|
26
|
+
* @param req - Internal request object.
|
|
27
|
+
* @returns Promise with the HTTP response.
|
|
13
28
|
*/
|
|
14
|
-
private dispatchInternal;
|
|
15
29
|
dispatch<T = unknown>(req: InternalRequest): Promise<HttpResponse<T>>;
|
|
16
30
|
/**
|
|
17
|
-
*
|
|
31
|
+
* @ru Регистрирует плагин для расширения функциональности клиента.
|
|
32
|
+
* @en Registers a plugin to extend client functionality.
|
|
33
|
+
* @param plugin - Plugin instance.
|
|
34
|
+
* @returns This instance for chaining.
|
|
18
35
|
*/
|
|
19
36
|
use(plugin: HyperPlugin): this;
|
|
20
37
|
/**
|
|
21
|
-
*
|
|
38
|
+
* @ru Выполняет GET-запрос и возвращает ответ в виде потока (StreamResponse).
|
|
39
|
+
* @en Performs a GET request and returns the response as a stream (StreamResponse).
|
|
40
|
+
* @param req - Request URL or RequestInterface object.
|
|
41
|
+
* @param signal - Optional abort signal.
|
|
42
|
+
* @returns Promise with the stream response.
|
|
22
43
|
*/
|
|
23
44
|
stream(req: RequestInterface | string, signal?: AbortSignal): Promise<StreamResponse<unknown>>;
|
|
45
|
+
/**
|
|
46
|
+
* @ru Выполняет POST-запрос и возвращает ответ в виде потока (StreamResponse).
|
|
47
|
+
* @en Performs a POST request and returns the response as a stream (StreamResponse).
|
|
48
|
+
* @param req - Request URL or RequestInterface object.
|
|
49
|
+
* @param body - Request body data.
|
|
50
|
+
* @param signal - Optional abort signal.
|
|
51
|
+
* @returns Promise with the stream response.
|
|
52
|
+
*/
|
|
24
53
|
postStream<T = unknown>(req: RequestInterface | string, body?: RequestBodyData, signal?: AbortSignal): Promise<StreamResponse<T>>;
|
|
54
|
+
/**
|
|
55
|
+
* @ru Выполняет GET-запрос.
|
|
56
|
+
* @en Performs a GET request.
|
|
57
|
+
* @param req - Request URL or RequestInterface object.
|
|
58
|
+
* @param signal - Optional abort signal.
|
|
59
|
+
* @returns Promise with the HTTP response.
|
|
60
|
+
*/
|
|
25
61
|
get<T = unknown>(req: RequestInterface | string, signal?: AbortSignal): Promise<HttpResponse<T>>;
|
|
62
|
+
/**
|
|
63
|
+
* @ru Выполняет POST-запрос.
|
|
64
|
+
* @en Performs a POST request.
|
|
65
|
+
* @param req - Request URL or RequestInterface object.
|
|
66
|
+
* @param body - Request body data.
|
|
67
|
+
* @param signal - Optional abort signal.
|
|
68
|
+
* @returns Promise with the HTTP response.
|
|
69
|
+
*/
|
|
26
70
|
post<T = unknown>(req: RequestInterface | string, body?: RequestBodyData, signal?: AbortSignal): Promise<HttpResponse<T>>;
|
|
71
|
+
/**
|
|
72
|
+
* @ru Выполняет PUT-запрос.
|
|
73
|
+
* @en Performs a PUT request.
|
|
74
|
+
* @param req - Request URL or RequestInterface object.
|
|
75
|
+
* @param body - Request body data.
|
|
76
|
+
* @param signal - Optional abort signal.
|
|
77
|
+
* @returns Promise with the HTTP response.
|
|
78
|
+
*/
|
|
27
79
|
put<T = unknown>(req: RequestInterface | string, body?: RequestBodyData, signal?: AbortSignal): Promise<HttpResponse<T>>;
|
|
80
|
+
/**
|
|
81
|
+
* @ru Выполняет PATCH-запрос.
|
|
82
|
+
* @en Performs a PATCH request.
|
|
83
|
+
* @param req - Request URL or RequestInterface object.
|
|
84
|
+
* @param body - Request body data.
|
|
85
|
+
* @param signal - Optional abort signal.
|
|
86
|
+
* @returns Promise with the HTTP response.
|
|
87
|
+
*/
|
|
28
88
|
patch<T = unknown>(req: RequestInterface | string, body?: RequestBodyData, signal?: AbortSignal): Promise<HttpResponse<T>>;
|
|
89
|
+
/**
|
|
90
|
+
* @ru Выполняет DELETE-запрос.
|
|
91
|
+
* @en Performs a DELETE request.
|
|
92
|
+
* @param req - Request URL or RequestInterface object.
|
|
93
|
+
* @param signal - Optional abort signal.
|
|
94
|
+
* @returns Promise with the HTTP response.
|
|
95
|
+
*/
|
|
29
96
|
delete<T = unknown>(req: RequestInterface | string, signal?: AbortSignal): Promise<HttpResponse<T>>;
|
|
97
|
+
/**
|
|
98
|
+
* @ru Выполняет OPTIONS-запрос.
|
|
99
|
+
* @en Performs an OPTIONS request.
|
|
100
|
+
* @param req - Request URL or RequestInterface object.
|
|
101
|
+
* @param body - Optional request body data.
|
|
102
|
+
* @param signal - Optional abort signal.
|
|
103
|
+
* @returns Promise with the HTTP response.
|
|
104
|
+
*/
|
|
30
105
|
options<T = unknown>(req: RequestInterface | string, body?: RequestBodyData, signal?: AbortSignal): Promise<HttpResponse<T>>;
|
|
106
|
+
/**
|
|
107
|
+
* @ru Выполняет HEAD-запрос.
|
|
108
|
+
* @en Performs a HEAD request.
|
|
109
|
+
* @param req - Request URL or RequestInterface object.
|
|
110
|
+
* @param signal - Optional abort signal.
|
|
111
|
+
* @returns Promise with the HTTP response (body is always null).
|
|
112
|
+
*/
|
|
31
113
|
head(req: RequestInterface | string, signal?: AbortSignal): Promise<HttpResponse<null>>;
|
|
114
|
+
/**
|
|
115
|
+
* @ru Создаёт новый экземпляр HyperCore с расширенной конфигурацией (поверх текущей).
|
|
116
|
+
* @en Creates a new HyperCore instance with extended configuration (on top of current).
|
|
117
|
+
* @param options - Additional configuration options.
|
|
118
|
+
* @returns New HyperCore instance.
|
|
119
|
+
*/
|
|
32
120
|
extend(options: Partial<HttpClientOptions>): HyperCore;
|
|
33
|
-
create(options: Partial<HttpClientOptions>): HyperCore;
|
|
34
|
-
destroy(graceful?: boolean): Promise<void>;
|
|
35
|
-
json<T = unknown>(req: RequestInterface | string, signal?: AbortSignal): Promise<T>;
|
|
36
|
-
text(req: RequestInterface | string, signal?: AbortSignal): Promise<string>;
|
|
37
|
-
dump(req: RequestInterface | string, signal?: AbortSignal): Promise<void>;
|
|
38
121
|
/**
|
|
39
|
-
*
|
|
122
|
+
* @ru Алиас для extend(). Создаёт новый экземпляр HyperCore.
|
|
123
|
+
* @en Alias for extend(). Creates a new HyperCore instance.
|
|
124
|
+
* @param options - Configuration options.
|
|
125
|
+
* @returns New HyperCore instance.
|
|
40
126
|
*/
|
|
41
|
-
|
|
127
|
+
create(options: Partial<HttpClientOptions>): HyperCore;
|
|
42
128
|
/**
|
|
43
|
-
*
|
|
129
|
+
* @ru Уничтожает клиент, закрывая соединения и очищая ресурсы.
|
|
130
|
+
* @en Destroys the client, closing connections and cleaning up resources.
|
|
131
|
+
* @param graceful - If true, attempts graceful shutdown (default: true).
|
|
132
|
+
* @returns Promise that resolves when destruction is complete.
|
|
44
133
|
*/
|
|
45
|
-
|
|
134
|
+
destroy(graceful?: boolean): Promise<void>;
|
|
46
135
|
/**
|
|
47
|
-
*
|
|
136
|
+
* @ru Выполняет запрос и сразу возвращает распарсенный JSON (сокращённый метод).
|
|
137
|
+
* @en Performs a request and immediately returns parsed JSON (shortcut method).
|
|
138
|
+
* @param req - Request URL or RequestInterface object.
|
|
139
|
+
* @param signal - Optional abort signal.
|
|
140
|
+
* @returns Promise with the parsed JSON value.
|
|
141
|
+
* @throws If the response does not contain a json() method.
|
|
48
142
|
*/
|
|
49
|
-
|
|
143
|
+
json<T = unknown>(req: RequestInterface | string, signal?: AbortSignal): Promise<T>;
|
|
50
144
|
/**
|
|
51
|
-
*
|
|
145
|
+
* @ru Выполняет запрос и возвращает тело как строку (сокращённый метод).
|
|
146
|
+
* @en Performs a request and returns the body as a string (shortcut method).
|
|
147
|
+
* @param req - Request URL or RequestInterface object.
|
|
148
|
+
* @param signal - Optional abort signal.
|
|
149
|
+
* @returns Promise with the response text.
|
|
150
|
+
* @throws If the response does not contain a text() method.
|
|
52
151
|
*/
|
|
53
|
-
|
|
152
|
+
text(req: RequestInterface | string, signal?: AbortSignal): Promise<string>;
|
|
54
153
|
/**
|
|
55
|
-
*
|
|
154
|
+
* @ru Выполняет запрос и немедленно отменяет (сбрасывает) тело ответа без чтения.
|
|
155
|
+
* @en Performs a request and immediately discards the response body without reading.
|
|
156
|
+
* @param req - Request URL or RequestInterface object.
|
|
157
|
+
* @param signal - Optional abort signal.
|
|
158
|
+
* @returns Promise that resolves after dumping the response.
|
|
159
|
+
* @throws If the response does not contain a dump() method.
|
|
56
160
|
*/
|
|
161
|
+
dump(req: RequestInterface | string, signal?: AbortSignal): Promise<void>;
|
|
162
|
+
private runResponsePipeline;
|
|
163
|
+
private handleDispatchError;
|
|
164
|
+
private applyDecompression;
|
|
165
|
+
private buildInternalRequest;
|
|
57
166
|
private createInternalRequestObject;
|
|
58
167
|
private appendQueryParams;
|
|
59
168
|
private dispatchShortcut;
|
package/Core/HyperCore.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HyperCore.d.ts","sourceRoot":"","sources":["../../src/Core/HyperCore.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,cAAc,EACd,iBAAiB,EAEjB,WAAW,EACX,eAAe,EACf,YAAY,EAEZ,gBAAgB,EAChB,cAAc,EACd,eAAe,EAEhB,MAAM,iBAAiB,CAAC;AA4BzB,qBAAa,SAAU,YAAW,UAAU;
|
|
1
|
+
{"version":3,"file":"HyperCore.d.ts","sourceRoot":"","sources":["../../src/Core/HyperCore.ts"],"names":[],"mappings":"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"}
|
package/Core/HyperCore.js
CHANGED
|
@@ -4,12 +4,23 @@ import { TransportManager } from "../transports/manager.js";
|
|
|
4
4
|
import { createPipelines, executeErrorPipeline, executeRequestPipeline, executeResponsePipeline, executeResponseDataPipeline, insertHookSorted, } from "../utils/pipeline.js";
|
|
5
5
|
import { normalizeBody, normalizeHeaders, normalizeUrl, } from "../utils/normalize.js";
|
|
6
6
|
import { decompressBuffer, createDecompressStream, } from "../utils/decompress.js";
|
|
7
|
+
/**
|
|
8
|
+
* @ru Основной класс HTTP-клиента Hyperttp. Управляет транспортами, плагинами, перехватчиками, повторными попытками и сжатием.
|
|
9
|
+
* @en Core HTTP client class for Hyperttp. Manages transports, plugins, interceptors, retries, and compression.
|
|
10
|
+
*/
|
|
7
11
|
export class HyperCore {
|
|
12
|
+
/** @ru Конфигурация клиента (базовый URL, таймауты, заголовки и т.д.). @en Client configuration (base URL, timeouts, headers, etc.). */
|
|
8
13
|
config;
|
|
9
14
|
transportManager;
|
|
10
15
|
defaultHeaders;
|
|
11
16
|
pluginCtx;
|
|
12
17
|
pipelines = createPipelines();
|
|
18
|
+
/**
|
|
19
|
+
* @ru Создаёт экземпляр HyperCore.
|
|
20
|
+
* @en Creates an instance of HyperCore.
|
|
21
|
+
* @param config - Client configuration options.
|
|
22
|
+
* @param transport - Optional custom transport implementation.
|
|
23
|
+
*/
|
|
13
24
|
constructor(config = defaultConfig, transport) {
|
|
14
25
|
this.config = {
|
|
15
26
|
...defaultConfig,
|
|
@@ -31,9 +42,6 @@ export class HyperCore {
|
|
|
31
42
|
ensureTransport() {
|
|
32
43
|
return this.transportManager.get();
|
|
33
44
|
}
|
|
34
|
-
/**
|
|
35
|
-
* Центральный метод обработки запросов
|
|
36
|
-
*/
|
|
37
45
|
async dispatchInternal(req) {
|
|
38
46
|
try {
|
|
39
47
|
if (this.pipelines.request.length > 0) {
|
|
@@ -43,7 +51,6 @@ export class HyperCore {
|
|
|
43
51
|
return shortCircuit;
|
|
44
52
|
}
|
|
45
53
|
}
|
|
46
|
-
req.headers = normalizeHeaders(req.headers);
|
|
47
54
|
const transport = this.transport || (await this.ensureTransport());
|
|
48
55
|
let rawResponse = await transport.execute(req);
|
|
49
56
|
if (this.pipelines.responseData.length > 0) {
|
|
@@ -61,11 +68,20 @@ export class HyperCore {
|
|
|
61
68
|
return this.handleDispatchError(error, req);
|
|
62
69
|
}
|
|
63
70
|
}
|
|
71
|
+
/**
|
|
72
|
+
* @ru Выполняет HTTP-запрос с полным контролем (через объект InternalRequest).
|
|
73
|
+
* @en Performs an HTTP request with full control (via InternalRequest object).
|
|
74
|
+
* @param req - Internal request object.
|
|
75
|
+
* @returns Promise with the HTTP response.
|
|
76
|
+
*/
|
|
64
77
|
async dispatch(req) {
|
|
65
78
|
return this.dispatchInternal(req);
|
|
66
79
|
}
|
|
67
80
|
/**
|
|
68
|
-
*
|
|
81
|
+
* @ru Регистрирует плагин для расширения функциональности клиента.
|
|
82
|
+
* @en Registers a plugin to extend client functionality.
|
|
83
|
+
* @param plugin - Plugin instance.
|
|
84
|
+
* @returns This instance for chaining.
|
|
69
85
|
*/
|
|
70
86
|
use(plugin) {
|
|
71
87
|
const isEnabled = plugin.enabled ? plugin.enabled(this.config) : true;
|
|
@@ -108,39 +124,110 @@ export class HyperCore {
|
|
|
108
124
|
return this;
|
|
109
125
|
}
|
|
110
126
|
/**
|
|
111
|
-
*
|
|
127
|
+
* @ru Выполняет GET-запрос и возвращает ответ в виде потока (StreamResponse).
|
|
128
|
+
* @en Performs a GET request and returns the response as a stream (StreamResponse).
|
|
129
|
+
* @param req - Request URL or RequestInterface object.
|
|
130
|
+
* @param signal - Optional abort signal.
|
|
131
|
+
* @returns Promise with the stream response.
|
|
112
132
|
*/
|
|
113
133
|
async stream(req, signal) {
|
|
114
134
|
const internalReq = this.buildInternalRequest("GET", req, undefined, signal);
|
|
115
135
|
internalReq.meta = { ...internalReq.meta, responseType: "stream" };
|
|
116
136
|
return this.dispatchInternal(internalReq);
|
|
117
137
|
}
|
|
138
|
+
/**
|
|
139
|
+
* @ru Выполняет POST-запрос и возвращает ответ в виде потока (StreamResponse).
|
|
140
|
+
* @en Performs a POST request and returns the response as a stream (StreamResponse).
|
|
141
|
+
* @param req - Request URL or RequestInterface object.
|
|
142
|
+
* @param body - Request body data.
|
|
143
|
+
* @param signal - Optional abort signal.
|
|
144
|
+
* @returns Promise with the stream response.
|
|
145
|
+
*/
|
|
118
146
|
async postStream(req, body, signal) {
|
|
119
147
|
const internalReq = this.buildInternalRequest("POST", req, body, signal);
|
|
120
148
|
internalReq.meta = { ...internalReq.meta, responseType: "stream" };
|
|
121
149
|
return this.dispatchInternal(internalReq);
|
|
122
150
|
}
|
|
151
|
+
/**
|
|
152
|
+
* @ru Выполняет GET-запрос.
|
|
153
|
+
* @en Performs a GET request.
|
|
154
|
+
* @param req - Request URL or RequestInterface object.
|
|
155
|
+
* @param signal - Optional abort signal.
|
|
156
|
+
* @returns Promise with the HTTP response.
|
|
157
|
+
*/
|
|
123
158
|
get(req, signal) {
|
|
124
159
|
return this.dispatch(this.buildInternalRequest("GET", req, undefined, signal));
|
|
125
160
|
}
|
|
161
|
+
/**
|
|
162
|
+
* @ru Выполняет POST-запрос.
|
|
163
|
+
* @en Performs a POST request.
|
|
164
|
+
* @param req - Request URL or RequestInterface object.
|
|
165
|
+
* @param body - Request body data.
|
|
166
|
+
* @param signal - Optional abort signal.
|
|
167
|
+
* @returns Promise with the HTTP response.
|
|
168
|
+
*/
|
|
126
169
|
post(req, body, signal) {
|
|
127
170
|
return this.dispatch(this.buildInternalRequest("POST", req, body, signal));
|
|
128
171
|
}
|
|
172
|
+
/**
|
|
173
|
+
* @ru Выполняет PUT-запрос.
|
|
174
|
+
* @en Performs a PUT request.
|
|
175
|
+
* @param req - Request URL or RequestInterface object.
|
|
176
|
+
* @param body - Request body data.
|
|
177
|
+
* @param signal - Optional abort signal.
|
|
178
|
+
* @returns Promise with the HTTP response.
|
|
179
|
+
*/
|
|
129
180
|
put(req, body, signal) {
|
|
130
181
|
return this.dispatch(this.buildInternalRequest("PUT", req, body, signal));
|
|
131
182
|
}
|
|
183
|
+
/**
|
|
184
|
+
* @ru Выполняет PATCH-запрос.
|
|
185
|
+
* @en Performs a PATCH request.
|
|
186
|
+
* @param req - Request URL or RequestInterface object.
|
|
187
|
+
* @param body - Request body data.
|
|
188
|
+
* @param signal - Optional abort signal.
|
|
189
|
+
* @returns Promise with the HTTP response.
|
|
190
|
+
*/
|
|
132
191
|
patch(req, body, signal) {
|
|
133
192
|
return this.dispatch(this.buildInternalRequest("PATCH", req, body, signal));
|
|
134
193
|
}
|
|
194
|
+
/**
|
|
195
|
+
* @ru Выполняет DELETE-запрос.
|
|
196
|
+
* @en Performs a DELETE request.
|
|
197
|
+
* @param req - Request URL or RequestInterface object.
|
|
198
|
+
* @param signal - Optional abort signal.
|
|
199
|
+
* @returns Promise with the HTTP response.
|
|
200
|
+
*/
|
|
135
201
|
delete(req, signal) {
|
|
136
202
|
return this.dispatch(this.buildInternalRequest("DELETE", req, undefined, signal));
|
|
137
203
|
}
|
|
204
|
+
/**
|
|
205
|
+
* @ru Выполняет OPTIONS-запрос.
|
|
206
|
+
* @en Performs an OPTIONS request.
|
|
207
|
+
* @param req - Request URL or RequestInterface object.
|
|
208
|
+
* @param body - Optional request body data.
|
|
209
|
+
* @param signal - Optional abort signal.
|
|
210
|
+
* @returns Promise with the HTTP response.
|
|
211
|
+
*/
|
|
138
212
|
options(req, body, signal) {
|
|
139
213
|
return this.dispatch(this.buildInternalRequest("OPTIONS", req, body, signal));
|
|
140
214
|
}
|
|
215
|
+
/**
|
|
216
|
+
* @ru Выполняет HEAD-запрос.
|
|
217
|
+
* @en Performs a HEAD request.
|
|
218
|
+
* @param req - Request URL or RequestInterface object.
|
|
219
|
+
* @param signal - Optional abort signal.
|
|
220
|
+
* @returns Promise with the HTTP response (body is always null).
|
|
221
|
+
*/
|
|
141
222
|
head(req, signal) {
|
|
142
223
|
return this.dispatch(this.buildInternalRequest("HEAD", req, undefined, signal));
|
|
143
224
|
}
|
|
225
|
+
/**
|
|
226
|
+
* @ru Создаёт новый экземпляр HyperCore с расширенной конфигурацией (поверх текущей).
|
|
227
|
+
* @en Creates a new HyperCore instance with extended configuration (on top of current).
|
|
228
|
+
* @param options - Additional configuration options.
|
|
229
|
+
* @returns New HyperCore instance.
|
|
230
|
+
*/
|
|
144
231
|
extend(options) {
|
|
145
232
|
return new HyperCore({
|
|
146
233
|
...this.config,
|
|
@@ -148,33 +235,66 @@ export class HyperCore {
|
|
|
148
235
|
network: { ...this.config.network, ...options.network },
|
|
149
236
|
}, this.transport ?? undefined);
|
|
150
237
|
}
|
|
238
|
+
/**
|
|
239
|
+
* @ru Алиас для extend(). Создаёт новый экземпляр HyperCore.
|
|
240
|
+
* @en Alias for extend(). Creates a new HyperCore instance.
|
|
241
|
+
* @param options - Configuration options.
|
|
242
|
+
* @returns New HyperCore instance.
|
|
243
|
+
*/
|
|
151
244
|
create(options) {
|
|
152
245
|
return this.extend(options);
|
|
153
246
|
}
|
|
247
|
+
/**
|
|
248
|
+
* @ru Уничтожает клиент, закрывая соединения и очищая ресурсы.
|
|
249
|
+
* @en Destroys the client, closing connections and cleaning up resources.
|
|
250
|
+
* @param graceful - If true, attempts graceful shutdown (default: true).
|
|
251
|
+
* @returns Promise that resolves when destruction is complete.
|
|
252
|
+
*/
|
|
154
253
|
async destroy(graceful = true) {
|
|
155
254
|
await this.transportManager.destroy(graceful);
|
|
156
255
|
}
|
|
256
|
+
/**
|
|
257
|
+
* @ru Выполняет запрос и сразу возвращает распарсенный JSON (сокращённый метод).
|
|
258
|
+
* @en Performs a request and immediately returns parsed JSON (shortcut method).
|
|
259
|
+
* @param req - Request URL or RequestInterface object.
|
|
260
|
+
* @param signal - Optional abort signal.
|
|
261
|
+
* @returns Promise with the parsed JSON value.
|
|
262
|
+
* @throws If the response does not contain a json() method.
|
|
263
|
+
*/
|
|
157
264
|
async json(req, signal) {
|
|
158
265
|
const res = await this.dispatchShortcut(req, signal);
|
|
159
266
|
if (!res.json)
|
|
160
267
|
throw new Error("[HyperCore] Method 'json()' is missing on response object.");
|
|
161
268
|
return res.json();
|
|
162
269
|
}
|
|
270
|
+
/**
|
|
271
|
+
* @ru Выполняет запрос и возвращает тело как строку (сокращённый метод).
|
|
272
|
+
* @en Performs a request and returns the body as a string (shortcut method).
|
|
273
|
+
* @param req - Request URL or RequestInterface object.
|
|
274
|
+
* @param signal - Optional abort signal.
|
|
275
|
+
* @returns Promise with the response text.
|
|
276
|
+
* @throws If the response does not contain a text() method.
|
|
277
|
+
*/
|
|
163
278
|
async text(req, signal) {
|
|
164
279
|
const res = await this.dispatchShortcut(req, signal);
|
|
165
280
|
if (!res.text)
|
|
166
281
|
throw new Error("[HyperCore] Method 'text()' is missing on response object.");
|
|
167
282
|
return res.text();
|
|
168
283
|
}
|
|
284
|
+
/**
|
|
285
|
+
* @ru Выполняет запрос и немедленно отменяет (сбрасывает) тело ответа без чтения.
|
|
286
|
+
* @en Performs a request and immediately discards the response body without reading.
|
|
287
|
+
* @param req - Request URL or RequestInterface object.
|
|
288
|
+
* @param signal - Optional abort signal.
|
|
289
|
+
* @returns Promise that resolves after dumping the response.
|
|
290
|
+
* @throws If the response does not contain a dump() method.
|
|
291
|
+
*/
|
|
169
292
|
async dump(req, signal) {
|
|
170
293
|
const res = await this.dispatchShortcut(req, signal);
|
|
171
294
|
if (!res.dump)
|
|
172
295
|
throw new Error("[HyperCore] Method 'dump()' is missing on response object.");
|
|
173
296
|
await res.dump();
|
|
174
297
|
}
|
|
175
|
-
/**
|
|
176
|
-
* ПРИВАТНЫЕ МЕТОДЫ-ПОМОЩНИКИ (РЕФАКТОРИНГ)
|
|
177
|
-
*/
|
|
178
298
|
async runResponsePipeline(response, req) {
|
|
179
299
|
const hasMutators = this.pipelines.responseMutators.length > 0;
|
|
180
300
|
const hasSideEffects = this.pipelines.responseSideEffects.length > 0;
|
|
@@ -182,9 +302,6 @@ export class HyperCore {
|
|
|
182
302
|
await executeResponsePipeline(this.pipelines.responseMutators, this.pipelines.responseSideEffects, response, req, this.pluginCtx, this.config.logger);
|
|
183
303
|
}
|
|
184
304
|
}
|
|
185
|
-
/**
|
|
186
|
-
* Изолированная обработка ошибок пайплайна ответа
|
|
187
|
-
*/
|
|
188
305
|
async handleDispatchError(error, req) {
|
|
189
306
|
if (this.pipelines.error.length > 0) {
|
|
190
307
|
const recovered = await executeErrorPipeline(this.pipelines.error, error, req, this.pluginCtx);
|
|
@@ -195,9 +312,6 @@ export class HyperCore {
|
|
|
195
312
|
}
|
|
196
313
|
throw error;
|
|
197
314
|
}
|
|
198
|
-
/**
|
|
199
|
-
* Применение встроенной декомпрессии на основе заголовков ответа транспорта
|
|
200
|
-
*/
|
|
201
315
|
applyDecompression(rawResponse) {
|
|
202
316
|
if (!rawResponse.body)
|
|
203
317
|
return;
|
|
@@ -219,9 +333,6 @@ export class HyperCore {
|
|
|
219
333
|
rawResponse.body = createDecompressStream(rawResponse.body, contentEncoding);
|
|
220
334
|
}
|
|
221
335
|
}
|
|
222
|
-
/**
|
|
223
|
-
* Сборка внутреннего объекта запроса InternalRequest
|
|
224
|
-
*/
|
|
225
336
|
buildInternalRequest(method, req, body, signal) {
|
|
226
337
|
const isStr = typeof req === "string";
|
|
227
338
|
const rawUrl = normalizeUrl(req);
|
|
@@ -268,40 +379,41 @@ export class HyperCore {
|
|
|
268
379
|
meta,
|
|
269
380
|
});
|
|
270
381
|
}
|
|
271
|
-
/**
|
|
272
|
-
* Фабрика сохранения прототипа исходного запроса с подменой дескрипторов базовых свойств
|
|
273
|
-
*/
|
|
274
382
|
createInternalRequestObject(sourceReq, overrides) {
|
|
275
383
|
const proto = Object.getPrototypeOf(sourceReq);
|
|
276
384
|
const target = proto && proto !== Object.prototype ? Object.create(proto) : {};
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
}
|
|
385
|
+
for (const key in sourceReq) {
|
|
386
|
+
if (Object.prototype.hasOwnProperty.call(sourceReq, key)) {
|
|
387
|
+
target[key] = sourceReq[key];
|
|
388
|
+
}
|
|
389
|
+
}
|
|
390
|
+
for (const key in overrides) {
|
|
391
|
+
if (Object.prototype.hasOwnProperty.call(overrides, key)) {
|
|
392
|
+
target[key] = overrides[key];
|
|
393
|
+
}
|
|
286
394
|
}
|
|
287
|
-
Object.defineProperties(target, propertyDescriptors);
|
|
288
395
|
return target;
|
|
289
396
|
}
|
|
290
397
|
appendQueryParams(url, query) {
|
|
291
398
|
if (!query)
|
|
292
399
|
return;
|
|
293
|
-
for (const
|
|
294
|
-
if (
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
400
|
+
for (const key in query) {
|
|
401
|
+
if (Object.prototype.hasOwnProperty.call(query, key)) {
|
|
402
|
+
const value = query[key];
|
|
403
|
+
if (value === undefined || value === null)
|
|
404
|
+
continue;
|
|
405
|
+
if (Array.isArray(value)) {
|
|
406
|
+
const len = value.length;
|
|
407
|
+
for (let i = 0; i < len; i++) {
|
|
408
|
+
const item = value[i];
|
|
409
|
+
if (item === undefined || item === null)
|
|
410
|
+
continue;
|
|
411
|
+
url.searchParams.append(key, String(item));
|
|
412
|
+
}
|
|
413
|
+
}
|
|
414
|
+
else {
|
|
415
|
+
url.searchParams.set(key, String(value));
|
|
301
416
|
}
|
|
302
|
-
}
|
|
303
|
-
else {
|
|
304
|
-
url.searchParams.set(key, String(value));
|
|
305
417
|
}
|
|
306
418
|
}
|
|
307
419
|
}
|
package/Core/HyperCore.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HyperCore.js","sourceRoot":"","sources":["../../src/Core/HyperCore.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"HyperCore.js","sourceRoot":"","sources":["../../src/Core/HyperCore.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EACL,eAAe,EACf,aAAa,EACb,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,sBAAsB,EACtB,uBAAuB,EACvB,2BAA2B,EAC3B,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,YAAY,GACb,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,gBAAgB,EAChB,sBAAsB,GACvB,MAAM,wBAAwB,CAAC;AAIhC;;;GAGG;AACH,MAAM,OAAO,SAAS;IACpB,wIAAwI;IACjI,MAAM,CAAoB;IAChB,gBAAgB,CAAmB;IACnC,cAAc,CAAoC;IAClD,SAAS,CAAgB;IACzB,SAAS,GAAG,eAAe,EAAE,CAAC;IAE/C;;;;;OAKG;IACH,YACE,SAA4B,aAAa,EACzC,SAA0B;QAE1B,IAAI,CAAC,MAAM,GAAG;YACZ,GAAG,aAAa;YAChB,GAAG,MAAM;YACT,OAAO,EAAE,EAAE,GAAG,aAAa,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE;SACzD,CAAC;QAEF,IAAI,CAAC,gBAAgB,GAAG,IAAI,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAErE,IAAI,CAAC,cAAc,GAAG,gBAAgB,CAAC;YACrC,MAAM,EAAE,mCAAmC;YAC3C,iBAAiB,EAAE,mBAAmB;YACtC,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,IAAI,cAAc;YAC9D,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO;SAChC,CAAC,CAAC;QAEH,IAAI,CAAC,SAAS,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACvD,CAAC;IAED,IAAY,SAAS;QACnB,OAAO,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC;IACxC,CAAC;IAEO,eAAe;QACrB,OAAO,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC;IACrC,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAC5B,GAAoB;QAEpB,IAAI,CAAC;YACH,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtC,MAAM,YAAY,GAAG,MAAM,sBAAsB,CAC/C,IAAI,CAAC,SAAS,CAAC,OAAO,EACtB,GAAG,EACH,IAAI,CAAC,SAAS,CACf,CAAC;gBACF,IAAI,YAAY,EAAE,CAAC;oBACjB,MAAM,IAAI,CAAC,mBAAmB,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;oBAClD,OAAO,YAA+B,CAAC;gBACzC,CAAC;YACH,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;YACnE,IAAI,WAAW,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,GAAoB,CAAC,CAAC;YAEhE,IAAI,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3C,WAAW,GAAG,MAAM,2BAA2B,CAC7C,IAAI,CAAC,SAAS,CAAC,YAAY,EAC3B,WAAW,EACX,IAAI,CAAC,SAAS,CACf,CAAC;YACJ,CAAC;YAED,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;YAErC,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,EAAE,YAAY,KAAK,QAAQ,CAAC;YACrD,MAAM,QAAQ,GAAG,QAAQ;gBACvB,CAAC,CAAC,aAAa,CAAC,WAAW,CAAC;gBAC5B,CAAC,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;YAEjC,MAAM,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;YAE9C,OAAO,QAAsC,CAAC;QAChD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,IAAI,CAAC,mBAAmB,CAAC,KAAc,EAAE,GAAG,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,QAAQ,CACnB,GAAoB;QAEpB,OAAO,IAAI,CAAC,gBAAgB,CAAI,GAAG,CAA6B,CAAC;IACnE,CAAC;IAED;;;;;OAKG;IACI,GAAG,CAAC,MAAmB;QAC5B,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACtE,IAAI,CAAC,SAAS;YAAE,OAAO,IAAI,CAAC;QAE5B,IAAI,MAAM,CAAC,KAAK;YAAE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAE/C,MAAM,QAAQ,GAAI,MAAgC,CAAC,QAAQ,IAAI,CAAC,CAAC;QAEjE,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YACrB,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE;gBACvC,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,QAAQ;gBACR,GAAG,EAAE,MAAM,CAAC,SAAS;aACtB,CAAC,CAAC;QACL,CAAC;QAED,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YACtB,MAAM,cAAc,GAClB,MAAM,CAAC,IAAI,KAAK,YAAY;gBAC1B,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,mBAAmB;gBACpC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC;YACtC,gBAAgB,CAAC,cAAc,EAAE;gBAC/B,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,QAAQ;gBACR,GAAG,EAAE,MAAM,CAAC,UAAU;aACvB,CAAC,CAAC;QACL,CAAC;QAED,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;YAC1B,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE;gBAC5C,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,QAAQ;gBACR,GAAG,EAAE,MAAM,CAAC,cAAc;aAC3B,CAAC,CAAC;QACL,CAAC;QAED,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE;gBACrC,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,QAAQ;gBACR,GAAG,EAAE,MAAM,CAAC,OAAO;aACpB,CAAC,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,MAAM,CACjB,GAA8B,EAC9B,MAAoB;QAEpB,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAC3C,KAAK,EACL,GAAG,EACH,SAAS,EACT,MAAM,CACP,CAAC;QACF,WAAW,CAAC,IAAI,GAAG,EAAE,GAAG,WAAW,CAAC,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC;QACnE,OAAO,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAEvC,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACI,KAAK,CAAC,UAAU,CACrB,GAA8B,EAC9B,IAAsB,EACtB,MAAoB;QAEpB,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QACzE,WAAW,CAAC,IAAI,GAAG,EAAE,GAAG,WAAW,CAAC,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC;QACnE,OAAO,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAA+B,CAAC;IAC1E,CAAC;IAED;;;;;;OAMG;IACI,GAAG,CACR,GAA8B,EAC9B,MAAoB;QAEpB,OAAO,IAAI,CAAC,QAAQ,CAClB,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,CAAC,CACzD,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACI,IAAI,CACT,GAA8B,EAC9B,IAAsB,EACtB,MAAoB;QAEpB,OAAO,IAAI,CAAC,QAAQ,CAClB,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CACrD,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACI,GAAG,CACR,GAA8B,EAC9B,IAAsB,EACtB,MAAoB;QAEpB,OAAO,IAAI,CAAC,QAAQ,CAClB,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CACpD,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACI,KAAK,CACV,GAA8B,EAC9B,IAAsB,EACtB,MAAoB;QAEpB,OAAO,IAAI,CAAC,QAAQ,CAClB,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CACtD,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACI,MAAM,CACX,GAA8B,EAC9B,MAAoB;QAEpB,OAAO,IAAI,CAAC,QAAQ,CAClB,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,CAAC,CAC5D,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACI,OAAO,CACZ,GAA8B,EAC9B,IAAsB,EACtB,MAAoB;QAEpB,OAAO,IAAI,CAAC,QAAQ,CAClB,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CACxD,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACI,IAAI,CACT,GAA8B,EAC9B,MAAoB;QAEpB,OAAO,IAAI,CAAC,QAAQ,CAClB,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,CAAC,CAC1D,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,OAAmC;QAC/C,OAAO,IAAI,SAAS,CAClB;YACE,GAAG,IAAI,CAAC,MAAM;YACd,GAAG,OAAO;YACV,OAAO,EAAE,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE;SACxD,EACD,IAAI,CAAC,SAAS,IAAI,SAAS,CAC5B,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,OAAmC;QAC/C,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,OAAO,CAAC,QAAQ,GAAG,IAAI;QAClC,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAChD,CAAC;IAED;;;;;;;OAOG;IACI,KAAK,CAAC,IAAI,CACf,GAA8B,EAC9B,MAAoB;QAEpB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACrD,IAAI,CAAC,GAAG,CAAC,IAAI;YACX,MAAM,IAAI,KAAK,CACb,4DAA4D,CAC7D,CAAC;QACJ,OAAO,GAAG,CAAC,IAAI,EAAK,CAAC;IACvB,CAAC;IAED;;;;;;;OAOG;IACI,KAAK,CAAC,IAAI,CACf,GAA8B,EAC9B,MAAoB;QAEpB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACrD,IAAI,CAAC,GAAG,CAAC,IAAI;YACX,MAAM,IAAI,KAAK,CACb,4DAA4D,CAC7D,CAAC;QACJ,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;IACpB,CAAC;IAED;;;;;;;OAOG;IACI,KAAK,CAAC,IAAI,CACf,GAA8B,EAC9B,MAAoB;QAEpB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACrD,IAAI,CAAC,GAAG,CAAC,IAAI;YACX,MAAM,IAAI,KAAK,CACb,4DAA4D,CAC7D,CAAC;QACJ,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;IACnB,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAC/B,QAAgD,EAChD,GAAoB;QAEpB,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC;QAC/D,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,CAAC;QAErE,IAAI,WAAW,IAAI,cAAc,EAAE,CAAC;YAClC,MAAM,uBAAuB,CAC3B,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAC/B,IAAI,CAAC,SAAS,CAAC,mBAAmB,EAClC,QAAwB,EACxB,GAAG,EACH,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,MAAM,CAAC,MAAM,CACnB,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAC/B,KAAY,EACZ,GAAoB;QAEpB,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpC,MAAM,SAAS,GAAG,MAAM,oBAAoB,CAC1C,IAAI,CAAC,SAAS,CAAC,KAAK,EACpB,KAAsB,EACtB,GAAG,EACH,IAAI,CAAC,SAAS,CACf,CAAC;YACF,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;gBAC/C,OAAO,SAA4B,CAAC;YACtC,CAAC;QACH,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;IAEO,kBAAkB,CAAC,WAAgC;QACzD,IAAI,CAAC,WAAW,CAAC,IAAI;YAAE,OAAO;QAE9B,MAAM,cAAc,GAClB,WAAW,CAAC,OAAO,EAAE,CAAC,kBAAkB,CAAC;YACzC,WAAW,CAAC,OAAO,EAAE,CAAC,kBAAkB,CAAC,CAAC;QAC5C,IAAI,CAAC,cAAc;YAAE,OAAO;QAE5B,MAAM,eAAe,GACnB,OAAO,cAAc,KAAK,QAAQ;YAChC,CAAC,CAAC,cAAc;YAChB,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC;gBAC7B,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;gBACnB,CAAC,CAAC,SAAS,CAAC;QAElB,IAAI,CAAC,eAAe;YAAE,OAAO;QAE7B,IAAI,WAAW,CAAC,IAAI,YAAY,UAAU,EAAE,CAAC;YAC3C,WAAW,CAAC,IAAI,GAAG,gBAAgB,CAAC,WAAW,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;QACzE,CAAC;aAAM,CAAC;YACN,WAAW,CAAC,IAAI,GAAG,sBAAsB,CACvC,WAAW,CAAC,IAAkC,EAC9C,eAAe,CAChB,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,oBAAoB,CAC1B,MAAc,EACd,GAA8B,EAC9B,IAAsB,EACtB,MAAoB;QAEpB,MAAM,KAAK,GAAG,OAAO,GAAG,KAAK,QAAQ,CAAC;QACtC,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;QAEjC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CACb,iEAAiE,MAAM,GAAG,CAC3E,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;QAC/B,MAAM,SAAS,GAAG,KAAK;YACrB,CAAC,CAAC,SAAS;YACX,CAAC,CAAE,GAA0C,CAAC;QAEhD,IAAI,SAAS,EAAE,KAAK,EAAE,CAAC;YACrB,IAAI,CAAC,iBAAiB,CACpB,MAAM,EACN,SAAS,CAAC,KAAgC,CAC3C,CAAC;QACJ,CAAC;QAED,MAAM,OAAO,GAAG;YACd,MAAM;YACN,GAAG,EAAE,MAAM,CAAC,IAAI;YAChB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,IAAI,EAAE,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM;SACtC,CAAC;QAEF,IAAI,KAAK,EAAE,CAAC;YACV,OAAO;gBACL,GAAG,OAAO;gBACV,OAAO,EAAE,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE;gBACnC,IAAI;gBACJ,MAAM;gBACN,IAAI,EAAE,EAAE;aACqB,CAAC;QAClC,CAAC;QAED,MAAM,UAAU,GAAG,CAAC,GAAG,CAAC,OAAO,IAAI,SAAU,CAAC,QAAQ,CAEzC,CAAC;QACd,MAAM,OAAO,GAAG,UAAU;YACxB,CAAC,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;YACrE,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAE/B,MAAM,OAAO,GACX,SAAU,CAAC,IAAI,IAAI,SAAU,CAAC,QAAQ,IAAI,SAAU,CAAC,SAAS,IAAI,IAAI,CAAC;QACzE,MAAM,YAAY,GAAG,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAEpD,MAAM,cAAc,GAClB,GAAG,CAAC,MAAM,IAAK,SAAU,CAAC,OAAmC,IAAI,MAAM,CAAC;QAC1E,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI;YACpB,SAAU,CAAC,KAAK;YAChB,EAAE,CAA4B,CAAC;QAEjC,OAAO,IAAI,CAAC,2BAA2B,CAAC,SAAU,EAAE;YAClD,GAAG,OAAO;YACV,OAAO;YACP,IAAI,EAAE,YAAY;YAClB,MAAM,EAAE,cAAc;YACtB,IAAI;SACL,CAAC,CAAC;IACL,CAAC;IAEO,2BAA2B,CACjC,SAAkC,EAClC,SAAkC;QAElC,MAAM,KAAK,GAAG,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAC/C,MAAM,MAAM,GACV,KAAK,IAAI,KAAK,KAAK,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAElE,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;YAC5B,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,EAAE,CAAC;gBACzD,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;QAED,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;YAC5B,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,EAAE,CAAC;gBACzD,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;QAED,OAAO,MAAyB,CAAC;IACnC,CAAC;IAEO,iBAAiB,CAAC,GAAQ,EAAE,KAA+B;QACjE,IAAI,CAAC,KAAK;YAAE,OAAO;QAEnB,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;YACxB,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC;gBACrD,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;gBACzB,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;oBAAE,SAAS;gBAEpD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;oBACzB,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC;oBACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;wBAC7B,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;wBACtB,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI;4BAAE,SAAS;wBAClD,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;oBAC7C,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC3C,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAC5B,GAA8B,EAC9B,MAAoB;QAEpB,MAAM,MAAM,GACV,OAAO,GAAG,KAAK,QAAQ;YACrB,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,CAAG,GAA0C,CAAC,MAEhC,IAAI,KAAK,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC,QAAQ,CAClB,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,CAAC,CAC1D,CAAC;IACJ,CAAC;CACF"}
|