@hyperttp/core 1.2.5 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,43 +1,61 @@
1
1
  import type { IHyperCore, HyperTransport, HttpClientOptions, HyperPlugin, InternalRequest, HttpResponse, RequestInterface, StreamResponse, RequestBodyData } from "@hyperttp/types";
2
- export type Runtime = "bun" | "node";
3
- export declare function getRuntime(): Runtime;
4
- type TransportDef = {
5
- name: string;
6
- runtime: Runtime[];
7
- pkg: string;
8
- export: string;
9
- priority: number;
10
- };
11
- export declare const TRANSPORTS: TransportDef[];
12
- export declare function resolveTransport(config: HttpClientOptions): Promise<HyperTransport>;
13
2
  export declare class HyperCore implements IHyperCore {
14
3
  config: HttpClientOptions;
15
- private transport;
16
- private transportPromise;
4
+ private readonly transportManager;
17
5
  private readonly defaultHeaders;
18
6
  private readonly pluginCtx;
19
7
  private readonly pipelines;
20
- constructor(config: HttpClientOptions, transport?: HyperTransport);
21
- private createTransport;
8
+ constructor(config?: HttpClientOptions, transport?: HyperTransport);
9
+ private get transport();
22
10
  private ensureTransport;
11
+ /**
12
+ * Центральный метод обработки запросов
13
+ */
14
+ private dispatchInternal;
23
15
  dispatch<T = unknown>(req: InternalRequest): Promise<HttpResponse<T>>;
16
+ /**
17
+ * Регистрация плагинов
18
+ */
24
19
  use(plugin: HyperPlugin): this;
20
+ /**
21
+ * Публичные HTTP методы-помощники
22
+ */
25
23
  stream(req: RequestInterface | string, signal?: AbortSignal): Promise<StreamResponse<unknown>>;
24
+ postStream<T = unknown>(req: RequestInterface | string, body?: RequestBodyData, signal?: AbortSignal): Promise<StreamResponse<T>>;
26
25
  get<T = unknown>(req: RequestInterface | string, signal?: AbortSignal): Promise<HttpResponse<T>>;
27
26
  post<T = unknown>(req: RequestInterface | string, body?: RequestBodyData, signal?: AbortSignal): Promise<HttpResponse<T>>;
28
- postStream<T = unknown>(req: RequestInterface | string, body?: RequestBodyData, signal?: AbortSignal): Promise<StreamResponse<T>>;
29
27
  put<T = unknown>(req: RequestInterface | string, body?: RequestBodyData, signal?: AbortSignal): Promise<HttpResponse<T>>;
30
28
  patch<T = unknown>(req: RequestInterface | string, body?: RequestBodyData, signal?: AbortSignal): Promise<HttpResponse<T>>;
31
29
  delete<T = unknown>(req: RequestInterface | string, signal?: AbortSignal): Promise<HttpResponse<T>>;
32
30
  options<T = unknown>(req: RequestInterface | string, body?: RequestBodyData, signal?: AbortSignal): Promise<HttpResponse<T>>;
33
31
  head(req: RequestInterface | string, signal?: AbortSignal): Promise<HttpResponse<null>>;
34
- private buildInternalRequest;
35
- extend(options: Partial<HttpClientOptions>): this;
32
+ extend(options: Partial<HttpClientOptions>): HyperCore;
36
33
  create(options: Partial<HttpClientOptions>): HyperCore;
37
34
  destroy(graceful?: boolean): Promise<void>;
38
35
  json<T = unknown>(req: RequestInterface | string, signal?: AbortSignal): Promise<T>;
39
36
  text(req: RequestInterface | string, signal?: AbortSignal): Promise<string>;
40
37
  dump(req: RequestInterface | string, signal?: AbortSignal): Promise<void>;
38
+ /**
39
+ * ПРИВАТНЫЕ МЕТОДЫ-ПОМОЩНИКИ (РЕФАКТОРИНГ)
40
+ */
41
+ private runResponsePipeline;
42
+ /**
43
+ * Изолированная обработка ошибок пайплайна ответа
44
+ */
45
+ private handleDispatchError;
46
+ /**
47
+ * Применение встроенной декомпрессии на основе заголовков ответа транспорта
48
+ */
49
+ private applyDecompression;
50
+ /**
51
+ * Сборка внутреннего объекта запроса InternalRequest
52
+ */
53
+ private buildInternalRequest;
54
+ /**
55
+ * Фабрика сохранения прототипа исходного запроса с подменой дескрипторов базовых свойств
56
+ */
57
+ private createInternalRequestObject;
58
+ private appendQueryParams;
59
+ private dispatchShortcut;
41
60
  }
42
- export {};
43
61
  //# 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,123 +1,72 @@
1
1
  import { defaultConfig } from "../defaultConfig.js";
2
2
  import { mapResponseFast, mapStreamFast, mergeHeadersFast, } from "../utils/response.js";
3
- import { createRequire } from "node:module";
4
- import { createPipelines, executeErrorPipeline, executeRequestPipeline, executeResponsePipeline, insertHookSorted, } from "../utils/pipeline.js";
5
- export function getRuntime() {
6
- if (typeof Bun !== "undefined")
7
- return "bun";
8
- return "node";
9
- }
10
- export const TRANSPORTS = [
11
- {
12
- name: "Bun",
13
- runtime: ["bun"],
14
- pkg: "@hyperttp/transport-bun",
15
- export: "BunTransport",
16
- priority: 100,
17
- },
18
- {
19
- name: "Undici",
20
- runtime: ["node"],
21
- pkg: "@hyperttp/transport-undici",
22
- export: "UndiciTransport",
23
- priority: 90,
24
- },
25
- {
26
- name: "Node",
27
- runtime: ["node", "bun"],
28
- pkg: "../transports/node.js",
29
- export: "NodeTransport",
30
- priority: 10,
31
- },
32
- ];
33
- export async function resolveTransport(config) {
34
- if (config.customTransport) {
35
- config.logger?.("debug", "Using user-provided custom transport.");
36
- return config.customTransport;
37
- }
38
- const runtime = getRuntime();
39
- const candidates = TRANSPORTS.filter((t) => t.runtime.includes(runtime)).sort((a, b) => b.priority - a.priority);
40
- const localRequire = createRequire(process.cwd() + "/package.json");
41
- for (const t of candidates) {
42
- config.logger?.("debug", `Loading transport: ${t.name}`);
43
- try {
44
- const path = t.pkg.startsWith(".")
45
- ? new URL(t.pkg, import.meta.url).href
46
- : localRequire.resolve(t.pkg);
47
- const mod = await import(path);
48
- const Transport = mod[t.export] || mod.default?.[t.export] || mod.default;
49
- if (!Transport)
50
- continue;
51
- config.logger?.("info", `Selected transport: ${t.name}`);
52
- return new Transport(config);
53
- }
54
- catch (e) {
55
- config.logger?.("debug", `Skip ${t.name}: ${e}`);
56
- }
57
- }
58
- throw new Error(`No compatible transport implementation available for runtime: ${runtime}`);
59
- }
3
+ import { TransportManager } from "../transports/manager.js";
4
+ import { createPipelines, executeErrorPipeline, executeRequestPipeline, executeResponsePipeline, executeResponseDataPipeline, insertHookSorted, } from "../utils/pipeline.js";
5
+ import { normalizeBody, normalizeHeaders, normalizeUrl, } from "../utils/normalize.js";
6
+ import { decompressBuffer, createDecompressStream, } from "../utils/decompress.js";
60
7
  export class HyperCore {
61
8
  config;
62
- transport = null;
63
- transportPromise = null;
9
+ transportManager;
64
10
  defaultHeaders;
65
11
  pluginCtx;
66
12
  pipelines = createPipelines();
67
- constructor(config, transport) {
13
+ constructor(config = defaultConfig, transport) {
68
14
  this.config = {
69
15
  ...defaultConfig,
70
16
  ...config,
71
17
  network: { ...defaultConfig.network, ...config.network },
72
18
  };
73
- if (transport) {
74
- this.transport = transport;
75
- this.transportPromise = Promise.resolve(transport);
76
- if ("config" in transport) {
77
- transport.config = this.config;
78
- }
79
- }
80
- this.defaultHeaders = {
19
+ this.transportManager = new TransportManager(this.config, transport);
20
+ this.defaultHeaders = normalizeHeaders({
81
21
  Accept: "application/json, text/plain, */*",
82
22
  "Accept-Encoding": "gzip, deflate, br",
83
23
  "User-Agent": this.config.network?.userAgent ?? "Hyperttp/2.0",
84
24
  ...this.config.network?.headers,
85
- };
25
+ });
86
26
  this.pluginCtx = { config: this.config, core: this };
87
27
  }
88
- async createTransport() {
89
- return resolveTransport(this.config);
28
+ get transport() {
29
+ return this.transportManager.instance;
90
30
  }
91
31
  ensureTransport() {
92
- return (this.transportPromise ||
93
- (this.transportPromise = this.createTransport().then((t) => {
94
- this.transport = t;
95
- return t;
96
- })));
32
+ return this.transportManager.get();
97
33
  }
98
- async dispatch(req) {
34
+ /**
35
+ * Центральный метод обработки запросов
36
+ */
37
+ async dispatchInternal(req) {
99
38
  try {
100
- const shortCircuit = await executeRequestPipeline(this.pipelines.request, req, this.pluginCtx);
101
- if (shortCircuit) {
102
- await executeResponsePipeline(this.pipelines.responseMutators, this.pipelines.responseSideEffects, shortCircuit, req, this.pluginCtx, this.config.logger);
103
- return shortCircuit;
39
+ if (this.pipelines.request.length > 0) {
40
+ const shortCircuit = await executeRequestPipeline(this.pipelines.request, req, this.pluginCtx);
41
+ if (shortCircuit) {
42
+ await this.runResponsePipeline(shortCircuit, req);
43
+ return shortCircuit;
44
+ }
104
45
  }
46
+ req.headers = normalizeHeaders(req.headers);
105
47
  const transport = this.transport || (await this.ensureTransport());
106
- const rawResponse = await transport.execute(req);
107
- const response = mapResponseFast(rawResponse);
108
- await executeResponsePipeline(this.pipelines.responseMutators, this.pipelines.responseSideEffects, response, req, this.pluginCtx, this.config.logger);
48
+ let rawResponse = await transport.execute(req);
49
+ if (this.pipelines.responseData.length > 0) {
50
+ rawResponse = await executeResponseDataPipeline(this.pipelines.responseData, rawResponse, this.pluginCtx);
51
+ }
52
+ this.applyDecompression(rawResponse);
53
+ const isStream = req.meta?.responseType === "stream";
54
+ const response = isStream
55
+ ? mapStreamFast(rawResponse)
56
+ : mapResponseFast(rawResponse);
57
+ await this.runResponsePipeline(response, req);
109
58
  return response;
110
59
  }
111
60
  catch (error) {
112
- const httpError = error;
113
- const recovered = await executeErrorPipeline(this.pipelines.error, httpError, req, this.pluginCtx);
114
- if (recovered) {
115
- await executeResponsePipeline(this.pipelines.responseMutators, this.pipelines.responseSideEffects, recovered, req, this.pluginCtx, this.config.logger);
116
- return recovered;
117
- }
118
- throw error;
61
+ return this.handleDispatchError(error, req);
119
62
  }
120
63
  }
64
+ async dispatch(req) {
65
+ return this.dispatchInternal(req);
66
+ }
67
+ /**
68
+ * Регистрация плагинов
69
+ */
121
70
  use(plugin) {
122
71
  const isEnabled = plugin.enabled ? plugin.enabled(this.config) : true;
123
72
  if (!isEnabled)
@@ -133,20 +82,21 @@ export class HyperCore {
133
82
  });
134
83
  }
135
84
  if (plugin.onResponse) {
136
- if (plugin.mode === "background") {
137
- insertHookSorted(this.pipelines.responseSideEffects, {
138
- name: plugin.name,
139
- priority,
140
- run: plugin.onResponse,
141
- });
142
- }
143
- else {
144
- insertHookSorted(this.pipelines.responseMutators, {
145
- name: plugin.name,
146
- priority,
147
- run: plugin.onResponse,
148
- });
149
- }
85
+ const targetPipeline = plugin.mode === "background"
86
+ ? this.pipelines.responseSideEffects
87
+ : this.pipelines.responseMutators;
88
+ insertHookSorted(targetPipeline, {
89
+ name: plugin.name,
90
+ priority,
91
+ run: plugin.onResponse,
92
+ });
93
+ }
94
+ if (plugin.onResponseData) {
95
+ insertHookSorted(this.pipelines.responseData, {
96
+ name: plugin.name,
97
+ priority,
98
+ run: plugin.onResponseData,
99
+ });
150
100
  }
151
101
  if (plugin.onError) {
152
102
  insertHookSorted(this.pipelines.error, {
@@ -157,20 +107,18 @@ export class HyperCore {
157
107
  }
158
108
  return this;
159
109
  }
110
+ /**
111
+ * Публичные HTTP методы-помощники
112
+ */
160
113
  async stream(req, signal) {
161
- const isStr = typeof req === "string";
162
- const url = isStr ? req : req.url;
163
- const reqHeaders = isStr ? undefined : req.headers;
164
- const finalSignal = isStr ? signal : (req.signal ?? signal);
165
- const transportArgs = {
166
- method: "GET",
167
- url,
168
- headers: mergeHeadersFast(this.defaultHeaders, reqHeaders),
169
- signal: finalSignal,
170
- };
171
- const transport = this.transport || (await this.ensureTransport());
172
- const rawResponse = await transport.execute(transportArgs);
173
- return mapStreamFast(rawResponse);
114
+ const internalReq = this.buildInternalRequest("GET", req, undefined, signal);
115
+ internalReq.meta = { ...internalReq.meta, responseType: "stream" };
116
+ return this.dispatchInternal(internalReq);
117
+ }
118
+ async postStream(req, body, signal) {
119
+ const internalReq = this.buildInternalRequest("POST", req, body, signal);
120
+ internalReq.meta = { ...internalReq.meta, responseType: "stream" };
121
+ return this.dispatchInternal(internalReq);
174
122
  }
175
123
  get(req, signal) {
176
124
  return this.dispatch(this.buildInternalRequest("GET", req, undefined, signal));
@@ -178,22 +126,6 @@ export class HyperCore {
178
126
  post(req, body, signal) {
179
127
  return this.dispatch(this.buildInternalRequest("POST", req, body, signal));
180
128
  }
181
- async postStream(req, body, signal) {
182
- const isStr = typeof req === "string";
183
- const url = isStr ? req : req.url;
184
- const reqHeaders = isStr ? undefined : req.headers;
185
- const finalSignal = isStr ? signal : (req.signal ?? signal);
186
- const transportArgs = {
187
- method: "POST",
188
- url,
189
- headers: mergeHeadersFast(this.defaultHeaders, reqHeaders),
190
- body: isStr ? body : (req.body ?? body),
191
- signal: finalSignal,
192
- };
193
- const transport = this.transport || (await this.ensureTransport());
194
- const rawResponse = await transport.execute(transportArgs);
195
- return mapStreamFast(rawResponse);
196
- }
197
129
  put(req, body, signal) {
198
130
  return this.dispatch(this.buildInternalRequest("PUT", req, body, signal));
199
131
  }
@@ -209,77 +141,175 @@ export class HyperCore {
209
141
  head(req, signal) {
210
142
  return this.dispatch(this.buildInternalRequest("HEAD", req, undefined, signal));
211
143
  }
212
- buildInternalRequest(method, req, body, signal) {
213
- if (typeof req === "string") {
214
- return {
215
- method,
216
- url: req,
217
- headers: { ...this.defaultHeaders },
218
- body,
219
- signal,
220
- meta: undefined,
221
- };
222
- }
223
- const headers = req.headers
224
- ? mergeHeadersFast(this.defaultHeaders, req.headers)
225
- : { ...this.defaultHeaders };
226
- return {
227
- method,
228
- url: req.url,
229
- headers,
230
- body: req.body ?? body,
231
- signal: req.signal ?? signal,
232
- meta: req.meta,
233
- };
234
- }
235
144
  extend(options) {
236
- this.config = {
237
- ...this.config,
238
- ...options,
239
- network: { ...this.config.network, ...options.network },
240
- };
241
- this.pluginCtx.config = this.config;
242
- return this;
243
- }
244
- create(options) {
245
145
  return new HyperCore({
246
146
  ...this.config,
247
147
  ...options,
248
148
  network: { ...this.config.network, ...options.network },
249
149
  }, this.transport ?? undefined);
250
150
  }
151
+ create(options) {
152
+ return this.extend(options);
153
+ }
251
154
  async destroy(graceful = true) {
252
- this.config.logger?.("debug", "Destroying transport...");
253
- const transport = this.transport;
254
- if (!transport)
255
- return;
256
- if (graceful && typeof transport.close === "function") {
257
- await transport.close();
258
- }
259
- else if (typeof transport.destroy === "function") {
260
- await transport.destroy();
261
- }
155
+ await this.transportManager.destroy(graceful);
262
156
  }
263
157
  async json(req, signal) {
264
- const method = typeof req === "string"
265
- ? "GET"
266
- : (req.method ?? "GET");
267
- const res = await this.dispatch(this.buildInternalRequest(method, req, undefined, signal));
158
+ const res = await this.dispatchShortcut(req, signal);
159
+ if (!res.json)
160
+ throw new Error("[HyperCore] Method 'json()' is missing on response object.");
268
161
  return res.json();
269
162
  }
270
163
  async text(req, signal) {
271
- const method = typeof req === "string"
272
- ? "GET"
273
- : (req.method ?? "GET");
274
- const res = await this.dispatch(this.buildInternalRequest(method, req, undefined, signal));
164
+ const res = await this.dispatchShortcut(req, signal);
165
+ if (!res.text)
166
+ throw new Error("[HyperCore] Method 'text()' is missing on response object.");
275
167
  return res.text();
276
168
  }
277
169
  async dump(req, signal) {
170
+ const res = await this.dispatchShortcut(req, signal);
171
+ if (!res.dump)
172
+ throw new Error("[HyperCore] Method 'dump()' is missing on response object.");
173
+ await res.dump();
174
+ }
175
+ /**
176
+ * ПРИВАТНЫЕ МЕТОДЫ-ПОМОЩНИКИ (РЕФАКТОРИНГ)
177
+ */
178
+ async runResponsePipeline(response, req) {
179
+ const hasMutators = this.pipelines.responseMutators.length > 0;
180
+ const hasSideEffects = this.pipelines.responseSideEffects.length > 0;
181
+ if (hasMutators || hasSideEffects) {
182
+ await executeResponsePipeline(this.pipelines.responseMutators, this.pipelines.responseSideEffects, response, req, this.pluginCtx, this.config.logger);
183
+ }
184
+ }
185
+ /**
186
+ * Изолированная обработка ошибок пайплайна ответа
187
+ */
188
+ async handleDispatchError(error, req) {
189
+ if (this.pipelines.error.length > 0) {
190
+ const recovered = await executeErrorPipeline(this.pipelines.error, error, req, this.pluginCtx);
191
+ if (recovered) {
192
+ await this.runResponsePipeline(recovered, req);
193
+ return recovered;
194
+ }
195
+ }
196
+ throw error;
197
+ }
198
+ /**
199
+ * Применение встроенной декомпрессии на основе заголовков ответа транспорта
200
+ */
201
+ applyDecompression(rawResponse) {
202
+ if (!rawResponse.body)
203
+ return;
204
+ const encodingHeader = rawResponse.headers?.["content-encoding"] ??
205
+ rawResponse.headers?.["Content-Encoding"];
206
+ if (!encodingHeader)
207
+ return;
208
+ const contentEncoding = typeof encodingHeader === "string"
209
+ ? encodingHeader
210
+ : Array.isArray(encodingHeader)
211
+ ? encodingHeader[0]
212
+ : undefined;
213
+ if (!contentEncoding)
214
+ return;
215
+ if (rawResponse.body instanceof Uint8Array) {
216
+ rawResponse.body = decompressBuffer(rawResponse.body, contentEncoding);
217
+ }
218
+ else {
219
+ rawResponse.body = createDecompressStream(rawResponse.body, contentEncoding);
220
+ }
221
+ }
222
+ /**
223
+ * Сборка внутреннего объекта запроса InternalRequest
224
+ */
225
+ buildInternalRequest(method, req, body, signal) {
226
+ const isStr = typeof req === "string";
227
+ const rawUrl = normalizeUrl(req);
228
+ if (!rawUrl) {
229
+ throw new Error(`[HyperCore] Critical failure: 'url' resolved to undefined for ${method}.`);
230
+ }
231
+ const urlObj = new URL(rawUrl);
232
+ const castedReq = isStr
233
+ ? undefined
234
+ : req;
235
+ if (castedReq?.query) {
236
+ this.appendQueryParams(urlObj, castedReq.query);
237
+ }
238
+ const context = {
239
+ method,
240
+ url: urlObj.href,
241
+ origin: urlObj.origin,
242
+ path: urlObj.pathname + urlObj.search,
243
+ };
244
+ if (isStr) {
245
+ return {
246
+ ...context,
247
+ headers: { ...this.defaultHeaders },
248
+ body,
249
+ signal,
250
+ meta: {},
251
+ };
252
+ }
253
+ const rawHeaders = (req.headers ?? castedReq._headers);
254
+ const headers = rawHeaders
255
+ ? normalizeHeaders(mergeHeadersFast(this.defaultHeaders, rawHeaders))
256
+ : { ...this.defaultHeaders };
257
+ const rawBody = castedReq.body ?? castedReq.bodyData ?? castedReq._bodyData ?? body;
258
+ const computedBody = normalizeBody(method, rawBody);
259
+ const computedSignal = req.signal ?? castedReq._signal ?? signal;
260
+ const meta = (req.meta ??
261
+ castedReq._meta ??
262
+ {});
263
+ return this.createInternalRequestObject(castedReq, {
264
+ ...context,
265
+ headers,
266
+ body: computedBody,
267
+ signal: computedSignal,
268
+ meta,
269
+ });
270
+ }
271
+ /**
272
+ * Фабрика сохранения прототипа исходного запроса с подменой дескрипторов базовых свойств
273
+ */
274
+ createInternalRequestObject(sourceReq, overrides) {
275
+ const proto = Object.getPrototypeOf(sourceReq);
276
+ const target = proto && proto !== Object.prototype ? Object.create(proto) : {};
277
+ Object.defineProperties(target, Object.getOwnPropertyDescriptors(sourceReq));
278
+ const propertyDescriptors = {};
279
+ for (const [key, value] of Object.entries(overrides)) {
280
+ propertyDescriptors[key] = {
281
+ value,
282
+ enumerable: true,
283
+ writable: true,
284
+ configurable: true,
285
+ };
286
+ }
287
+ Object.defineProperties(target, propertyDescriptors);
288
+ return target;
289
+ }
290
+ appendQueryParams(url, query) {
291
+ if (!query)
292
+ return;
293
+ for (const [key, value] of Object.entries(query)) {
294
+ if (value === undefined || value === null)
295
+ continue;
296
+ if (Array.isArray(value)) {
297
+ for (const item of value) {
298
+ if (item === undefined || item === null)
299
+ continue;
300
+ url.searchParams.append(key, String(item));
301
+ }
302
+ }
303
+ else {
304
+ url.searchParams.set(key, String(value));
305
+ }
306
+ }
307
+ }
308
+ async dispatchShortcut(req, signal) {
278
309
  const method = typeof req === "string"
279
310
  ? "GET"
280
311
  : (req.method ?? "GET");
281
- const res = await this.dispatch(this.buildInternalRequest(method, req, undefined, signal));
282
- await res.dump();
312
+ return this.dispatch(this.buildInternalRequest(method, req, undefined, signal));
283
313
  }
284
314
  }
285
315
  //# sourceMappingURL=HyperCore.js.map
@@ -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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hyperttp/core",
3
- "version": "1.2.5",
3
+ "version": "1.3.0",
4
4
  "description": "High-performance, extensible HTTP client for Node.js and Bun and other",
5
5
  "type": "module",
6
6
  "main": "./index.js",
@@ -28,8 +28,8 @@
28
28
  "url": "git+https://github.com/IT-IF-OR/hyperttp-core.git"
29
29
  },
30
30
  "peerDependencies": {
31
- "@hyperttp/transport-bun": "^0.1.1",
32
- "@hyperttp/transport-undici": "^0.1.0"
31
+ "@hyperttp/transport-bun": "^0.2.0",
32
+ "@hyperttp/transport-undici": "^0.2.0"
33
33
  },
34
34
  "peerDependenciesMeta": {
35
35
  "@hyperttp/transport-bun": {
@@ -39,5 +39,8 @@
39
39
  "optional": true
40
40
  }
41
41
  },
42
+ "dependencies": {
43
+ "resolve-from": "^5.0.0"
44
+ },
42
45
  "private": false
43
46
  }