@hyperttp/core 1.1.0 → 1.1.2

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.
@@ -7,25 +7,23 @@ import type { HttpResponse, HyperStats, InternalRequest } from "../types/hyper.j
7
7
  export declare class HyperCore {
8
8
  config: HttpClientOptions;
9
9
  private transport;
10
- private defaultHeaders;
11
10
  private transportPromise;
11
+ private readonly defaultHeaders;
12
12
  constructor(config: HttpClientOptions, transport?: HyperTransport);
13
- /**
14
- * Приватный метод для ленивого создания транспорта при первом запросе
15
- */
13
+ private createTransport;
16
14
  private ensureTransport;
17
- dispatch: <T = any>(req: InternalRequest) => Promise<HttpResponse<T>>;
18
- stream(req: RequestInterface | string): Promise<StreamResponse<any>>;
19
- get<T = any>(req: RequestInterface | string, signal?: AbortSignal): Promise<HttpResponse<T>>;
20
- post<T = any>(req: RequestInterface | string, body?: RequestBodyData, signal?: AbortSignal): Promise<HttpResponse<T>>;
21
- put<T = any>(req: RequestInterface | string, body?: RequestBodyData): Promise<HttpResponse<T>>;
22
- delete<T = any>(req: RequestInterface | string): Promise<HttpResponse<T>>;
23
- patch<T = any>(req: RequestInterface | string, body?: RequestBodyData): Promise<HttpResponse<T>>;
24
- options<T = any>(req: RequestInterface | string, body?: RequestBodyData): Promise<HttpResponse<T>>;
25
- head(req: RequestInterface | string): Promise<HttpResponse<null>>;
15
+ dispatch: <T = unknown>(req: InternalRequest) => Promise<HttpResponse<T>>;
16
+ stream(req: RequestInterface | string, signal?: AbortSignal): Promise<StreamResponse<any>>;
17
+ get<T = unknown>(req: RequestInterface | string, signal?: AbortSignal): Promise<HttpResponse<T>>;
18
+ post<T = unknown>(req: RequestInterface | string, body?: RequestBodyData, signal?: AbortSignal): Promise<HttpResponse<T>>;
19
+ put<T = unknown>(req: RequestInterface | string, body?: RequestBodyData, signal?: AbortSignal): Promise<HttpResponse<T>>;
20
+ patch<T = unknown>(req: RequestInterface | string, body?: RequestBodyData, signal?: AbortSignal): Promise<HttpResponse<T>>;
21
+ delete<T = unknown>(req: RequestInterface | string, signal?: AbortSignal): Promise<HttpResponse<T>>;
22
+ options<T = unknown>(req: RequestInterface | string, body?: RequestBodyData, signal?: AbortSignal): Promise<HttpResponse<T>>;
23
+ head(req: RequestInterface | string, signal?: AbortSignal): Promise<HttpResponse<null>>;
24
+ private buildInternalRequest;
26
25
  extend(options: Partial<HttpClientOptions>): HyperCore;
27
26
  create(options: Partial<HttpClientOptions>): HyperCore;
28
- private requestInternal;
29
27
  getStats(): HyperStats;
30
28
  getAllMetrics(): RequestMetrics[];
31
29
  destroy(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"HyperCore.d.ts","sourceRoot":"","sources":["../../src/Core/HyperCore.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC7E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EACV,YAAY,EACZ,UAAU,EACV,eAAe,EAChB,MAAM,mBAAmB,CAAC;AAoB3B,qBAAa,SAAS;IACb,MAAM,EAAE,iBAAiB,CAAC;IACjC,OAAO,CAAC,SAAS,CAA+B;IAChD,OAAO,CAAC,cAAc,CAAyB;IAC/C,OAAO,CAAC,gBAAgB,CAAwC;gBACpD,MAAM,EAAE,iBAAiB,EAAE,SAAS,CAAC,EAAE,cAAc;IAcjE;;OAEG;YACW,eAAe;IAsBtB,QAAQ,GAAU,CAAC,GAAG,GAAG,EAC9B,KAAK,eAAe,KACnB,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAgCzB;IAEW,MAAM,CACjB,GAAG,EAAE,gBAAgB,GAAG,MAAM,GAC7B,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;IA4BxB,GAAG,CAAC,CAAC,GAAG,GAAG,EAChB,GAAG,EAAE,gBAAgB,GAAG,MAAM,EAC9B,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAapB,IAAI,CAAC,CAAC,GAAG,GAAG,EACjB,GAAG,EAAE,gBAAgB,GAAG,MAAM,EAC9B,IAAI,CAAC,EAAE,eAAe,EACtB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAIpB,GAAG,CAAC,CAAC,GAAG,GAAG,EAChB,GAAG,EAAE,gBAAgB,GAAG,MAAM,EAC9B,IAAI,CAAC,EAAE,eAAe,GACrB,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAIpB,MAAM,CAAC,CAAC,GAAG,GAAG,EACnB,GAAG,EAAE,gBAAgB,GAAG,MAAM,GAC7B,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAIpB,KAAK,CAAC,CAAC,GAAG,GAAG,EAClB,GAAG,EAAE,gBAAgB,GAAG,MAAM,EAC9B,IAAI,CAAC,EAAE,eAAe,GACrB,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAIpB,OAAO,CAAC,CAAC,GAAG,GAAG,EACpB,GAAG,EAAE,gBAAgB,GAAG,MAAM,EAC9B,IAAI,CAAC,EAAE,eAAe,GACrB,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAId,IAAI,CACf,GAAG,EAAE,gBAAgB,GAAG,MAAM,GAC7B,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAIvB,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,iBAAiB,CAAC,GAAG,SAAS;IAWtD,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,iBAAiB,CAAC,GAAG,SAAS;YAI/C,eAAe;IAqBtB,QAAQ,IAAI,UAAU;IAGtB,aAAa,IAAI,cAAc,EAAE;IAI3B,OAAO;CAWrB"}
1
+ {"version":3,"file":"HyperCore.d.ts","sourceRoot":"","sources":["../../src/Core/HyperCore.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC7E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EACV,YAAY,EACZ,UAAU,EACV,eAAe,EAChB,MAAM,mBAAmB,CAAC;AAkB3B,qBAAa,SAAS;IACb,MAAM,EAAE,iBAAiB,CAAC;IACjC,OAAO,CAAC,SAAS,CAA+B;IAChD,OAAO,CAAC,gBAAgB,CAAwC;IAChE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAoC;gBAEvD,MAAM,EAAE,iBAAiB,EAAE,SAAS,CAAC,EAAE,cAAc;YAsBnD,eAAe;IAS7B,OAAO,CAAC,eAAe;IAahB,QAAQ,GAAU,CAAC,GAAG,OAAO,EAClC,KAAK,eAAe,KACnB,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAqBzB;IAEW,MAAM,CACjB,GAAG,EAAE,gBAAgB,GAAG,MAAM,EAC9B,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;IAiCxB,GAAG,CAAC,CAAC,GAAG,OAAO,EACpB,GAAG,EAAE,gBAAgB,GAAG,MAAM,EAC9B,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAMpB,IAAI,CAAC,CAAC,GAAG,OAAO,EACrB,GAAG,EAAE,gBAAgB,GAAG,MAAM,EAC9B,IAAI,CAAC,EAAE,eAAe,EACtB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAMpB,GAAG,CAAC,CAAC,GAAG,OAAO,EACpB,GAAG,EAAE,gBAAgB,GAAG,MAAM,EAC9B,IAAI,CAAC,EAAE,eAAe,EACtB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAMpB,KAAK,CAAC,CAAC,GAAG,OAAO,EACtB,GAAG,EAAE,gBAAgB,GAAG,MAAM,EAC9B,IAAI,CAAC,EAAE,eAAe,EACtB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAMpB,MAAM,CAAC,CAAC,GAAG,OAAO,EACvB,GAAG,EAAE,gBAAgB,GAAG,MAAM,EAC9B,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAMpB,OAAO,CAAC,CAAC,GAAG,OAAO,EACxB,GAAG,EAAE,gBAAgB,GAAG,MAAM,EAC9B,IAAI,CAAC,EAAE,eAAe,EACtB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAMpB,IAAI,CACT,GAAG,EAAE,gBAAgB,GAAG,MAAM,EAC9B,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAM9B,OAAO,CAAC,oBAAoB;IAgCrB,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,iBAAiB,CAAC,GAAG,SAAS;IAWtD,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,iBAAiB,CAAC,GAAG,SAAS;IAGtD,QAAQ,IAAI,UAAU;IAGtB,aAAa,IAAI,cAAc,EAAE;IAI3B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAYtC"}
package/Core/HyperCore.js CHANGED
@@ -1,96 +1,94 @@
1
1
  import { defaultConfig } from "../defaultConfig.js";
2
- import { deepMerge } from "../utils/merge.js";
3
- const getTimestamp = () => {
4
- return typeof process !== "undefined" && process.hrtime?.bigint
5
- ? process.hrtime.bigint()
6
- : performance.now();
7
- };
8
- const getDurationMs = (start, end) => {
9
- if (typeof start === "bigint" && typeof end === "bigint") {
10
- return Number(end - start) / 1_000_000;
11
- }
12
- return end - start;
2
+ const mergeHeadersFast = (base, override) => {
3
+ if (!override)
4
+ return { ...base };
5
+ const keys = Object.keys(override);
6
+ if (keys.length === 0)
7
+ return { ...base };
8
+ return {
9
+ ...base,
10
+ ...override,
11
+ };
13
12
  };
14
13
  export class HyperCore {
15
14
  config;
16
15
  transport = null;
17
- defaultHeaders;
18
16
  transportPromise = null;
17
+ defaultHeaders;
19
18
  constructor(config, transport) {
20
- const finalConfig = deepMerge({ ...defaultConfig }, config);
21
- this.config = finalConfig;
19
+ this.config = {
20
+ ...defaultConfig,
21
+ ...config,
22
+ network: {
23
+ ...defaultConfig.network,
24
+ ...config.network,
25
+ },
26
+ };
22
27
  if (transport) {
23
28
  this.transport = transport;
24
29
  }
25
30
  this.defaultHeaders = {
26
31
  Accept: "application/json, text/plain, */*",
27
32
  "Accept-Encoding": "gzip, deflate, br",
28
- "User-Agent": config.network?.userAgent || "Hyperttp/2.0",
33
+ "User-Agent": this.config.network?.userAgent ?? "Hyperttp/2.0",
34
+ ...(this.config.network?.headers ?? {}),
29
35
  };
30
36
  }
31
- /**
32
- * Приватный метод для ленивого создания транспорта при первом запросе
33
- */
34
- async ensureTransport() {
35
- if (this.transportPromise)
36
- return this.transportPromise;
37
- if (this.transport)
38
- return this.transport;
39
- this.transportPromise = (async () => {
40
- let transport;
41
- if (typeof Bun !== "undefined") {
42
- const { BunTransport } = await import("../transports/bun.js");
43
- transport = new BunTransport(this.config);
44
- }
45
- else {
46
- const { NodeTransport } = await import("../transports/node.js");
47
- transport = new NodeTransport(this.config);
48
- }
49
- this.transport = transport;
50
- return transport;
51
- })();
37
+ async createTransport() {
38
+ if (typeof Bun !== "undefined") {
39
+ const { BunTransport } = await import("../transports/bun.js");
40
+ return new BunTransport(this.config);
41
+ }
42
+ const { NodeTransport } = await import("../transports/node.js");
43
+ return new NodeTransport(this.config);
44
+ }
45
+ ensureTransport() {
46
+ if (this.transport) {
47
+ return Promise.resolve(this.transport);
48
+ }
49
+ if (!this.transportPromise) {
50
+ this.transportPromise = this.createTransport().then((transport) => {
51
+ this.transport = transport;
52
+ return transport;
53
+ });
54
+ }
52
55
  return this.transportPromise;
53
56
  }
54
57
  dispatch = async (req) => {
55
- const urlString = typeof req.url === "string" ? req.url : req.url.getURL();
56
58
  if (req.signal?.aborted) {
57
59
  throw new Error("Request aborted by user");
58
60
  }
59
- const activeTransport = await this.ensureTransport();
60
- req.meta = req.meta || {};
61
- req.meta.timings = req.meta.timings || {};
62
- const startNetwork = this.config.trackMetrics ? getTimestamp() : null;
63
- const rawResponse = await activeTransport.execute({
61
+ const transport = this.transport ?? (await this.ensureTransport());
62
+ const rawResponse = await transport.execute({
64
63
  method: req.method,
65
- url: urlString,
64
+ url: req.url,
66
65
  headers: req.headers,
67
66
  body: req.body,
68
67
  signal: req.signal,
69
68
  });
70
- if (this.config.trackMetrics && startNetwork !== null) {
71
- req.meta.timings.networkMs = getDurationMs(startNetwork, getTimestamp());
72
- }
73
69
  return {
74
70
  status: rawResponse.status,
75
71
  headers: rawResponse.headers,
76
- body: req.method === "HEAD" ? undefined : rawResponse.body,
72
+ body: rawResponse.body,
77
73
  url: rawResponse.url,
78
74
  };
79
75
  };
80
- async stream(req) {
81
- const url = typeof req === "string" ? req : req.getURL();
82
- const signal = typeof req !== "string"
83
- ? (req.getSignal?.() ?? req.signal)
84
- : undefined;
85
- const headers = {
86
- ...this.defaultHeaders,
87
- ...(typeof req !== "string" ? req.getHeaders?.() : {}),
88
- };
89
- const activeTransport = await this.ensureTransport();
90
- const rawResponse = await activeTransport.execute({
76
+ async stream(req, signal) {
77
+ let url;
78
+ let reqHeaders;
79
+ if (typeof req === "string") {
80
+ url = req;
81
+ }
82
+ else {
83
+ url = req.getURL();
84
+ signal = req.getSignal?.() ?? req.signal;
85
+ reqHeaders = req.getHeaders?.();
86
+ }
87
+ const transport = this.transport ?? (await this.ensureTransport());
88
+ const rawResponse = await transport.execute({
91
89
  method: "GET",
92
90
  url,
93
- headers,
91
+ headers: mergeHeadersFast(this.defaultHeaders, reqHeaders),
94
92
  signal,
95
93
  });
96
94
  return {
@@ -100,35 +98,56 @@ export class HyperCore {
100
98
  url: rawResponse.url,
101
99
  };
102
100
  }
101
+ /* ───────────────────────────────────────────────────────────────────────── */
102
+ /* ПЛИОМОРФНЫЕ МЕТОДЫ ТЕПЕРЬ ВЫЗЫВАЮТ ОДИН СТАТИЧЕСКИЙ МЕТОД ОДНОРОДНО */
103
+ /* ───────────────────────────────────────────────────────────────────────── */
103
104
  get(req, signal) {
104
- if (typeof req === "string") {
105
- return this.dispatch({
106
- method: "GET",
107
- url: req,
108
- headers: { ...this.defaultHeaders },
109
- isGet: true,
110
- signal,
111
- });
112
- }
113
- return this.requestInternal("GET", req, undefined, true, signal);
105
+ return this.dispatch(this.buildInternalRequest("GET", req, undefined, signal));
114
106
  }
115
107
  post(req, body, signal) {
116
- return this.requestInternal("POST", req, body, false, signal);
108
+ return this.dispatch(this.buildInternalRequest("POST", req, body, signal));
117
109
  }
118
- put(req, body) {
119
- return this.requestInternal("PUT", req, body, false);
110
+ put(req, body, signal) {
111
+ return this.dispatch(this.buildInternalRequest("PUT", req, body, signal));
120
112
  }
121
- delete(req) {
122
- return this.requestInternal("DELETE", req, undefined, false);
113
+ patch(req, body, signal) {
114
+ return this.dispatch(this.buildInternalRequest("PATCH", req, body, signal));
123
115
  }
124
- patch(req, body) {
125
- return this.requestInternal("PATCH", req, body, false);
116
+ delete(req, signal) {
117
+ return this.dispatch(this.buildInternalRequest("DELETE", req, undefined, signal));
126
118
  }
127
- options(req, body) {
128
- return this.requestInternal("OPTIONS", req, body, false);
119
+ options(req, body, signal) {
120
+ return this.dispatch(this.buildInternalRequest("OPTIONS", req, body, signal));
129
121
  }
130
- async head(req) {
131
- return this.requestInternal("HEAD", req, undefined, false);
122
+ head(req, signal) {
123
+ return this.dispatch(this.buildInternalRequest("HEAD", req, undefined, signal));
124
+ }
125
+ buildInternalRequest(method, req, body, signal) {
126
+ let url;
127
+ let reqHeaders;
128
+ let reqSignal = signal;
129
+ let finalBody = body;
130
+ let meta = undefined;
131
+ if (typeof req === "string") {
132
+ url = req;
133
+ }
134
+ else {
135
+ url = req.getURL();
136
+ reqHeaders = req.getHeaders?.();
137
+ reqSignal = req.getSignal?.() ?? signal;
138
+ if (req.getBodyData)
139
+ finalBody = req.getBodyData();
140
+ if (req.getMeta)
141
+ meta = req.getMeta();
142
+ }
143
+ return {
144
+ method,
145
+ url,
146
+ headers: mergeHeadersFast(this.defaultHeaders, reqHeaders),
147
+ body: finalBody,
148
+ signal: reqSignal,
149
+ meta,
150
+ };
132
151
  }
133
152
  extend(options) {
134
153
  return new HyperCore({
@@ -140,19 +159,6 @@ export class HyperCore {
140
159
  create(options) {
141
160
  return this.extend(options);
142
161
  }
143
- async requestInternal(method, req, body, isGet = false, signal) {
144
- return this.dispatch({
145
- method,
146
- url: req,
147
- headers: {
148
- ...this.defaultHeaders,
149
- ...(typeof req !== "string" ? req.getHeaders?.() : {}),
150
- },
151
- body: typeof req !== "string" && req.getBodyData ? req.getBodyData() : body,
152
- isGet,
153
- signal: typeof req !== "string" ? req.getSignal?.() : signal,
154
- });
155
- }
156
162
  getStats() {
157
163
  return {};
158
164
  }
@@ -160,14 +166,15 @@ export class HyperCore {
160
166
  return [];
161
167
  }
162
168
  async destroy() {
163
- try {
164
- if (this.transport && typeof this.transport.destroy === "function") {
165
- await this.transport.destroy();
169
+ const transport = this.transport;
170
+ if (transport && typeof transport.destroy === "function") {
171
+ try {
172
+ await transport.destroy();
166
173
  }
167
- }
168
- catch (error) {
169
- if (this.config.verbose) {
170
- console.warn("[HyperCore] destroy failed:", error);
174
+ catch (error) {
175
+ if (this.config.verbose) {
176
+ console.warn("[HyperCore] destroy failed:", error);
177
+ }
171
178
  }
172
179
  }
173
180
  }
@@ -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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"}
@@ -33,7 +33,7 @@ export declare class RequestExecutor {
33
33
  * @en Executes a raw HTTP request.
34
34
  * @ru Выполняет "сырой" HTTP-запрос.
35
35
  */
36
- execute(method: string, url: string, headers: Record<string, string>, body: string | Buffer | undefined, signal?: AbortSignal, metrics?: RequestMetrics, interceptors?: DynamicInterceptor | any, meta?: {
36
+ execute(method: string, url: string, headers: Record<string, string | string[]>, body: string | Buffer | undefined, signal?: AbortSignal, metrics?: RequestMetrics, interceptors?: DynamicInterceptor | any, meta?: {
37
37
  responseType?: ResponseType;
38
38
  }): Promise<LowLevelResponse>;
39
39
  get verbose(): boolean;
@@ -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,CAAC,EAC/B,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,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 +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.0",
3
+ "version": "1.1.2",
4
4
  "description": "High-performance, extensible HTTP client for Node.js and Bun",
5
5
  "type": "module",
6
6
  "main": "./index.js",
@@ -7,13 +7,7 @@ export declare class BunTransport implements HyperTransport {
7
7
  private concurrencyQueue;
8
8
  constructor(config: HttpClientOptions);
9
9
  execute(req: TransportRequest): Promise<TransportResponse>;
10
- /**
11
- * Ищет куки, подходящие для текущего домена (включая wildcard-домены)
12
- */
13
10
  private getCookiesForDomain;
14
- /**
15
- * Парсит Set-Cookie с поддержкой директивы Domain=...
16
- */
17
11
  private updateCookies;
18
12
  destroy(): Promise<void>;
19
13
  }
@@ -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,CAA6B;IAC9C,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;IAsEvE;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAiB3B;;OAEG;IACH,OAAO,CAAC,aAAa;IAgDR,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAItC"}
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"}
package/transports/bun.js CHANGED
@@ -66,10 +66,30 @@ export class BunTransport {
66
66
  this.updateCookies(domain, setCookies);
67
67
  }
68
68
  const responseHeaders = response.headers.toJSON?.() ?? {};
69
+ const body = response.body;
70
+ if (body) {
71
+ Object.defineProperty(body, "dump", {
72
+ value: async function () {
73
+ if (this.locked)
74
+ return;
75
+ try {
76
+ for await (const chunk of this) {
77
+ void chunk;
78
+ }
79
+ }
80
+ catch {
81
+ //
82
+ }
83
+ },
84
+ writable: true,
85
+ configurable: true,
86
+ enumerable: false,
87
+ });
88
+ }
69
89
  return {
70
90
  status: response.status,
71
91
  headers: responseHeaders,
72
- body: response.body,
92
+ body: body,
73
93
  url: response.url,
74
94
  };
75
95
  }
@@ -80,24 +100,18 @@ export class BunTransport {
80
100
  nextResolver();
81
101
  }
82
102
  }
83
- /**
84
- * Ищет куки, подходящие для текущего домена (включая wildcard-домены)
85
- */
86
103
  getCookiesForDomain(requestDomain) {
87
- let matchedCookies = "";
88
- for (const [storedDomain, cookieStr] of this.cookieJar) {
104
+ const matchedCookies = [];
105
+ for (const [storedDomain, cookiesMap] of this.cookieJar) {
89
106
  if (requestDomain === storedDomain ||
90
107
  requestDomain.endsWith("." + storedDomain)) {
91
- matchedCookies = matchedCookies
92
- ? `${matchedCookies}; ${cookieStr}`
93
- : cookieStr;
108
+ for (const [key, val] of cookiesMap) {
109
+ matchedCookies.push(`${key}=${val}`);
110
+ }
94
111
  }
95
112
  }
96
- return matchedCookies;
113
+ return matchedCookies.length > 0 ? matchedCookies.join("; ") : "";
97
114
  }
98
- /**
99
- * Парсит Set-Cookie с поддержкой директивы Domain=...
100
- */
101
115
  updateCookies(requestDomain, setCookies) {
102
116
  for (let i = 0; i < setCookies.length; i++) {
103
117
  const cookieStr = setCookies[i];
@@ -123,24 +137,12 @@ export class BunTransport {
123
137
  break;
124
138
  }
125
139
  }
126
- let currentCookieString = this.cookieJar.get(targetDomain) || "";
127
- const searchPattern = `${key}=`;
128
- const startIdx = currentCookieString.indexOf(searchPattern);
129
- if (startIdx !== -1) {
130
- let endIdx = currentCookieString.indexOf(";", startIdx);
131
- if (endIdx === -1)
132
- endIdx = currentCookieString.length;
133
- currentCookieString =
134
- currentCookieString.slice(0, startIdx) +
135
- `${key}=${val}` +
136
- currentCookieString.slice(endIdx);
137
- }
138
- else {
139
- currentCookieString = currentCookieString
140
- ? `${currentCookieString}; ${key}=${val}`
141
- : `${key}=${val}`;
140
+ let domainMap = this.cookieJar.get(targetDomain);
141
+ if (!domainMap) {
142
+ domainMap = new Map();
143
+ this.cookieJar.set(targetDomain, domainMap);
142
144
  }
143
- this.cookieJar.set(targetDomain, currentCookieString);
145
+ domainMap.set(key, val);
144
146
  }
145
147
  }
146
148
  async destroy() {
@@ -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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"}
@@ -5,6 +5,11 @@ export declare class NodeTransport implements HyperTransport {
5
5
  private executor;
6
6
  constructor(config: HttpClientOptions);
7
7
  execute(req: TransportRequest): Promise<TransportResponse>;
8
+ /**
9
+ * Защищенная обертка для потоковой декомпрессии.
10
+ * Гарантирует отсутствие утечек сокетов при ошибках или ручном закрытии стрима.
11
+ */
12
+ private wrapDecompress;
8
13
  destroy(): Promise<void>;
9
14
  }
10
15
  //# sourceMappingURL=node.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/transports/node.ts"],"names":[],"mappings":"AAEA,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;IA0CxB,OAAO,CAAC,GAAG,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAmC1D,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;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,3 +1,5 @@
1
+ import { pipeline } from "node:stream";
2
+ import zlib from "node:zlib";
1
3
  import { CookieAgent } from "http-cookie-agent/undici";
2
4
  import { RequestExecutor } from "../Core/RequestExecutor.js";
3
5
  export class NodeTransport {
@@ -13,8 +15,8 @@ export class NodeTransport {
13
15
  ? 256
14
16
  : config.network.pipelining
15
17
  : allowH2
16
- ? 1
17
- : 10;
18
+ ? 100
19
+ : 1;
18
20
  this.agent = new CookieAgent({
19
21
  connections: concurrency === Infinity ? null : concurrency,
20
22
  pipelining,
@@ -43,13 +45,17 @@ export class NodeTransport {
43
45
  const normalizedHeaders = {};
44
46
  const rawHeaders = rawResponse.headers;
45
47
  const keys = Object.keys(rawHeaders);
48
+ let contentEncoding = undefined;
46
49
  for (let i = 0; i < keys.length; i++) {
47
50
  const key = keys[i];
48
51
  const value = rawHeaders[key];
49
52
  if (value === undefined)
50
53
  continue;
54
+ const lowerKey = key.toLowerCase();
55
+ if (lowerKey === "content-encoding") {
56
+ contentEncoding = Array.isArray(value) ? value[0] : value;
57
+ }
51
58
  if (Array.isArray(value)) {
52
- const lowerKey = key.toLowerCase();
53
59
  normalizedHeaders[key] =
54
60
  lowerKey === "set-cookie" ? value.join("\n") : value.join(", ");
55
61
  }
@@ -57,13 +63,78 @@ export class NodeTransport {
57
63
  normalizedHeaders[key] = value;
58
64
  }
59
65
  }
66
+ const decompressedBody = this.wrapDecompress(rawResponse.body, contentEncoding);
67
+ // Примешиваем высокопроизводительный метод .dump() прямо в инстанс стрима
68
+ if (decompressedBody) {
69
+ Object.defineProperty(decompressedBody, "dump", {
70
+ value: function () {
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 {
82
+ resolve();
83
+ }
84
+ });
85
+ },
86
+ writable: true,
87
+ configurable: true,
88
+ enumerable: false, // Метод скрыт от сериализации и перебора ключей
89
+ });
90
+ }
60
91
  return {
61
92
  status: rawResponse.status,
62
93
  headers: normalizedHeaders,
63
- body: rawResponse.body,
94
+ body: decompressedBody,
64
95
  url: rawResponse.url,
65
96
  };
66
97
  }
98
+ /**
99
+ * Защищенная обертка для потоковой декомпрессии.
100
+ * Гарантирует отсутствие утечек сокетов при ошибках или ручном закрытии стрима.
101
+ */
102
+ wrapDecompress(body, contentEncoding) {
103
+ if (!body)
104
+ return body;
105
+ const encoding = contentEncoding?.toLowerCase().trim();
106
+ if (!encoding || encoding === "none" || encoding === "identity") {
107
+ return body;
108
+ }
109
+ let decompressor = null;
110
+ if (encoding === "gzip") {
111
+ decompressor = zlib.createGunzip({ flush: zlib.constants.Z_SYNC_FLUSH });
112
+ }
113
+ else if (encoding === "deflate") {
114
+ decompressor = zlib.createInflate();
115
+ }
116
+ else if (encoding === "br") {
117
+ decompressor = zlib.createBrotliDecompress();
118
+ }
119
+ if (!decompressor) {
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
+ }
134
+ }
135
+ });
136
+ return decompressedStream;
137
+ }
67
138
  async destroy() {
68
139
  await new Promise((resolve) => setImmediate(resolve));
69
140
  try {
@@ -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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"}
package/types/hyper.d.ts CHANGED
@@ -1,19 +1,16 @@
1
- import type { Method } from "./http.js";
2
- import type { RequestBodyData, RequestInterface } from "./request.js";
1
+ import type { Method, ResponseType } from "./http.js";
2
+ import type { RequestBodyData } from "./request.js";
3
3
  export interface InternalRequest {
4
4
  method: Method;
5
- url: RequestInterface | string;
6
- headers: Record<string, string>;
5
+ url: string;
6
+ headers: Record<string, string | string[]>;
7
7
  body?: RequestBodyData;
8
8
  signal?: AbortSignal;
9
- isGet: boolean;
10
9
  meta?: {
11
10
  timings?: {
12
- serializationMs?: number;
13
11
  networkMs?: number;
14
- parsingMs?: number;
15
12
  };
16
- [key: string]: any;
13
+ responseType?: ResponseType;
17
14
  };
18
15
  }
19
16
  export interface HttpResponse<T = any> {
@@ -1 +1 @@
1
- {"version":3,"file":"hyper.d.ts","sourceRoot":"","sources":["../../src/types/hyper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEtE,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,gBAAgB,GAAG,MAAM,CAAC;IAC/B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE;QACL,OAAO,CAAC,EAAE;YACR,eAAe,CAAC,EAAE,MAAM,CAAC;YACzB,SAAS,CAAC,EAAE,MAAM,CAAC;YACnB,SAAS,CAAC,EAAE,MAAM,CAAC;SACpB,CAAC;QACF,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB,CAAC;CACH;AAED,MAAM,WAAW,YAAY,CAAC,CAAC,GAAG,GAAG;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC7B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,CAAC,CAAC;CACT;AAED,MAAM,WAAW,UAAU;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB"}
1
+ {"version":3,"file":"hyper.d.ts","sourceRoot":"","sources":["../../src/types/hyper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACtD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IAEf,GAAG,EAAE,MAAM,CAAC;IAEZ,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;IAE3C,IAAI,CAAC,EAAE,eAAe,CAAC;IAEvB,MAAM,CAAC,EAAE,WAAW,CAAC;IAErB,IAAI,CAAC,EAAE;QACL,OAAO,CAAC,EAAE;YACR,SAAS,CAAC,EAAE,MAAM,CAAC;SACpB,CAAC;QACF,YAAY,CAAC,EAAE,YAAY,CAAC;KAC7B,CAAC;CACH;AAED,MAAM,WAAW,YAAY,CAAC,CAAC,GAAG,GAAG;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC7B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,CAAC,CAAC;CACT;AAED,MAAM,WAAW,UAAU;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB"}
@@ -1,4 +1,4 @@
1
- import { PluginMetric } from "./plugins.js";
1
+ import { HyperPlugin } from "./plugins.js";
2
2
  export interface RequestMetrics {
3
3
  /**
4
4
  * @ru Время начала запроса (timestamp)
@@ -55,7 +55,7 @@ export interface RequestMetrics {
55
55
  * @en Request body hash (for caching)
56
56
  */
57
57
  bodyHash?: string;
58
- plugins?: Map<string, PluginMetric>;
58
+ plugins?: Map<string, HyperPlugin>;
59
59
  stages?: {
60
60
  serializationMs?: number;
61
61
  networkMs?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../../src/types/metrics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,aAAa,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,MAAM,EAAE,OAAO,CAAC;IAEhB;;;OAGG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,OAAO,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAEpC,MAAM,CAAC,EAAE;QACP,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;CACH"}
1
+ {"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../../src/types/metrics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,aAAa,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,MAAM,EAAE,OAAO,CAAC;IAEhB;;;OAGG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,OAAO,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAEnC,MAAM,CAAC,EAAE;QACP,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;CACH"}
@@ -49,6 +49,11 @@ export interface NetworkOptions {
49
49
  * @en User-Agent header string
50
50
  */
51
51
  userAgent?: string;
52
+ /**
53
+ * @ru Базовые заголовки по умолчанию для всех запросов
54
+ * @en Default base headers sent with every request
55
+ */
56
+ headers?: Record<string, string | string[]>;
52
57
  /**
53
58
  * @ru Функция валидации HTTP статуса
54
59
  * @en Function to validate HTTP status code
@@ -1 +1 @@
1
- {"version":3,"file":"network.d.ts","sourceRoot":"","sources":["../../src/types/network.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;;OAKG;IACH,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC;CAC9C"}
1
+ {"version":3,"file":"network.d.ts","sourceRoot":"","sources":["../../src/types/network.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;IAE5C;;;;;OAKG;IACH,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC;CAC9C"}
@@ -1,43 +1,43 @@
1
- import type { HyperCore } from "../Core/HyperCore.js";
2
1
  import type { HttpClientOptions } from "./options.js";
2
+ import type { HttpResponse, InternalRequest } from "./hyper.js";
3
3
  /**
4
- * @ru
5
- * Фазы жизненного цикла запроса (выполняются строго по очереди от начала до отправки).
6
- * Конвейер запроса: START -> PREPARE -> CONTROL -> FORMAT -> SEND.
7
- * Конвейер ответа: SEND -> FORMAT -> CONTROL -> PREPARE -> START.
8
- * @en
9
- * Request lifecycle phases (executed strictly in order from start to dispatch).
10
- * Request pipeline: START -> PREPARE -> CONTROL -> FORMAT -> SEND.
11
- * Response pipeline: SEND -> FORMAT -> CONTROL -> PREPARE -> START.
4
+ * Фазы жизненного цикла, определяющие строгий порядок выполнения в "луковичной" (onion) архитектуре.
5
+ * Запрос движется снаружи внутрь: от мониторинга к сети (START -> PREPARE -> CONTROL -> FORMAT -> NETWORK).
6
+ * Ответ возвращается в обратном порядке: изнутри наружу (NETWORK -> FORMAT -> CONTROL -> PREPARE -> START).
12
7
  */
13
- export type PluginPhase = /**
14
- * @ru Самое начало. Тут запускаются таймеры метрик и пишутся первые логи.
15
- * @en The very beginning. Metrics timers start and initial logs are written here.
16
- */ "START" /**
17
- * @ru Подготовка запроса. Проверка кэша (чтобы вернуть ответ сразу) или добавление токенов авторизации.
18
- * @en Request preparation. Checking cache (to return early) or injecting auth tokens.
19
- */ | "PREPARE" /**
20
- * @ru Контроль потока. Управление очередью запросов, лимитами частоты и повторами при ошибках.
21
- * @en Flow control. Managing request queues, rate limits, and error retries.
22
- */ | "CONTROL" /**
23
- * @ru Форматирование. Превращение объектов в JSON/FormData перед отправкой и парсинг ответов сервера.
24
- * @en Data formatting. Serializing objects to JSON/FormData before sending and parsing server responses.
25
- */ | "FORMAT" /**
26
- * @ru Отправка. Низкоуровневый fetch, работа через прокси или утилиты обхода (Zapret, Xray).
27
- * @en Dispatching. Low-level fetch operations, proxy routing, or bypass utilities (Zapret, Xray).
28
- */ | "NETWORK";
29
- export interface HyperPlugin<T extends HyperCore = HyperCore> {
8
+ export type PluginPhase = "START" | "PREPARE" | "CONTROL" | "FORMAT" | "NETWORK";
9
+ /**
10
+ * Сигнатура функции диспетчеризации запроса.
11
+ */
12
+ export type DispatchFn = <T = unknown>(req: InternalRequest) => Promise<HttpResponse<T>>;
13
+ /**
14
+ * Функция-обертка (декоратор) для диспетчера.
15
+ * Принимает ссылку на следующий слой луковицы (`next`) и контекст клиента.
16
+ */
17
+ export type WrapDispatch = (next: DispatchFn, ctx: {
18
+ config: HttpClientOptions;
19
+ core: any;
20
+ }) => DispatchFn;
21
+ /**
22
+ * Единый интерфейс для создания плагинов Hyperttp.
23
+ * Любой внешний пакет (cache, metrics) обязан реализовать этот контракт.
24
+ */
25
+ export interface HyperPlugin {
26
+ /** Уникальное имя плагина для логирования и предотвращения дублирования */
30
27
  name: string;
28
+ /** Фаза, определяющая место плагина в конвейере выполнения */
31
29
  phase: PluginPhase;
30
+ /** Динамическая проверка: должен ли плагин активироваться на основе переданного конфига */
32
31
  enabled: (config: HttpClientOptions) => boolean;
33
- apply: (client: HyperCore, config: HttpClientOptions) => T;
34
- }
35
- export interface PluginMetric {
36
- pluginName: string;
37
- phase: string;
38
- inboundMs: number;
39
- outboundMs: number;
40
- selfTimeMs: number;
41
- totalTimeMs: number;
32
+ /**
33
+ * Хук инициализации. Вызывается один раз при создании клиента.
34
+ * Здесь плагин может безопасно расширять методы ядра или вешать подписки.
35
+ */
36
+ setup?: (core: any, config: HttpClientOptions) => void;
37
+ /**
38
+ * Чистая функция-обертка для конвейера запросов.
39
+ * Больше никаких побочных эффектов внутри!
40
+ */
41
+ wrapDispatch?: WrapDispatch;
42
42
  }
43
43
  //# sourceMappingURL=plugins.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugins.d.ts","sourceRoot":"","sources":["../../src/types/plugins.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEtD;;;;;;;;;GASG;AACH,MAAM,MAAM,WAAW,GACnB;;;GAGC,CACH,OAAO,CAAC;;;GAGL,GACD,SAAS,CAAC;;;GAGT,GACD,SAAS,CAAC;;;GAGT,GACD,QAAQ,CAAC;;;GAGR,GACD,SAAS,CAAC;AAEd,MAAM,WAAW,WAAW,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS;IAC1D,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,WAAW,CAAC;IACnB,OAAO,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,OAAO,CAAC;IAChD,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,iBAAiB,KAAK,CAAC,CAAC;CAC5D;AAED,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB"}
1
+ {"version":3,"file":"plugins.d.ts","sourceRoot":"","sources":["../../src/types/plugins.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEhE;;;;GAIG;AACH,MAAM,MAAM,WAAW,GACnB,OAAO,GACP,SAAS,GACT,SAAS,GACT,QAAQ,GACR,SAAS,CAAC;AAEd;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,GAAG,OAAO,EACnC,GAAG,EAAE,eAAe,KACjB,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;AAE9B;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,CACzB,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE;IAAE,MAAM,EAAE,iBAAiB,CAAC;IAAC,IAAI,EAAE,GAAG,CAAA;CAAE,KAC1C,UAAU,CAAC;AAEhB;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,2EAA2E;IAC3E,IAAI,EAAE,MAAM,CAAC;IAEb,8DAA8D;IAC9D,KAAK,EAAE,WAAW,CAAC;IAEnB,2FAA2F;IAC3F,OAAO,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,OAAO,CAAC;IAEhD;;;OAGG;IACH,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAEvD;;;OAGG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B"}
@@ -164,6 +164,7 @@ export interface RequestInterface {
164
164
  * @returns AbortSignal or undefined
165
165
  */
166
166
  getSignal?(): AbortSignal | undefined;
167
+ getMeta?(): Record<string, any>;
167
168
  }
168
169
  /**
169
170
  * @ru Метаданные для конвертации ответа
@@ -1 +1 @@
1
- {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../src/types/request.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAEpD;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,CAC/B,MAAM,EACN,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,IAAI,CACxD,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,GAAG,GAAG,IAAI,GAAG,SAAS,CAAC;AAErD;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB;;;OAGG;IACH,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB;;;OAGG;IACH,QAAQ,CAAC,EAAE,eAAe,CAAC;CAC5B,CAAC;AAEF;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;OAIG;IACH,MAAM,IAAI,MAAM,CAAC;IAEjB;;;;OAIG;IACH,UAAU,IAAI,cAAc,CAAC;IAE7B;;;;OAIG;IACH,WAAW,IAAI,eAAe,CAAC;IAE/B;;;;;OAKG;IACH,OAAO,CAAC,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,CAAC;IAEzC;;;;;OAKG;IACH,OAAO,CAAC,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,CAAC;IAEzC;;;;;OAKG;IACH,UAAU,CAAC,CAAC,OAAO,EAAE,cAAc,GAAG,gBAAgB,CAAC;IAEvD;;;;;OAKG;IACH,UAAU,CAAC,CAAC,OAAO,EAAE,cAAc,GAAG,gBAAgB,CAAC;IAEvD;;;;OAIG;IACH,QAAQ,CAAC,IAAI,YAAY,CAAC;IAE1B;;;;;OAKG;IACH,QAAQ,CAAC,CAAC,KAAK,EAAE,YAAY,GAAG,gBAAgB,CAAC;IAEjD;;;;;OAKG;IACH,QAAQ,CAAC,CAAC,KAAK,EAAE,YAAY,GAAG,gBAAgB,CAAC;IAEjD;;;;OAIG;IACH,gBAAgB,CAAC,IAAI,MAAM,CAAC;IAE5B;;;;OAIG;IACH,iBAAiB,CAAC,IAAI,MAAM,CAAC;IAE7B;;;;;OAKG;IACH,WAAW,CAAC,CAAC,QAAQ,EAAE,eAAe,GAAG,gBAAgB,CAAC;IAE1D;;;;;OAKG;IACH,WAAW,CAAC,CAAC,QAAQ,EAAE,eAAe,GAAG,gBAAgB,CAAC;IAE1D;;;;;OAKG;IACH,SAAS,CAAC,CAAC,MAAM,EAAE,WAAW,GAAG,gBAAgB,CAAC;IAElD;;;;OAIG;IACH,SAAS,CAAC,IAAI,WAAW,GAAG,SAAS,CAAC;CACvC;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;CACd"}
1
+ {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../src/types/request.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAEpD;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,CAC/B,MAAM,EACN,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,IAAI,CACxD,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,GAAG,GAAG,IAAI,GAAG,SAAS,CAAC;AAErD;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB;;;OAGG;IACH,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB;;;OAGG;IACH,QAAQ,CAAC,EAAE,eAAe,CAAC;CAC5B,CAAC;AAEF;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;OAIG;IACH,MAAM,IAAI,MAAM,CAAC;IAEjB;;;;OAIG;IACH,UAAU,IAAI,cAAc,CAAC;IAE7B;;;;OAIG;IACH,WAAW,IAAI,eAAe,CAAC;IAE/B;;;;;OAKG;IACH,OAAO,CAAC,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,CAAC;IAEzC;;;;;OAKG;IACH,OAAO,CAAC,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,CAAC;IAEzC;;;;;OAKG;IACH,UAAU,CAAC,CAAC,OAAO,EAAE,cAAc,GAAG,gBAAgB,CAAC;IAEvD;;;;;OAKG;IACH,UAAU,CAAC,CAAC,OAAO,EAAE,cAAc,GAAG,gBAAgB,CAAC;IAEvD;;;;OAIG;IACH,QAAQ,CAAC,IAAI,YAAY,CAAC;IAE1B;;;;;OAKG;IACH,QAAQ,CAAC,CAAC,KAAK,EAAE,YAAY,GAAG,gBAAgB,CAAC;IAEjD;;;;;OAKG;IACH,QAAQ,CAAC,CAAC,KAAK,EAAE,YAAY,GAAG,gBAAgB,CAAC;IAEjD;;;;OAIG;IACH,gBAAgB,CAAC,IAAI,MAAM,CAAC;IAE5B;;;;OAIG;IACH,iBAAiB,CAAC,IAAI,MAAM,CAAC;IAE7B;;;;;OAKG;IACH,WAAW,CAAC,CAAC,QAAQ,EAAE,eAAe,GAAG,gBAAgB,CAAC;IAE1D;;;;;OAKG;IACH,WAAW,CAAC,CAAC,QAAQ,EAAE,eAAe,GAAG,gBAAgB,CAAC;IAE1D;;;;;OAKG;IACH,SAAS,CAAC,CAAC,MAAM,EAAE,WAAW,GAAG,gBAAgB,CAAC;IAElD;;;;OAIG;IACH,SAAS,CAAC,IAAI,WAAW,GAAG,SAAS,CAAC;IAEtC,OAAO,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACjC;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;CACd"}
@@ -3,13 +3,13 @@ import type { RequestBodyData } from "../types/request.js";
3
3
  export interface TransportRequest {
4
4
  method: Method;
5
5
  url: string;
6
- headers: Record<string, string>;
6
+ headers: Record<string, string | string[]>;
7
7
  body?: RequestBodyData;
8
8
  signal?: AbortSignal;
9
9
  }
10
10
  export interface TransportResponse {
11
11
  status: number;
12
- headers: Record<string, string>;
12
+ headers: Record<string, string | string[]>;
13
13
  body: any;
14
14
  url: string;
15
15
  }
@@ -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,CAAC,CAAC;IAChC,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,CAAC,CAAC;IAChC,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,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B"}