@hyperttp/core 1.1.10 → 1.1.12

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.
@@ -1,9 +1,8 @@
1
1
  import type { HttpClientOptions } from "../types/options.js";
2
2
  import type { RequestBodyData, RequestInterface } from "../types/request.js";
3
3
  import type { StreamResponse } from "../types/stream.js";
4
- import type { RequestMetrics } from "../types/metrics.js";
5
4
  import type { HyperTransport } from "../types/transport.js";
6
- import type { HttpResponse, HyperStats, InternalRequest } from "../types/hyper.js";
5
+ import type { HttpResponse, InternalRequest } from "../types/hyper.js";
7
6
  import { HyperPlugin } from "../types/plugins.js";
8
7
  export declare class HyperCore {
9
8
  config: HttpClientOptions;
@@ -16,7 +15,7 @@ export declare class HyperCore {
16
15
  private ensureTransport;
17
16
  dispatch: <T = unknown>(req: InternalRequest) => Promise<HttpResponse<T>>;
18
17
  use(plugin: HyperPlugin): this;
19
- stream(req: RequestInterface | string, signal?: AbortSignal): Promise<StreamResponse<any>>;
18
+ stream(req: RequestInterface | string, signal?: AbortSignal): Promise<StreamResponse<unknown>>;
20
19
  get<T = unknown>(req: RequestInterface | string, signal?: AbortSignal): Promise<HttpResponse<T>>;
21
20
  post<T = unknown>(req: RequestInterface | string, body?: RequestBodyData, signal?: AbortSignal): Promise<HttpResponse<T>>;
22
21
  put<T = unknown>(req: RequestInterface | string, body?: RequestBodyData, signal?: AbortSignal): Promise<HttpResponse<T>>;
@@ -27,8 +26,6 @@ export declare class HyperCore {
27
26
  private buildInternalRequest;
28
27
  extend(options: Partial<HttpClientOptions>): HyperCore;
29
28
  create(options: Partial<HttpClientOptions>): HyperCore;
30
- getStats(): HyperStats;
31
- getAllMetrics(): RequestMetrics[];
32
- destroy(): Promise<void>;
29
+ destroy(graceful?: boolean): Promise<void>;
33
30
  }
34
31
  //# sourceMappingURL=HyperCore.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"HyperCore.d.ts","sourceRoot":"","sources":["../../src/Core/HyperCore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HyperCore.d.ts","sourceRoot":"","sources":["../../src/Core/HyperCore.ts"],"names":[],"mappings":"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"}
package/Core/HyperCore.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { defaultConfig } from "../defaultConfig.js";
2
2
  /**
3
3
  * @private
4
- * Вынесено из dispatch для предотвращения аллокаций функций на каждый запрос
4
+ * Теперь функция полностью дженериковая. Какой тип пришел — такой и ушел.
5
5
  */
6
6
  const cloneBodyFast = (body) => {
7
7
  if (typeof body !== "object" || body === null)
@@ -18,10 +18,6 @@ const cloneBodyFast = (body) => {
18
18
  }
19
19
  }
20
20
  };
21
- /**
22
- * @private
23
- * Статический хэндлер клонирования ответа для исключения создания замыканий
24
- */
25
21
  function responseCloneHandler() {
26
22
  return {
27
23
  status: this.status,
@@ -31,13 +27,26 @@ function responseCloneHandler() {
31
27
  clone: responseCloneHandler,
32
28
  };
33
29
  }
30
+ /**
31
+ * Принимает сырой ответ с телом `unknown` и возвращает плоский объект.
32
+ */
33
+ const mapResponseFast = (rawResponse) => ({
34
+ status: rawResponse.status,
35
+ headers: rawResponse.headers,
36
+ body: rawResponse.body,
37
+ url: rawResponse.url ?? "",
38
+ clone: responseCloneHandler,
39
+ });
40
+ const mapStreamFast = (rawResponse) => ({
41
+ status: rawResponse.status,
42
+ headers: rawResponse.headers,
43
+ body: rawResponse.body,
44
+ url: rawResponse.url ?? "",
45
+ });
34
46
  const mergeHeadersFast = (base, override) => {
35
- if (!override)
36
- return { ...base };
37
- return {
38
- ...base,
39
- ...override,
40
- };
47
+ if (!override || Object.keys(override).length === 0)
48
+ return base;
49
+ return { ...base, ...override };
41
50
  };
42
51
  export class HyperCore {
43
52
  config;
@@ -56,6 +65,7 @@ export class HyperCore {
56
65
  };
57
66
  if (transport) {
58
67
  this.transport = transport;
68
+ this.transportPromise = Promise.resolve(transport);
59
69
  }
60
70
  this.defaultHeaders = {
61
71
  Accept: "application/json, text/plain, */*",
@@ -77,36 +87,24 @@ export class HyperCore {
77
87
  return new NodeTransport(this.config);
78
88
  }
79
89
  ensureTransport() {
80
- if (this.transport) {
81
- return Promise.resolve(this.transport);
82
- }
83
- if (!this.transportPromise) {
84
- this.transportPromise = this.createTransport().then((transport) => {
85
- this.transport = transport;
86
- return transport;
87
- });
88
- }
89
- return this.transportPromise;
90
+ return (this.transportPromise ||
91
+ (this.transportPromise = this.createTransport().then((t) => {
92
+ this.transport = t;
93
+ return t;
94
+ })));
90
95
  }
91
- dispatch = async (req) => {
96
+ dispatch = (req) => {
92
97
  if (req.signal?.aborted) {
93
- throw new Error("Request aborted by user");
94
- }
95
- const transport = this.transport ?? (await this.ensureTransport());
96
- const rawResponse = await transport.execute({
97
- method: req.method,
98
- url: req.url,
99
- headers: req.headers,
100
- body: req.body,
101
- signal: req.signal,
102
- });
103
- return {
104
- status: rawResponse.status,
105
- headers: rawResponse.headers,
106
- body: rawResponse.body,
107
- url: rawResponse.url,
108
- clone: responseCloneHandler,
109
- };
98
+ return Promise.reject(new Error("Request aborted by user"));
99
+ }
100
+ if (this.transport) {
101
+ return this.transport
102
+ .execute(req)
103
+ .then(mapResponseFast);
104
+ }
105
+ return this.ensureTransport()
106
+ .then((transport) => transport.execute(req))
107
+ .then(mapResponseFast);
110
108
  };
111
109
  use(plugin) {
112
110
  if (typeof plugin.enabled === "function" && !plugin.enabled(this.config)) {
@@ -120,7 +118,7 @@ export class HyperCore {
120
118
  }
121
119
  return this;
122
120
  }
123
- async stream(req, signal) {
121
+ stream(req, signal) {
124
122
  let url;
125
123
  let reqHeaders;
126
124
  if (typeof req === "string") {
@@ -131,19 +129,19 @@ export class HyperCore {
131
129
  signal = req.signal ?? signal;
132
130
  reqHeaders = req.headers;
133
131
  }
134
- const transport = this.transport ?? (await this.ensureTransport());
135
- const rawResponse = await transport.execute({
132
+ const finalHeaders = mergeHeadersFast(this.defaultHeaders, reqHeaders);
133
+ const transportArgs = {
136
134
  method: "GET",
137
135
  url,
138
- headers: mergeHeadersFast(this.defaultHeaders, reqHeaders),
136
+ headers: finalHeaders,
139
137
  signal,
140
- });
141
- return {
142
- status: rawResponse.status,
143
- headers: rawResponse.headers,
144
- body: rawResponse.body,
145
- url: rawResponse.url,
146
138
  };
139
+ if (this.transport) {
140
+ return this.transport.execute(transportArgs).then(mapStreamFast);
141
+ }
142
+ return this.ensureTransport()
143
+ .then((transport) => transport.execute(transportArgs))
144
+ .then(mapStreamFast);
147
145
  }
148
146
  get(req, signal) {
149
147
  return this.dispatch(this.buildInternalRequest("GET", req, undefined, signal));
@@ -201,23 +199,15 @@ export class HyperCore {
201
199
  create(options) {
202
200
  return this.extend(options);
203
201
  }
204
- getStats() {
205
- return {};
206
- }
207
- getAllMetrics() {
208
- return [];
209
- }
210
- async destroy() {
202
+ async destroy(graceful = true) {
211
203
  const transport = this.transport;
212
- if (transport && typeof transport.destroy === "function") {
213
- try {
214
- await transport.destroy();
215
- }
216
- catch (error) {
217
- if (this.config.verbose) {
218
- console.warn("[HyperCore] destroy failed:", error);
219
- }
220
- }
204
+ if (!transport)
205
+ return;
206
+ if (graceful && typeof transport.close === "function") {
207
+ await transport.close();
208
+ }
209
+ else if (typeof transport.destroy === "function") {
210
+ await transport.destroy();
221
211
  }
222
212
  }
223
213
  }
@@ -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":"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"}
@@ -2,15 +2,21 @@ import { Agent } from "undici";
2
2
  import type { RetryOptions } from "../types/retry.js";
3
3
  import type { LogLevel, ResponseType } from "../types/http.js";
4
4
  import type { RequestMetrics } from "../types/metrics.js";
5
- type LowLevelResponse = {
5
+ export type LowLevelResponse = {
6
6
  status: number;
7
7
  headers: Record<string, string | string[] | undefined>;
8
- body: any;
8
+ body: unknown;
9
9
  url: string;
10
10
  };
11
- interface DynamicInterceptor {
12
- applyRequest(config: any): Promise<any>;
13
- applyResponse(response: any): Promise<any>;
11
+ export interface InterceptorRequestConfig {
12
+ url: string;
13
+ method: string;
14
+ headers: Record<string, string | string[]>;
15
+ body: string | Buffer | undefined;
16
+ }
17
+ export interface DynamicInterceptor {
18
+ applyRequest(config: InterceptorRequestConfig): Promise<InterceptorRequestConfig>;
19
+ applyResponse(response: LowLevelResponse): Promise<LowLevelResponse>;
14
20
  }
15
21
  /**
16
22
  * @en Low-level request executor responsible for handling the actual HTTP lifecycle.
@@ -27,13 +33,13 @@ export declare class RequestExecutor {
27
33
  maxRedirects: number;
28
34
  retryOptions: RetryOptions;
29
35
  verbose?: boolean;
30
- logger?: (level: LogLevel, message: string, meta?: any) => void;
36
+ logger?: (level: LogLevel, message: string, meta?: unknown) => void;
31
37
  });
32
38
  /**
33
39
  * @en Executes a raw HTTP request.
34
40
  * @ru Выполняет "сырой" HTTP-запрос.
35
41
  */
36
- execute(method: string, url: string, headers: Record<string, string | string[]>, body: string | Buffer | undefined, signal?: AbortSignal, metrics?: RequestMetrics, interceptors?: DynamicInterceptor | any, meta?: {
42
+ execute(method: string, url: string, headers: Record<string, string | string[]>, body: string | Buffer | undefined, signal?: AbortSignal, metrics?: RequestMetrics, interceptors?: DynamicInterceptor, meta?: {
37
43
  responseType?: ResponseType;
38
44
  }): Promise<LowLevelResponse>;
39
45
  get verbose(): boolean;
@@ -55,5 +61,4 @@ export declare class RequestExecutor {
55
61
  private shouldRetry;
56
62
  private executeCore;
57
63
  }
58
- export {};
59
64
  //# sourceMappingURL=RequestExecutor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RequestExecutor.d.ts","sourceRoot":"","sources":["../../src/Core/RequestExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAU,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAG1D,KAAK,gBAAgB,GAAG;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;IACvD,IAAI,EAAE,GAAG,CAAC;IACV,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,UAAU,kBAAkB;IAC1B,YAAY,CAAC,MAAM,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IACxC,aAAa,CAAC,QAAQ,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;CAC5C;AAED;;;GAGG;AACH,qBAAa,eAAe;IAIxB,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,OAAO;IAJjB,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAsC;gBAGhE,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,eAAe,EAAE,OAAO,CAAC;QACzB,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,EAAE,YAAY,CAAC;QAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;KACjE;IAGH;;;OAGG;IACU,OAAO,CAClB,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,EAC1C,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EACjC,MAAM,CAAC,EAAE,WAAW,EACpB,OAAO,CAAC,EAAE,cAAc,EACxB,YAAY,CAAC,EAAE,kBAAkB,GAAG,GAAG,EACvC,IAAI,CAAC,EAAE;QAAE,YAAY,CAAC,EAAE,YAAY,CAAA;KAAE,GACrC,OAAO,CAAC,gBAAgB,CAAC;IAc5B,IAAW,OAAO,IAAI,OAAO,CAE5B;IAED;;;OAGG;IACH,OAAO,CAAC,SAAS;IAUjB,OAAO,CAAC,KAAK;IAIb;;;OAGG;YACW,SAAS;IAoBvB;;;OAGG;IACH,OAAO,CAAC,WAAW;YAQL,WAAW;CAmL1B"}
1
+ {"version":3,"file":"RequestExecutor.d.ts","sourceRoot":"","sources":["../../src/Core/RequestExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAU,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAG1D,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;IACvD,IAAI,EAAE,OAAO,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,MAAM,WAAW,wBAAwB;IACvC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;IAC3C,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CACnC;AAED,MAAM,WAAW,kBAAkB;IACjC,YAAY,CACV,MAAM,EAAE,wBAAwB,GAC/B,OAAO,CAAC,wBAAwB,CAAC,CAAC;IACrC,aAAa,CAAC,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;CACtE;AAkBD;;;GAGG;AACH,qBAAa,eAAe;IAIxB,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,OAAO;IAJjB,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAsC;gBAGhE,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,eAAe,EAAE,OAAO,CAAC;QACzB,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,EAAE,YAAY,CAAC;QAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;KACrE;IAGH;;;OAGG;IACU,OAAO,CAClB,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,EAC1C,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EACjC,MAAM,CAAC,EAAE,WAAW,EACpB,OAAO,CAAC,EAAE,cAAc,EACxB,YAAY,CAAC,EAAE,kBAAkB,EACjC,IAAI,CAAC,EAAE;QAAE,YAAY,CAAC,EAAE,YAAY,CAAA;KAAE,GACrC,OAAO,CAAC,gBAAgB,CAAC;IAc5B,IAAW,OAAO,IAAI,OAAO,CAE5B;IAED;;;OAGG;IACH,OAAO,CAAC,SAAS;IAUjB,OAAO,CAAC,KAAK;IAIb;;;OAGG;YACW,SAAS;IAqBvB;;;OAGG;IACH,OAAO,CAAC,WAAW;YAQL,WAAW;CAsL1B"}
@@ -1,5 +1,18 @@
1
1
  import { request } from "undici";
2
2
  import { HttpClientError, TimeoutError } from "../types/errors.js";
3
+ /**
4
+ * @private
5
+ * Статический интерцептор-заглушка. Исключает аллокацию объекта на каждый запрос.
6
+ */
7
+ const defaultInterceptorManager = {
8
+ applyRequest: (config) => Promise.resolve(config),
9
+ applyResponse: (response) => Promise.resolve(response),
10
+ };
11
+ /**
12
+ * @private
13
+ * Статический парсер тела ответа. Исключает создание замыканий внутри execute().
14
+ */
15
+ const defaultBodyParser = (res) => Promise.resolve(res.body);
3
16
  /**
4
17
  * @en Low-level request executor responsible for handling the actual HTTP lifecycle.
5
18
  * @ru Низкоуровневый исполнитель запросов, отвечающий за полный цикл HTTP-жизни.
@@ -17,7 +30,7 @@ export class RequestExecutor {
17
30
  * @ru Выполняет "сырой" HTTP-запрос.
18
31
  */
19
32
  async execute(method, url, headers, body, signal, metrics, interceptors, meta) {
20
- return this.executeCore(method, url, headers, body, metrics, signal, async (res) => res.body, interceptors, meta?.responseType === "stream");
33
+ return this.executeCore(method, url, headers, body, metrics, signal, defaultBodyParser, interceptors, meta?.responseType === "stream");
21
34
  }
22
35
  get verbose() {
23
36
  return this.options.verbose ?? false;
@@ -39,19 +52,20 @@ export class RequestExecutor {
39
52
  * @ru Гарантирует, что поток тела ответа корректно закрыт.
40
53
  */
41
54
  async drainBody(body) {
42
- if (!body)
55
+ if (!body || typeof body !== "object")
43
56
  return;
44
57
  try {
45
- if (typeof body.dump === "function") {
46
- await body.dump();
58
+ const stream = body;
59
+ if (typeof stream.dump === "function") {
60
+ await stream.dump();
47
61
  return;
48
62
  }
49
- if (typeof body.resume === "function") {
50
- body.resume();
63
+ if (typeof stream.resume === "function") {
64
+ stream.resume();
51
65
  return;
52
66
  }
53
- if (typeof body.destroy === "function") {
54
- body.destroy();
67
+ if (typeof stream.destroy === "function") {
68
+ stream.destroy();
55
69
  }
56
70
  }
57
71
  catch {
@@ -76,18 +90,18 @@ export class RequestExecutor {
76
90
  let currentBody = body;
77
91
  let redirects = 0;
78
92
  let attempt = 0;
79
- const manager = interceptors ?? {
80
- applyRequest: async (c) => c,
81
- applyResponse: async (r) => r,
82
- };
83
- const timeoutController = new AbortController();
93
+ const manager = interceptors ?? defaultInterceptorManager;
84
94
  const timeoutValue = isStreaming ? 0 : this.options.timeout;
85
- const timer = timeoutValue > 0
86
- ? setTimeout(() => timeoutController.abort(), timeoutValue)
87
- : undefined;
88
- const combinedSignal = signal
89
- ? AbortSignal.any([signal, timeoutController.signal])
90
- : timeoutController.signal;
95
+ let timeoutController = undefined;
96
+ let timer = undefined;
97
+ let combinedSignal = signal;
98
+ if (timeoutValue > 0) {
99
+ timeoutController = new AbortController();
100
+ timer = setTimeout(() => timeoutController?.abort(), timeoutValue);
101
+ combinedSignal = signal
102
+ ? AbortSignal.any([signal, timeoutController.signal])
103
+ : timeoutController.signal;
104
+ }
91
105
  try {
92
106
  while (true) {
93
107
  try {
@@ -162,21 +176,24 @@ export class RequestExecutor {
162
176
  };
163
177
  }
164
178
  catch (err) {
165
- if (err.name === "AbortError") {
179
+ const errorTarget = err;
180
+ const errorName = errorTarget?.name;
181
+ const errorCode = errorTarget?.code;
182
+ if (errorName === "AbortError") {
166
183
  if (signal?.aborted) {
167
- throw new HttpClientError("Request aborted by user", "ABORTED", 0, err, url, method);
184
+ throw new HttpClientError("Request aborted by user", "ABORTED", 0, err instanceof Error ? err : undefined, url, method);
168
185
  }
169
- if (timeoutController.signal.aborted) {
186
+ if (timeoutController?.signal.aborted) {
170
187
  throw new TimeoutError(url, this.options.timeout);
171
188
  }
172
- throw new HttpClientError("Request aborted due to transport closure or internal state reset", "TRANSPORT_CLOSED", 0, err, url, method);
189
+ throw new HttpClientError("Request aborted due to transport closure or internal state reset", "TRANSPORT_CLOSED", 0, err instanceof Error ? err : undefined, url, method);
173
190
  }
174
191
  if (attempt < this.options.maxRetries &&
175
- (err?.code === "ECONNREFUSED" ||
176
- err?.code === "ETIMEDOUT" ||
177
- err?.code === "ECONNRESET" ||
178
- err?.code === "EPIPE" ||
179
- err?.code === "UND_ERR_SOCKET")) {
192
+ (errorCode === "ECONNREFUSED" ||
193
+ errorCode === "ETIMEDOUT" ||
194
+ errorCode === "ECONNRESET" ||
195
+ errorCode === "EPIPE" ||
196
+ errorCode === "UND_ERR_SOCKET")) {
180
197
  if (metrics)
181
198
  metrics.retries += 1;
182
199
  await this.sleep(this.calcDelay(attempt));
@@ -1 +1 @@
1
- {"version":3,"file":"RequestExecutor.js","sourceRoot":"","sources":["../../src/Core/RequestExecutor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RequestExecutor.js","sourceRoot":"","sources":["../../src/Core/RequestExecutor.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hyperttp/core",
3
- "version": "1.1.10",
3
+ "version": "1.1.12",
4
4
  "description": "High-performance, extensible HTTP client for Node.js and Bun",
5
5
  "type": "module",
6
6
  "main": "./index.js",
@@ -1,14 +1,16 @@
1
- import { HttpClientOptions } from "../types/options.js";
1
+ import type { HttpClientOptions } from "../types/options.js";
2
2
  import type { HyperTransport, TransportRequest, TransportResponse } from "../types/transport.js";
3
3
  export declare class BunTransport implements HyperTransport {
4
4
  private cookieJar;
5
5
  private config;
6
+ private cookieCache;
6
7
  private activeRequests;
7
8
  private concurrencyQueue;
8
9
  constructor(config: HttpClientOptions);
9
10
  execute(req: TransportRequest): Promise<TransportResponse>;
10
11
  private getCookiesForDomain;
11
12
  private updateCookies;
13
+ close(): Promise<void>;
12
14
  destroy(): Promise<void>;
13
15
  }
14
16
  //# sourceMappingURL=bun.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bun.d.ts","sourceRoot":"","sources":["../../src/transports/bun.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EACV,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,uBAAuB,CAAC;AAc/B,qBAAa,YAAa,YAAW,cAAc;IACjD,OAAO,CAAC,SAAS,CAA0C;IAC3D,OAAO,CAAC,MAAM,CAAoB;IAElC,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,gBAAgB,CAAsB;gBAElC,MAAM,EAAE,iBAAiB;IAIxB,OAAO,CAAC,GAAG,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAyFvE,OAAO,CAAC,mBAAmB;IAiB3B,OAAO,CAAC,aAAa;IAoCR,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAItC"}
1
+ {"version":3,"file":"bun.d.ts","sourceRoot":"","sources":["../../src/transports/bun.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,KAAK,EACV,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,uBAAuB,CAAC;AAc/B,qBAAa,YAAa,YAAW,cAAc;IACjD,OAAO,CAAC,SAAS,CAA0C;IAC3D,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,WAAW,CAA6B;IAEhD,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,gBAAgB,CAAsB;gBAElC,MAAM,EAAE,iBAAiB;IAIxB,OAAO,CAAC,GAAG,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA2GvE,OAAO,CAAC,mBAAmB;IAwB3B,OAAO,CAAC,aAAa;IAqCR,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAMtB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAGtC"}
package/transports/bun.js CHANGED
@@ -14,6 +14,7 @@ function fastGetHostname(url) {
14
14
  export class BunTransport {
15
15
  cookieJar = new Map();
16
16
  config;
17
+ cookieCache = new Map();
17
18
  activeRequests = 0;
18
19
  concurrencyQueue = [];
19
20
  constructor(config) {
@@ -42,8 +43,9 @@ export class BunTransport {
42
43
  if (savedCookies) {
43
44
  if (!hasCloned)
44
45
  headers = { ...headers };
45
- headers["Cookie"] = headers["Cookie"]
46
- ? `${headers["Cookie"]}; ${savedCookies}`
46
+ const currentCookie = headers["Cookie"];
47
+ headers["Cookie"] = currentCookie
48
+ ? `${Array.isArray(currentCookie) ? currentCookie.join("; ") : currentCookie}; ${savedCookies}`
47
49
  : savedCookies;
48
50
  }
49
51
  let signal = req.signal;
@@ -53,9 +55,16 @@ export class BunTransport {
53
55
  ? AbortSignal.any([req.signal, timeoutSignal])
54
56
  : timeoutSignal;
55
57
  }
58
+ const fetchHeaders = {};
59
+ for (const key in headers) {
60
+ const val = headers[key];
61
+ if (val !== undefined) {
62
+ fetchHeaders[key] = Array.isArray(val) ? val.join(", ") : val;
63
+ }
64
+ }
56
65
  const response = await fetch(req.url, {
57
66
  method: req.method,
58
- headers: headers,
67
+ headers: fetchHeaders,
59
68
  body: req.body,
60
69
  signal: signal,
61
70
  keepalive: !!netConfig?.keepAliveTimeout,
@@ -65,20 +74,29 @@ export class BunTransport {
65
74
  if (setCookies && setCookies.length > 0) {
66
75
  this.updateCookies(domain, setCookies);
67
76
  }
68
- const responseHeaders = response.headers.toJSON?.() ?? {};
77
+ const responseHeaders = {};
78
+ response.headers.forEach((value, key) => {
79
+ responseHeaders[key] = value;
80
+ });
69
81
  const body = response.body;
70
82
  if (body) {
71
83
  Object.defineProperty(body, "dump", {
72
84
  value: async function () {
73
85
  if (this.locked)
74
86
  return;
87
+ const reader = this.getReader();
75
88
  try {
76
- for await (const chunk of this) {
77
- void chunk;
89
+ while (!(await reader.read()).done) {
90
+ for await (const chunk of this) {
91
+ void chunk;
92
+ }
78
93
  }
79
94
  }
80
95
  catch {
81
- //
96
+ // ignore
97
+ }
98
+ finally {
99
+ await reader.cancel();
82
100
  }
83
101
  },
84
102
  writable: true,
@@ -101,6 +119,9 @@ export class BunTransport {
101
119
  }
102
120
  }
103
121
  getCookiesForDomain(requestDomain) {
122
+ if (this.cookieCache.has(requestDomain)) {
123
+ return this.cookieCache.get(requestDomain);
124
+ }
104
125
  const matchedCookies = [];
105
126
  for (const [storedDomain, cookiesMap] of this.cookieJar) {
106
127
  if (requestDomain === storedDomain ||
@@ -110,7 +131,9 @@ export class BunTransport {
110
131
  }
111
132
  }
112
133
  }
113
- return matchedCookies.length > 0 ? matchedCookies.join("; ") : "";
134
+ const result = matchedCookies.length > 0 ? matchedCookies.join("; ") : "";
135
+ this.cookieCache.set(requestDomain, result);
136
+ return result;
114
137
  }
115
138
  updateCookies(requestDomain, setCookies) {
116
139
  for (let i = 0; i < setCookies.length; i++) {
@@ -143,11 +166,16 @@ export class BunTransport {
143
166
  this.cookieJar.set(targetDomain, domainMap);
144
167
  }
145
168
  domainMap.set(key, val);
169
+ this.cookieCache.clear();
146
170
  }
147
171
  }
148
- async destroy() {
149
- this.cookieJar.clear();
172
+ async close() {
150
173
  this.concurrencyQueue = [];
174
+ this.cookieJar.clear();
175
+ this.cookieCache.clear();
176
+ }
177
+ async destroy() {
178
+ await this.close();
151
179
  }
152
180
  }
153
181
  //# sourceMappingURL=bun.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bun.js","sourceRoot":"","sources":["../../src/transports/bun.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bun.js","sourceRoot":"","sources":["../../src/transports/bun.ts"],"names":[],"mappings":"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"}
@@ -3,13 +3,12 @@ import type { HttpClientOptions } from "../types/options.js";
3
3
  export declare class NodeTransport implements HyperTransport {
4
4
  private agent;
5
5
  private executor;
6
+ private isClosed;
6
7
  constructor(config: HttpClientOptions);
7
8
  execute(req: TransportRequest): Promise<TransportResponse>;
8
- /**
9
- * Защищенная обертка для потоковой декомпрессии.
10
- * Гарантирует отсутствие утечек сокетов при ошибках или ручном закрытии стрима.
11
- */
12
9
  private wrapDecompress;
10
+ close(): Promise<void>;
13
11
  destroy(): Promise<void>;
12
+ private logWarning;
14
13
  }
15
14
  //# sourceMappingURL=node.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/transports/node.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAG7D,qBAAa,aAAc,YAAW,cAAc;IAClD,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,QAAQ,CAAkB;gBAEtB,MAAM,EAAE,iBAAiB;IA2CxB,OAAO,CAAC,GAAG,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAwEvE;;;OAGG;IACH,OAAO,CAAC,cAAc;IAyCT,OAAO;CAgBrB"}
1
+ {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/transports/node.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAU7D,qBAAa,aAAc,YAAW,cAAc;IAClD,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,QAAQ,CAAS;gBAEb,MAAM,EAAE,iBAAiB;IA2CxB,OAAO,CAAC,GAAG,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA4EvE,OAAO,CAAC,cAAc;IA0BT,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAkBtB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBrC,OAAO,CAAC,UAAU;CAMnB"}
@@ -1,10 +1,11 @@
1
- import { pipeline } from "node:stream";
1
+ import { compose, Readable } from "node:stream";
2
2
  import zlib from "node:zlib";
3
3
  import { CookieAgent } from "http-cookie-agent/undici";
4
4
  import { RequestExecutor } from "../Core/RequestExecutor.js";
5
5
  export class NodeTransport {
6
6
  agent;
7
7
  executor;
8
+ isClosed = false;
8
9
  constructor(config) {
9
10
  const concurrency = config.network?.maxConcurrent === 0
10
11
  ? Infinity
@@ -64,28 +65,31 @@ export class NodeTransport {
64
65
  }
65
66
  }
66
67
  const decompressedBody = this.wrapDecompress(rawResponse.body, contentEncoding);
67
- // Примешиваем высокопроизводительный метод .dump() прямо в инстанс стрима
68
- if (decompressedBody) {
68
+ if (decompressedBody instanceof Readable) {
69
69
  Object.defineProperty(decompressedBody, "dump", {
70
70
  value: function () {
71
71
  return new Promise((resolve, reject) => {
72
- if (this.destroyed || this.readableEnded || this.closed) {
73
- return resolve();
74
- }
75
- if (typeof this.resume === "function") {
76
- this.on("data", () => { });
77
- this.on("end", resolve);
78
- this.on("error", reject);
79
- this.resume(); // Переводим в flowing mode для моментального слива данных
80
- }
81
- else {
72
+ const cleanup = () => {
73
+ this.removeListener("data", onData);
74
+ this.removeListener("end", resolve);
75
+ this.removeListener("error", reject);
76
+ };
77
+ const onData = () => { };
78
+ this.on("data", onData);
79
+ this.on("end", () => {
80
+ cleanup();
82
81
  resolve();
83
- }
82
+ });
83
+ this.on("error", (err) => {
84
+ cleanup();
85
+ reject(err);
86
+ });
87
+ this.resume();
84
88
  });
85
89
  },
86
90
  writable: true,
87
91
  configurable: true,
88
- enumerable: false, // Метод скрыт от сериализации и перебора ключей
92
+ enumerable: false,
89
93
  });
90
94
  }
91
95
  return {
@@ -95,12 +99,8 @@ export class NodeTransport {
95
99
  url: rawResponse.url,
96
100
  };
97
101
  }
98
- /**
99
- * Защищенная обертка для потоковой декомпрессии.
100
- * Гарантирует отсутствие утечек сокетов при ошибках или ручном закрытии стрима.
101
- */
102
102
  wrapDecompress(body, contentEncoding) {
103
- if (!body)
103
+ if (!(body instanceof Readable))
104
104
  return body;
105
105
  const encoding = contentEncoding?.toLowerCase().trim();
106
106
  if (!encoding || encoding === "none" || encoding === "identity") {
@@ -116,40 +116,44 @@ export class NodeTransport {
116
116
  else if (encoding === "br") {
117
117
  decompressor = zlib.createBrotliDecompress();
118
118
  }
119
- if (!decompressor) {
119
+ if (!decompressor)
120
120
  return body;
121
- }
122
- /**
123
- * Используем встроенный метод pipeline вместо .pipe().
124
- * Если zlib стрим выбросит ошибку парсинга данных (Z_DATA_ERROR) или пользователь
125
- * прервет чтение, pipeline автоматически вызовет .destroy() на исходном сетевом
126
- * потоке undici, освобождая сокет и возвращая его в пул CookieAgent.
127
- */
128
- const decompressedStream = pipeline(body, decompressor, (err) => {
129
- if (err) {
130
- decompressedStream.emit("error", err);
131
- if (this.executor.verbose) {
132
- console.error?.(`[Hyperttp] Decompression failed: ${err.message}`);
133
- }
121
+ return compose(body, decompressor);
122
+ }
123
+ async close() {
124
+ if (this.isClosed)
125
+ return;
126
+ this.isClosed = true;
127
+ try {
128
+ const structuralAgent = this.agent;
129
+ if (typeof structuralAgent.close === "function") {
130
+ await structuralAgent.close();
134
131
  }
135
- });
136
- return decompressedStream;
132
+ else {
133
+ await this.destroy();
134
+ }
135
+ }
136
+ catch (err) {
137
+ this.logWarning("Transport close error:", err);
138
+ }
137
139
  }
138
140
  async destroy() {
141
+ this.isClosed = true;
139
142
  await new Promise((resolve) => setImmediate(resolve));
140
143
  try {
141
- const anyAgent = this.agent;
142
- if (typeof anyAgent.close === "function") {
143
- await anyAgent.close();
144
- }
145
- else if (typeof anyAgent.destroy === "function") {
146
- await anyAgent.destroy();
144
+ const structuralAgent = this.agent;
145
+ if (typeof structuralAgent.destroy === "function") {
146
+ await structuralAgent.destroy();
147
147
  }
148
148
  }
149
149
  catch (err) {
150
- if (this.executor.verbose) {
151
- console.warn("Transport destroy error (likely race condition):", err);
152
- }
150
+ this.logWarning("Transport destroy error:", err);
151
+ }
152
+ }
153
+ logWarning(msg, err) {
154
+ if (this.executor["verbose"]) {
155
+ // обращение к приватному полю через bracket notation если нужно
156
+ console.warn(msg, err);
153
157
  }
154
158
  }
155
159
  }
@@ -1 +1 @@
1
- {"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/transports/node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/transports/node.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,11 @@ export interface TransportResponse {
15
15
  }
16
16
  export interface HyperTransport {
17
17
  execute(req: TransportRequest): Promise<TransportResponse>;
18
+ /** * Graceful shutdown: дожидается завершения текущих запросов.
19
+ */
20
+ close?(): Promise<void>;
21
+ /** * Forceful shutdown: немедленное закрытие соединений.
22
+ */
18
23
  destroy?(): Promise<void>;
19
24
  }
20
25
  //# sourceMappingURL=transport.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../src/types/transport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAE3D,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;IAC3C,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;IAC3C,IAAI,EAAE,GAAG,CAAC;IACV,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,GAAG,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC3D,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B"}
1
+ {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../src/types/transport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAE3D,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;IAC3C,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;IAC3C,IAAI,EAAE,GAAG,CAAC;IACV,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,GAAG,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC3D;OACG;IACH,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACxB;OACG;IACH,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B"}