urllib 4.3.1 → 4.5.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/README.md +0 -2
  2. package/dist/commonjs/FetchOpaqueInterceptor.d.ts +8 -0
  3. package/dist/commonjs/FetchOpaqueInterceptor.js +18 -0
  4. package/dist/commonjs/FormData.d.ts +4 -0
  5. package/dist/commonjs/FormData.js +38 -0
  6. package/dist/commonjs/HttpAgent.d.ts +3 -3
  7. package/dist/commonjs/HttpAgent.js +6 -5
  8. package/dist/commonjs/HttpClient.d.ts +31 -0
  9. package/dist/commonjs/HttpClient.js +62 -98
  10. package/dist/commonjs/Request.d.ts +5 -0
  11. package/dist/commonjs/diagnosticsChannel.js +11 -4
  12. package/dist/commonjs/fetch.d.ts +24 -0
  13. package/dist/commonjs/fetch.js +221 -0
  14. package/dist/commonjs/index.d.ts +2 -1
  15. package/dist/commonjs/index.js +7 -2
  16. package/dist/commonjs/utils.d.ts +4 -0
  17. package/dist/commonjs/utils.js +57 -1
  18. package/dist/esm/FetchOpaqueInterceptor.d.ts +8 -0
  19. package/dist/esm/FetchOpaqueInterceptor.js +12 -0
  20. package/dist/esm/FormData.d.ts +4 -0
  21. package/dist/esm/FormData.js +31 -0
  22. package/dist/esm/HttpAgent.d.ts +3 -3
  23. package/dist/esm/HttpAgent.js +6 -5
  24. package/dist/esm/HttpClient.d.ts +31 -0
  25. package/dist/esm/HttpClient.js +59 -95
  26. package/dist/esm/Request.d.ts +5 -0
  27. package/dist/esm/diagnosticsChannel.js +11 -4
  28. package/dist/esm/fetch.d.ts +24 -0
  29. package/dist/esm/fetch.js +214 -0
  30. package/dist/esm/index.d.ts +2 -1
  31. package/dist/esm/index.js +3 -2
  32. package/dist/esm/utils.d.ts +4 -0
  33. package/dist/esm/utils.js +52 -1
  34. package/dist/package.json +1 -1
  35. package/package.json +7 -5
  36. package/src/FetchOpaqueInterceptor.ts +41 -0
  37. package/src/FormData.ts +32 -0
  38. package/src/HttpAgent.ts +9 -7
  39. package/src/HttpClient.ts +92 -100
  40. package/src/Request.ts +6 -0
  41. package/src/diagnosticsChannel.ts +13 -3
  42. package/src/fetch.ts +263 -0
  43. package/src/index.ts +3 -0
  44. package/src/utils.ts +54 -0
@@ -0,0 +1,221 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.fetch = exports.FetchFactory = void 0;
7
+ const node_async_hooks_1 = require("node:async_hooks");
8
+ const undici_1 = require("undici");
9
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
10
+ // @ts-ignore
11
+ const symbols_js_1 = __importDefault(require("undici/lib/core/symbols.js"));
12
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
13
+ // @ts-ignore
14
+ const response_js_1 = require("undici/lib/web/fetch/response.js");
15
+ const HttpClient_js_1 = require("./HttpClient.js");
16
+ const HttpAgent_js_1 = require("./HttpAgent.js");
17
+ const diagnosticsChannel_js_1 = require("./diagnosticsChannel.js");
18
+ const utils_js_1 = require("./utils.js");
19
+ const symbols_js_2 = __importDefault(require("./symbols.js"));
20
+ const FetchOpaqueInterceptor_js_1 = require("./FetchOpaqueInterceptor.js");
21
+ class FetchFactory {
22
+ static #dispatcher;
23
+ static #opaqueLocalStorage = new node_async_hooks_1.AsyncLocalStorage();
24
+ static getDispatcher() {
25
+ return FetchFactory.#dispatcher ?? (0, undici_1.getGlobalDispatcher)();
26
+ }
27
+ static setDispatcher(dispatcher) {
28
+ FetchFactory.#dispatcher = dispatcher;
29
+ }
30
+ static setClientOptions(clientOptions) {
31
+ let dispatcherOption = {
32
+ interceptors: {
33
+ Agent: [
34
+ (0, FetchOpaqueInterceptor_js_1.fetchOpaqueInterceptor)({
35
+ opaqueLocalStorage: FetchFactory.#opaqueLocalStorage,
36
+ }),
37
+ ],
38
+ Client: [],
39
+ },
40
+ };
41
+ let dispatcherClazz = undici_1.Agent;
42
+ if (clientOptions?.lookup || clientOptions?.checkAddress) {
43
+ dispatcherOption = {
44
+ ...dispatcherOption,
45
+ lookup: clientOptions.lookup,
46
+ checkAddress: clientOptions.checkAddress,
47
+ connect: clientOptions.connect,
48
+ allowH2: clientOptions.allowH2,
49
+ };
50
+ dispatcherClazz = HttpAgent_js_1.HttpAgent;
51
+ }
52
+ else if (clientOptions?.connect) {
53
+ dispatcherOption = {
54
+ ...dispatcherOption,
55
+ connect: clientOptions.connect,
56
+ allowH2: clientOptions.allowH2,
57
+ };
58
+ dispatcherClazz = undici_1.Agent;
59
+ }
60
+ else if (clientOptions?.allowH2) {
61
+ // Support HTTP2
62
+ dispatcherOption = {
63
+ ...dispatcherOption,
64
+ allowH2: clientOptions.allowH2,
65
+ };
66
+ dispatcherClazz = undici_1.Agent;
67
+ }
68
+ FetchFactory.#dispatcher = new dispatcherClazz(dispatcherOption);
69
+ (0, diagnosticsChannel_js_1.initDiagnosticsChannel)();
70
+ }
71
+ static getDispatcherPoolStats() {
72
+ const agent = FetchFactory.getDispatcher();
73
+ // origin => Pool Instance
74
+ const clients = Reflect.get(agent, symbols_js_1.default.kClients);
75
+ const poolStatsMap = {};
76
+ if (!clients) {
77
+ return poolStatsMap;
78
+ }
79
+ for (const [key, ref] of clients) {
80
+ const pool = typeof ref.deref === 'function' ? ref.deref() : ref;
81
+ const stats = pool?.stats;
82
+ if (!stats)
83
+ continue;
84
+ poolStatsMap[key] = {
85
+ connected: stats.connected,
86
+ free: stats.free,
87
+ pending: stats.pending,
88
+ queued: stats.queued,
89
+ running: stats.running,
90
+ size: stats.size,
91
+ };
92
+ }
93
+ return poolStatsMap;
94
+ }
95
+ static async fetch(input, init) {
96
+ const requestStartTime = performance.now();
97
+ init = init ?? {};
98
+ init.dispatcher = init.dispatcher ?? FetchFactory.#dispatcher;
99
+ const request = new undici_1.Request(input, init);
100
+ const requestId = (0, utils_js_1.globalId)('HttpClientRequest');
101
+ // https://developer.chrome.com/docs/devtools/network/reference/?utm_source=devtools#timing-explanation
102
+ const timing = {
103
+ // socket assigned
104
+ queuing: 0,
105
+ // dns lookup time
106
+ // dnslookup: 0,
107
+ // socket connected
108
+ connected: 0,
109
+ // request headers sent
110
+ requestHeadersSent: 0,
111
+ // request sent, including headers and body
112
+ requestSent: 0,
113
+ // Time to first byte (TTFB), the response headers have been received
114
+ waiting: 0,
115
+ // the response body and trailers have been received
116
+ contentDownload: 0,
117
+ };
118
+ // using opaque to diagnostics channel, binding request and socket
119
+ const internalOpaque = {
120
+ [symbols_js_2.default.kRequestId]: requestId,
121
+ [symbols_js_2.default.kRequestStartTime]: requestStartTime,
122
+ [symbols_js_2.default.kEnableRequestTiming]: !!(init.timing ?? true),
123
+ [symbols_js_2.default.kRequestTiming]: timing,
124
+ // [symbols.kRequestOriginalOpaque]: originalOpaque,
125
+ };
126
+ const reqMeta = {
127
+ requestId,
128
+ url: request.url,
129
+ args: {
130
+ method: request.method,
131
+ type: request.method,
132
+ data: request.body,
133
+ headers: (0, utils_js_1.convertHeader)(request.headers),
134
+ },
135
+ retries: 0,
136
+ };
137
+ const fetchMeta = {
138
+ requestId,
139
+ request,
140
+ };
141
+ const socketInfo = {
142
+ id: 0,
143
+ localAddress: '',
144
+ localPort: 0,
145
+ remoteAddress: '',
146
+ remotePort: 0,
147
+ remoteFamily: '',
148
+ bytesWritten: 0,
149
+ bytesRead: 0,
150
+ handledRequests: 0,
151
+ handledResponses: 0,
152
+ };
153
+ HttpClient_js_1.channels.request.publish({
154
+ request: reqMeta,
155
+ });
156
+ HttpClient_js_1.channels.fetchRequest.publish({
157
+ fetch: fetchMeta,
158
+ });
159
+ let res;
160
+ // keep urllib createCallbackResponse style
161
+ const resHeaders = {};
162
+ const urllibResponse = {
163
+ status: -1,
164
+ statusCode: -1,
165
+ statusText: '',
166
+ statusMessage: '',
167
+ headers: resHeaders,
168
+ size: 0,
169
+ aborted: false,
170
+ rt: 0,
171
+ keepAliveSocket: true,
172
+ requestUrls: [
173
+ request.url,
174
+ ],
175
+ timing,
176
+ socket: socketInfo,
177
+ retries: 0,
178
+ socketErrorRetries: 0,
179
+ };
180
+ try {
181
+ await FetchFactory.#opaqueLocalStorage.run(internalOpaque, async () => {
182
+ res = await (0, undici_1.fetch)(input, init);
183
+ });
184
+ }
185
+ catch (e) {
186
+ HttpClient_js_1.channels.response.publish({
187
+ fetch: fetchMeta,
188
+ error: e,
189
+ });
190
+ HttpClient_js_1.channels.fetchResponse.publish({
191
+ request: reqMeta,
192
+ response: urllibResponse,
193
+ error: e,
194
+ });
195
+ throw e;
196
+ }
197
+ // get undici internal response
198
+ const state = (0, response_js_1.getResponseState)(res);
199
+ (0, utils_js_1.updateSocketInfo)(socketInfo, internalOpaque /* , rawError */);
200
+ urllibResponse.headers = (0, utils_js_1.convertHeader)(res.headers);
201
+ urllibResponse.status = urllibResponse.statusCode = res.status;
202
+ urllibResponse.statusMessage = res.statusText;
203
+ if (urllibResponse.headers['content-length']) {
204
+ urllibResponse.size = parseInt(urllibResponse.headers['content-length']);
205
+ }
206
+ urllibResponse.rt = (0, utils_js_1.performanceTime)(requestStartTime);
207
+ HttpClient_js_1.channels.fetchResponse.publish({
208
+ fetch: fetchMeta,
209
+ timingInfo: state.timingInfo,
210
+ response: res,
211
+ });
212
+ HttpClient_js_1.channels.response.publish({
213
+ request: reqMeta,
214
+ response: urllibResponse,
215
+ });
216
+ return res;
217
+ }
218
+ }
219
+ exports.FetchFactory = FetchFactory;
220
+ exports.fetch = FetchFactory.fetch;
221
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmV0Y2guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZmV0Y2gudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsdURBQXFEO0FBQ3JELG1DQVNnQjtBQUNoQiw2REFBNkQ7QUFDN0QsYUFBYTtBQUNiLDRFQUF1RDtBQUN2RCw2REFBNkQ7QUFDN0QsYUFBYTtBQUNiLGtFQUFvRTtBQUNwRSxtREFPeUI7QUFDekIsaURBR3dCO0FBQ3hCLG1FQUFpRTtBQUNqRSx5Q0FBd0Y7QUFDeEYsOERBQW1DO0FBTW5DLDJFQUFrRjtBQW9CbEYsTUFBYSxZQUFZO0lBQ3ZCLE1BQU0sQ0FBQyxXQUFXLENBQVE7SUFDMUIsTUFBTSxDQUFDLG1CQUFtQixHQUFHLElBQUksb0NBQWlCLEVBQWUsQ0FBQztJQUVsRSxNQUFNLENBQUMsYUFBYTtRQUNsQixPQUFPLFlBQVksQ0FBQyxXQUFXLElBQUksSUFBQSw0QkFBbUIsR0FBRSxDQUFDO0lBQzNELENBQUM7SUFFRCxNQUFNLENBQUMsYUFBYSxDQUFDLFVBQWlCO1FBQ3BDLFlBQVksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsYUFBNEI7UUFDbEQsSUFBSSxnQkFBZ0IsR0FBa0I7WUFDcEMsWUFBWSxFQUFFO2dCQUNaLEtBQUssRUFBRTtvQkFDTCxJQUFBLGtEQUFzQixFQUFDO3dCQUNyQixrQkFBa0IsRUFBRSxZQUFZLENBQUMsbUJBQW1CO3FCQUNyRCxDQUFDO2lCQUNIO2dCQUNELE1BQU0sRUFBRSxFQUFFO2FBQ1g7U0FDRixDQUFDO1FBQ0YsSUFBSSxlQUFlLEdBQTBDLGNBQUssQ0FBQztRQUNuRSxJQUFJLGFBQWEsRUFBRSxNQUFNLElBQUksYUFBYSxFQUFFLFlBQVksRUFBRSxDQUFDO1lBQ3pELGdCQUFnQixHQUFHO2dCQUNqQixHQUFHLGdCQUFnQjtnQkFDbkIsTUFBTSxFQUFFLGFBQWEsQ0FBQyxNQUFNO2dC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
@@ -3,13 +3,14 @@ import { RequestOptions, RequestURL } from './Request.js';
3
3
  export declare function getDefaultHttpClient(): HttpClient;
4
4
  export declare function request<T = any>(url: RequestURL, options?: RequestOptions): Promise<import("./Response.js").HttpClientResponse<T>>;
5
5
  export declare function curl<T = any>(url: RequestURL, options?: RequestOptions): Promise<import("./Response.js").HttpClientResponse<T>>;
6
- export { MockAgent, ProxyAgent, Agent, Dispatcher, setGlobalDispatcher, getGlobalDispatcher, } from 'undici';
6
+ export { MockAgent, ProxyAgent, Agent, Dispatcher, setGlobalDispatcher, getGlobalDispatcher, Request, RequestInfo, RequestInit, Response, } from 'undici';
7
7
  export { HttpClient, HttpClient as HttpClient2, HEADER_USER_AGENT as USER_AGENT, RequestDiagnosticsMessage, ResponseDiagnosticsMessage, ClientOptions, } from './HttpClient.js';
8
8
  export { RequestOptions, RequestOptions as RequestOptions2, RequestURL, HttpMethod, FixJSONCtlCharsHandler, FixJSONCtlChars, } from './Request.js';
9
9
  export { CheckAddressFunction } from './HttpAgent.js';
10
10
  export { SocketInfo, Timing, RawResponseWithMeta, HttpClientResponse, } from './Response.js';
11
11
  export { IncomingHttpHeaders, } from './IncomingHttpHeaders.js';
12
12
  export * from './HttpClientError.js';
13
+ export { FetchFactory, fetch } from './fetch.js';
13
14
  declare const _default: {
14
15
  request: typeof request;
15
16
  curl: typeof curl;
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.USER_AGENT = exports.HttpClient2 = exports.HttpClient = exports.getGlobalDispatcher = exports.setGlobalDispatcher = exports.Dispatcher = exports.Agent = exports.ProxyAgent = exports.MockAgent = void 0;
17
+ exports.FetchFactory = exports.USER_AGENT = exports.HttpClient2 = exports.HttpClient = exports.Response = exports.Request = exports.getGlobalDispatcher = exports.setGlobalDispatcher = exports.Dispatcher = exports.Agent = exports.ProxyAgent = exports.MockAgent = void 0;
18
18
  exports.getDefaultHttpClient = getDefaultHttpClient;
19
19
  exports.request = request;
20
20
  exports.curl = curl;
@@ -56,15 +56,20 @@ Object.defineProperty(exports, "Agent", { enumerable: true, get: function () { r
56
56
  Object.defineProperty(exports, "Dispatcher", { enumerable: true, get: function () { return undici_1.Dispatcher; } });
57
57
  Object.defineProperty(exports, "setGlobalDispatcher", { enumerable: true, get: function () { return undici_1.setGlobalDispatcher; } });
58
58
  Object.defineProperty(exports, "getGlobalDispatcher", { enumerable: true, get: function () { return undici_1.getGlobalDispatcher; } });
59
+ Object.defineProperty(exports, "Request", { enumerable: true, get: function () { return undici_1.Request; } });
60
+ Object.defineProperty(exports, "Response", { enumerable: true, get: function () { return undici_1.Response; } });
59
61
  // HttpClient2 is keep compatible with urllib@2 HttpClient2
60
62
  var HttpClient_js_2 = require("./HttpClient.js");
61
63
  Object.defineProperty(exports, "HttpClient", { enumerable: true, get: function () { return HttpClient_js_2.HttpClient; } });
62
64
  Object.defineProperty(exports, "HttpClient2", { enumerable: true, get: function () { return HttpClient_js_2.HttpClient; } });
63
65
  Object.defineProperty(exports, "USER_AGENT", { enumerable: true, get: function () { return HttpClient_js_2.HEADER_USER_AGENT; } });
64
66
  __exportStar(require("./HttpClientError.js"), exports);
67
+ var fetch_js_1 = require("./fetch.js");
68
+ Object.defineProperty(exports, "FetchFactory", { enumerable: true, get: function () { return fetch_js_1.FetchFactory; } });
69
+ Object.defineProperty(exports, "fetch", { enumerable: true, get: function () { return fetch_js_1.fetch; } });
65
70
  exports.default = {
66
71
  request,
67
72
  curl,
68
73
  USER_AGENT: HttpClient_js_1.HEADER_USER_AGENT,
69
74
  };
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFPQSxvREFLQztBQUVELDBCQWFDO0FBT0Qsb0JBRUM7QUFwQ0QsK0JBQTJCO0FBQzNCLG1EQUFnRTtBQUdoRSxJQUFJLFVBQXNCLENBQUM7QUFDM0IsTUFBTSx1QkFBdUIsR0FBRyxJQUFJLFVBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUU1QyxTQUFnQixvQkFBb0I7SUFDbEMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2hCLFVBQVUsR0FBRyxJQUFJLDBCQUFVLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBQ0QsT0FBTyxVQUFVLENBQUM7QUFDcEIsQ0FBQztBQUVNLEtBQUssVUFBVSxPQUFPLENBQVUsR0FBZSxFQUFFLE9BQXdCO0lBQzlFLElBQUksT0FBTyxFQUFFLFVBQVUsRUFBRSxDQUFDO1FBQ3hCLElBQUksc0JBQXNCLEdBQUcsdUJBQXVCLENBQUMsR0FBRyxDQUFhLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN6RixJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztZQUM1QixzQkFBc0IsR0FBRyxJQUFJLDBCQUFVLENBQUM7Z0JBQ3RDLE9BQU8sRUFBRSxFQUFFLFVBQVUsRUFBRSxPQUFPLENBQUMsVUFBVSxFQUFFO2FBQzVDLENBQUMsQ0FBQztZQUNILHVCQUF1QixDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLHNCQUFzQixDQUFDLENBQUM7UUFDMUUsQ0FBQztRQUNELE9BQU8sTUFBTSxzQkFBc0IsQ0FBQyxPQUFPLENBQUksR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxPQUFPLE1BQU0sb0JBQW9CLEVBQUUsQ0FBQyxPQUFPLENBQUksR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQy9ELENBQUM7QUFFRCwyREFBMkQ7QUFDM0QsUUFBUTtBQUNSLG9DQUFvQztBQUNwQyxvQkFBb0I7QUFDcEIsTUFBTTtBQUNDLEtBQUssVUFBVSxJQUFJLENBQVUsR0FBZSxFQUFFLE9BQXdCO0lBQzNFLE9BQU8sTUFBTSxPQUFPLENBQUksR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQ3hDLENBQUM7QUFFRCxpQ0FHZ0I7QUFGZCxtR0FBQSxTQUFTLE9BQUE7QUFBRSxvR0FBQSxVQUFVLE9BQUE7QUFBRSwrRkFBQSxLQUFLLE9BQUE7QUFBRSxvR0FBQSxVQUFVLE9BQUE7QUFDeEMsNkdBQUEsbUJBQW1CLE9BQUE7QUFBRSw2R0FBQSxtQkFBbUIsT0FBQTtBQUUxQywyREFBMkQ7QUFDM0QsaURBR3lCO0FBRnZCLDJHQUFBLFVBQVUsT0FBQTtBQUFFLDRHQUFBLFVBQVUsT0FBZTtBQUFFLDJHQUFBLGlCQUFpQixPQUFjO0FBaUJ4RSx1REFBcUM7QUFFckMsa0JBQWU7SUFDYixPQUFPO0lBQ1AsSUFBSTtJQUNKLFVBQVUsRUFBRSxpQ0FBaUI7Q0FDOUIsQ0FBQyJ9
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFPQSxvREFLQztBQUVELDBCQWFDO0FBT0Qsb0JBRUM7QUFwQ0QsK0JBQTJCO0FBQzNCLG1EQUFnRTtBQUdoRSxJQUFJLFVBQXNCLENBQUM7QUFDM0IsTUFBTSx1QkFBdUIsR0FBRyxJQUFJLFVBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUU1QyxTQUFnQixvQkFBb0I7SUFDbEMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2hCLFVBQVUsR0FBRyxJQUFJLDBCQUFVLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBQ0QsT0FBTyxVQUFVLENBQUM7QUFDcEIsQ0FBQztBQUVNLEtBQUssVUFBVSxPQUFPLENBQVUsR0FBZSxFQUFFLE9BQXdCO0lBQzlFLElBQUksT0FBTyxFQUFFLFVBQVUsRUFBRSxDQUFDO1FBQ3hCLElBQUksc0JBQXNCLEdBQUcsdUJBQXVCLENBQUMsR0FBRyxDQUFhLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN6RixJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztZQUM1QixzQkFBc0IsR0FBRyxJQUFJLDBCQUFVLENBQUM7Z0JBQ3RDLE9BQU8sRUFBRSxFQUFFLFVBQVUsRUFBRSxPQUFPLENBQUMsVUFBVSxFQUFFO2FBQzVDLENBQUMsQ0FBQztZQUNILHVCQUF1QixDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLHNCQUFzQixDQUFDLENBQUM7UUFDMUUsQ0FBQztRQUNELE9BQU8sTUFBTSxzQkFBc0IsQ0FBQyxPQUFPLENBQUksR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxPQUFPLE1BQU0sb0JBQW9CLEVBQUUsQ0FBQyxPQUFPLENBQUksR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQy9ELENBQUM7QUFFRCwyREFBMkQ7QUFDM0QsUUFBUTtBQUNSLG9DQUFvQztBQUNwQyxvQkFBb0I7QUFDcEIsTUFBTTtBQUNDLEtBQUssVUFBVSxJQUFJLENBQVUsR0FBZSxFQUFFLE9BQXdCO0lBQzNFLE9BQU8sTUFBTSxPQUFPLENBQUksR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQ3hDLENBQUM7QUFFRCxpQ0FLZ0I7QUFKZCxtR0FBQSxTQUFTLE9BQUE7QUFBRSxvR0FBQSxVQUFVLE9BQUE7QUFBRSwrRkFBQSxLQUFLLE9BQUE7QUFBRSxvR0FBQSxVQUFVLE9BQUE7QUFDeEMsNkdBQUEsbUJBQW1CLE9BQUE7QUFBRSw2R0FBQSxtQkFBbUIsT0FBQTtBQUN4QyxpR0FBQSxPQUFPLE9BQUE7QUFDUCxrR0FBQSxRQUFRLE9BQUE7QUFFViwyREFBMkQ7QUFDM0QsaURBR3lCO0FBRnZCLDJHQUFBLFVBQVUsT0FBQTtBQUFFLDRHQUFBLFVBQVUsT0FBZTtBQUFFLDJHQUFBLGlCQUFpQixPQUFjO0FBaUJ4RSx1REFBcUM7QUFDckMsdUNBQWlEO0FBQXhDLHdHQUFBLFlBQVksT0FBQTtBQUFFLGlHQUFBLEtBQUssT0FBQTtBQUU1QixrQkFBZTtJQUNiLE9BQU87SUFDUCxJQUFJO0lBQ0osVUFBVSxFQUFFLGlDQUFpQjtDQUM5QixDQUFDIn0=
@@ -1,6 +1,10 @@
1
1
  import type { FixJSONCtlChars } from './Request.js';
2
+ import { SocketInfo } from './Response.js';
3
+ import { IncomingHttpHeaders } from './IncomingHttpHeaders.js';
2
4
  export declare function parseJSON(data: string, fixJSONCtlChars?: FixJSONCtlChars): string;
3
5
  export declare function digestAuthHeader(method: string, uri: string, wwwAuthenticate: string, userpass: string): string;
4
6
  export declare function globalId(category: string): number;
5
7
  export declare function performanceTime(startTime: number, now?: number): number;
6
8
  export declare function isReadable(stream: any): boolean;
9
+ export declare function updateSocketInfo(socketInfo: SocketInfo, internalOpaque: any, err?: any): void;
10
+ export declare function convertHeader(headers: Headers): IncomingHttpHeaders;
@@ -1,13 +1,19 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.parseJSON = parseJSON;
4
7
  exports.digestAuthHeader = digestAuthHeader;
5
8
  exports.globalId = globalId;
6
9
  exports.performanceTime = performanceTime;
7
10
  exports.isReadable = isReadable;
11
+ exports.updateSocketInfo = updateSocketInfo;
12
+ exports.convertHeader = convertHeader;
8
13
  const node_crypto_1 = require("node:crypto");
9
14
  const node_stream_1 = require("node:stream");
10
15
  const node_perf_hooks_1 = require("node:perf_hooks");
16
+ const symbols_js_1 = __importDefault(require("./symbols.js"));
11
17
  const JSONCtlCharsMap = {
12
18
  '"': '\\"', // \u0022
13
19
  '\\': '\\\\', // \u005c
@@ -146,4 +152,54 @@ function isReadable(stream) {
146
152
  && typeof stream._read === 'function'
147
153
  && typeof stream._readableState === 'object';
148
154
  }
149
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUF5QkEsOEJBd0JDO0FBWUQsNENBZ0VDO0FBS0QsNEJBS0M7QUFFRCwwQ0FFQztBQUVELGdDQVdDO0FBeEpELDZDQUFzRDtBQUN0RCw2Q0FBdUM7QUFDdkMscURBQThDO0FBRzlDLE1BQU0sZUFBZSxHQUEyQjtJQUM5QyxHQUFHLEVBQUUsS0FBSyxFQUFFLFNBQVM7SUFDckIsSUFBSSxFQUFFLE1BQU0sRUFBRSxTQUFTO0lBQ3ZCLElBQUksRUFBRSxLQUFLLEVBQUUsU0FBUztJQUN0QixJQUFJLEVBQUUsS0FBSyxFQUFFLFNBQVM7SUFDdEIsSUFBSSxFQUFFLEtBQUssRUFBRSxTQUFTO0lBQ3RCLElBQUksRUFBRSxLQUFLLEVBQUUsU0FBUztJQUN0QixJQUFJLEVBQUUsS0FBSyxFQUFFLFNBQVM7Q0FDdkIsQ0FBQztBQUNGLG1DQUFtQztBQUNuQyxNQUFNLGNBQWMsR0FBRyx3QkFBd0IsQ0FBQztBQUVoRCxTQUFTLGNBQWMsQ0FBQyxDQUFTO0lBQy9CLE9BQU8sZUFBZSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUM3RixDQUFDO0FBRUQsU0FBUyxtQkFBbUIsQ0FBQyxLQUFhO0lBQ3hDLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxjQUFjLEVBQUUsY0FBYyxDQUFDLENBQUM7QUFDdkQsQ0FBQztBQUVELFNBQWdCLFNBQVMsQ0FBQyxJQUFZLEVBQUUsZUFBaUM7SUFDdkUsSUFBSSxPQUFPLGVBQWUsS0FBSyxVQUFVLEVBQUUsQ0FBQztRQUMxQyxJQUFJLEdBQUcsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO0lB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
155
+ function updateSocketInfo(socketInfo, internalOpaque, err) {
156
+ const socket = internalOpaque[symbols_js_1.default.kRequestSocket] ?? err?.[symbols_js_1.default.kErrorSocket];
157
+ if (socket) {
158
+ socketInfo.id = socket[symbols_js_1.default.kSocketId];
159
+ socketInfo.handledRequests = socket[symbols_js_1.default.kHandledRequests];
160
+ socketInfo.handledResponses = socket[symbols_js_1.default.kHandledResponses];
161
+ if (socket[symbols_js_1.default.kSocketLocalAddress]) {
162
+ socketInfo.localAddress = socket[symbols_js_1.default.kSocketLocalAddress];
163
+ socketInfo.localPort = socket[symbols_js_1.default.kSocketLocalPort];
164
+ }
165
+ if (socket.remoteAddress) {
166
+ socketInfo.remoteAddress = socket.remoteAddress;
167
+ socketInfo.remotePort = socket.remotePort;
168
+ socketInfo.remoteFamily = socket.remoteFamily;
169
+ }
170
+ socketInfo.bytesRead = socket.bytesRead;
171
+ socketInfo.bytesWritten = socket.bytesWritten;
172
+ if (socket[symbols_js_1.default.kSocketConnectErrorTime]) {
173
+ socketInfo.connectErrorTime = socket[symbols_js_1.default.kSocketConnectErrorTime];
174
+ if (Array.isArray(socket.autoSelectFamilyAttemptedAddresses)) {
175
+ socketInfo.attemptedRemoteAddresses = socket.autoSelectFamilyAttemptedAddresses;
176
+ }
177
+ socketInfo.connectProtocol = socket[symbols_js_1.default.kSocketConnectProtocol];
178
+ socketInfo.connectHost = socket[symbols_js_1.default.kSocketConnectHost];
179
+ socketInfo.connectPort = socket[symbols_js_1.default.kSocketConnectPort];
180
+ }
181
+ if (socket[symbols_js_1.default.kSocketConnectedTime]) {
182
+ socketInfo.connectedTime = socket[symbols_js_1.default.kSocketConnectedTime];
183
+ }
184
+ if (socket[symbols_js_1.default.kSocketRequestEndTime]) {
185
+ socketInfo.lastRequestEndTime = socket[symbols_js_1.default.kSocketRequestEndTime];
186
+ }
187
+ socket[symbols_js_1.default.kSocketRequestEndTime] = new Date();
188
+ }
189
+ }
190
+ function convertHeader(headers) {
191
+ const res = {};
192
+ for (const [key, value] of headers.entries()) {
193
+ if (res[key]) {
194
+ if (!Array.isArray(res[key])) {
195
+ res[key] = [res[key]];
196
+ }
197
+ res[key].push(value);
198
+ }
199
+ else {
200
+ res[key] = value;
201
+ }
202
+ }
203
+ return res;
204
+ }
205
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUE0QkEsOEJBd0JDO0FBWUQsNENBZ0VDO0FBS0QsNEJBS0M7QUFFRCwwQ0FFQztBQUVELGdDQVdDO0FBRUQsNENBa0NDO0FBRUQsc0NBYUM7QUE5TUQsNkNBQXNEO0FBQ3RELDZDQUF1QztBQUN2QyxxREFBOEM7QUFHOUMsOERBQW1DO0FBR25DLE1BQU0sZUFBZSxHQUEyQjtJQUM5QyxHQUFHLEVBQUUsS0FBSyxFQUFFLFNBQVM7SUFDckIsSUFBSSxFQUFFLE1BQU0sRUFBRSxTQUFTO0lBQ3ZCLElBQUksRUFBRSxLQUFLLEVBQUUsU0FBUztJQUN0QixJQUFJLEVBQUUsS0FBSyxFQUFFLFNBQVM7SUFDdEIsSUFBSSxFQUFFLEtBQUssRUFBRSxTQUFTO0lBQ3RCLElBQUksRUFBRSxLQUFLLEVBQUUsU0FBUztJQUN0QixJQUFJLEVBQUUsS0FBSyxFQUFFLFNBQVM7Q0FDdkIsQ0FBQztBQUNGLG1DQUFtQztBQUNuQyxNQUFNLGNBQWMsR0FBRyx3QkFBd0IsQ0FBQztBQUVoRCxTQUFTLGNBQWMsQ0FBQyxDQUFTO0lBQy9CLE9BQU8sZUFBZSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUM3RixDQUFDO0FBRUQsU0FBUyxtQkFBbUIsQ0FBQyxLQUFhO0lBQ3hDLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxjQUFjLEVBQUUsY0FBYyxDQUFDLENBQUM7QUFDdkQsQ0FBQztBQUVELFNBQWdCLFNBQVMsQ0FBQyxJQUFZLEVBQUUsZUFBaUM7SUFDdkUsSUFBSSxPQUFPLGVBQWUsS0FBSyxVQUFVLEVBQUUsQ0FBQztRQUMx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
@@ -0,0 +1,8 @@
1
+ import { AsyncLocalStorage } from 'node:async_hooks';
2
+ import { Dispatcher } from 'undici';
3
+ export interface FetchOpaque {
4
+ }
5
+ export interface OpaqueInterceptorOptions {
6
+ opaqueLocalStorage: AsyncLocalStorage<FetchOpaque>;
7
+ }
8
+ export declare function fetchOpaqueInterceptor(opts: OpaqueInterceptorOptions): (dispatch: Dispatcher["dispatch"]) => Dispatcher["dispatch"];
@@ -0,0 +1,12 @@
1
+ import symbols from './symbols.js';
2
+ export function fetchOpaqueInterceptor(opts) {
3
+ const opaqueLocalStorage = opts?.opaqueLocalStorage;
4
+ return (dispatch) => {
5
+ return function redirectInterceptor(opts, handler) {
6
+ const opaque = opaqueLocalStorage?.getStore();
7
+ handler.opaque = opaque;
8
+ return dispatch(opts, handler);
9
+ };
10
+ };
11
+ }
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRmV0Y2hPcGFxdWVJbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9GZXRjaE9wYXF1ZUludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sT0FBTyxNQUFNLGNBQWMsQ0FBQztBQTZCbkMsTUFBTSxVQUFVLHNCQUFzQixDQUFDLElBQThCO0lBQ25FLE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxFQUFFLGtCQUFrQixDQUFDO0lBQ3BELE9BQU8sQ0FBQyxRQUFnQyxFQUEwQixFQUFFO1FBQ2xFLE9BQU8sU0FBUyxtQkFBbUIsQ0FBQyxJQUFnQyxFQUFFLE9BQW1DO1lBQ3ZHLE1BQU0sTUFBTSxHQUFHLGtCQUFrQixFQUFFLFFBQVEsRUFBRSxDQUFDO1lBQzdDLE9BQWUsQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1lBQ2pDLE9BQU8sUUFBUSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNqQyxDQUFDLENBQUM7SUFDSixDQUFDLENBQUM7QUFDSixDQUFDIn0=
@@ -0,0 +1,4 @@
1
+ import _FormData from 'form-data';
2
+ export declare class FormData extends _FormData {
3
+ _getContentDisposition(value: any, options: any): string | undefined;
4
+ }
@@ -0,0 +1,31 @@
1
+ import path from 'node:path';
2
+ import _FormData from 'form-data';
3
+ export class FormData extends _FormData {
4
+ _getContentDisposition(value, options) {
5
+ // support non-ascii filename
6
+ // https://github.com/form-data/form-data/pull/571
7
+ let filename;
8
+ let contentDisposition;
9
+ if (typeof options.filepath === 'string') {
10
+ // custom filepath for relative paths
11
+ filename = path.normalize(options.filepath).replace(/\\/g, '/');
12
+ }
13
+ else if (options.filename || value.name || value.path) {
14
+ // custom filename take precedence
15
+ // formidable and the browser add a name property
16
+ // fs- and request- streams have path property
17
+ filename = path.basename(options.filename || value.name || value.path);
18
+ }
19
+ else if (value.readable && value.hasOwnProperty('httpVersion')) {
20
+ // or try http response
21
+ filename = path.basename(value.client._httpMessage.path || '');
22
+ }
23
+ if (filename) {
24
+ // https://datatracker.ietf.org/doc/html/rfc6266#section-4.1
25
+ // support non-ascii filename
26
+ contentDisposition = 'filename="' + filename + '"; filename*=UTF-8\'\'' + encodeURIComponent(filename);
27
+ }
28
+ return contentDisposition;
29
+ }
30
+ }
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRm9ybURhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvRm9ybURhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxJQUFJLE1BQU0sV0FBVyxDQUFDO0FBQzdCLE9BQU8sU0FBUyxNQUFNLFdBQVcsQ0FBQztBQUVsQyxNQUFNLE9BQU8sUUFBUyxTQUFRLFNBQVM7SUFDckMsc0JBQXNCLENBQUMsS0FBVSxFQUFFLE9BQVk7UUFDN0MsNkJBQTZCO1FBQzdCLGtEQUFrRDtRQUNsRCxJQUFJLFFBQVEsQ0FBQztRQUNiLElBQUksa0JBQWtCLENBQUM7UUFFdkIsSUFBSSxPQUFPLE9BQU8sQ0FBQyxRQUFRLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDekMscUNBQXFDO1lBQ3JDLFFBQVEsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ2xFLENBQUM7YUFBTSxJQUFJLE9BQU8sQ0FBQyxRQUFRLElBQUksS0FBSyxDQUFDLElBQUksSUFBSSxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDeEQsa0NBQWtDO1lBQ2xDLGlEQUFpRDtZQUNqRCw4Q0FBOEM7WUFDOUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFFBQVEsSUFBSSxLQUFLLENBQUMsSUFBSSxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6RSxDQUFDO2FBQU0sSUFBSSxLQUFLLENBQUMsUUFBUSxJQUFJLEtBQUssQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQztZQUNqRSx1QkFBdUI7WUFDdkIsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ2pFLENBQUM7UUFFRCxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQ2IsNERBQTREO1lBQzVELDZCQUE2QjtZQUM3QixrQkFBa0IsR0FBRyxZQUFZLEdBQUcsUUFBUSxHQUFHLHdCQUF3QixHQUFHLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3pHLENBQUM7UUFFRCxPQUFPLGtCQUFrQixDQUFDO0lBQzVCLENBQUM7Q0FDRiJ9
@@ -1,14 +1,14 @@
1
1
  import { LookupFunction } from 'node:net';
2
2
  import { Agent, Dispatcher, buildConnector } from 'undici';
3
3
  export type CheckAddressFunction = (ip: string, family: number | string, hostname: string) => boolean;
4
- export type HttpAgentOptions = {
4
+ export interface HttpAgentOptions extends Agent.Options {
5
5
  lookup?: LookupFunction;
6
6
  checkAddress?: CheckAddressFunction;
7
7
  connect?: buildConnector.BuildOptions;
8
8
  allowH2?: boolean;
9
- };
9
+ }
10
10
  export declare class HttpAgent extends Agent {
11
11
  #private;
12
12
  constructor(options: HttpAgentOptions);
13
- dispatch(options: Agent.DispatchOptions, handler: Dispatcher.DispatchHandlers): boolean;
13
+ dispatch(options: Agent.DispatchOptions, handler: Dispatcher.DispatchHandler): boolean;
14
14
  }
@@ -19,9 +19,9 @@ export class HttpAgent extends Agent {
19
19
  #checkAddress;
20
20
  constructor(options) {
21
21
  /* eslint node/prefer-promises/dns: off*/
22
- const _lookup = options.lookup ?? dns.lookup;
23
- const lookup = (hostname, dnsOptions, callback) => {
24
- _lookup(hostname, dnsOptions, (err, ...args) => {
22
+ const { lookup = dns.lookup, ...baseOpts } = options;
23
+ const lookupFunction = (hostname, dnsOptions, callback) => {
24
+ lookup(hostname, dnsOptions, (err, ...args) => {
25
25
  // address will be array on Node.js >= 20
26
26
  const address = args[0];
27
27
  const family = args[1];
@@ -48,7 +48,8 @@ export class HttpAgent extends Agent {
48
48
  });
49
49
  };
50
50
  super({
51
- connect: { ...options.connect, lookup, allowH2: options.allowH2 },
51
+ ...baseOpts,
52
+ connect: { ...options.connect, lookup: lookupFunction, allowH2: options.allowH2 },
52
53
  });
53
54
  this.#checkAddress = options.checkAddress;
54
55
  }
@@ -71,4 +72,4 @@ export class HttpAgent extends Agent {
71
72
  return super.dispatch(options, handler);
72
73
  }
73
74
  }
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSHR0cEFnZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL0h0dHBBZ2VudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEdBQUcsTUFBTSxVQUFVLENBQUM7QUFDM0IsT0FBTyxFQUFrQixJQUFJLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDaEQsT0FBTyxFQUNMLEtBQUssR0FHTixNQUFNLFFBQVEsQ0FBQztBQVdoQixNQUFNLG1CQUFvQixTQUFRLEtBQUs7SUFDckMsUUFBUSxDQUFTO0lBQ2pCLEVBQUUsQ0FBUztJQUNYLE1BQU0sQ0FBUztJQUVmLFlBQVksUUFBZ0IsRUFBRSxFQUFVLEVBQUUsTUFBYztRQUN0RCxNQUFNLE9BQU8sR0FBRyxpQkFBaUIsQ0FBQztRQUNsQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDZixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDO1FBQ2IsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsS0FBSyxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDbEQsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLFNBQVUsU0FBUSxLQUFLO0lBQ2xDLGFBQWEsQ0FBd0I7SUFFckMsWUFBWSxPQUF5QjtRQUNuQyx5Q0FBeUM7UUFDekMsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLE1BQU0sSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDO1FBQzdDLE1BQU0sTUFBTSxHQUFtQixDQUFDLFFBQVEsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLEVBQUU7WUFDaEUsT0FBTyxDQUFDLFFBQVEsRUFBRSxVQUFVLEVBQUUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxJQUFX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
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSHR0cEFnZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL0h0dHBBZ2VudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEdBQUcsTUFBTSxVQUFVLENBQUM7QUFDM0IsT0FBTyxFQUFrQixJQUFJLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDaEQsT0FBTyxFQUNMLEtBQUssR0FHTixNQUFNLFFBQVEsQ0FBQztBQVdoQixNQUFNLG1CQUFvQixTQUFRLEtBQUs7SUFDckMsUUFBUSxDQUFTO0lBQ2pCLEVBQUUsQ0FBUztJQUNYLE1BQU0sQ0FBUztJQUVmLFlBQVksUUFBZ0IsRUFBRSxFQUFVLEVBQUUsTUFBYztRQUN0RCxNQUFNLE9BQU8sR0FBRyxpQkFBaUIsQ0FBQztRQUNsQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDZixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDO1FBQ2IsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsS0FBSyxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDbEQsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLFNBQVUsU0FBUSxLQUFLO0lBQ2xDLGFBQWEsQ0FBd0I7SUFFckMsWUFBWSxPQUF5QjtRQUNuQyx5Q0FBeUM7UUFDekMsTUFBTSxFQUFFLE1BQU0sR0FBRyxHQUFHLENBQUMsTUFBTSxFQUFFLEdBQUcsUUFBUSxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBRXJELE1BQU0sY0FBYyxHQUFtQixDQUFDLFFBQVEsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLEVBQUU7WUFDeEUsTUFBTSxDQUFDLFFBQVEsRUFBRSxVQUFVLEVBQUUsQ0FBQyxHQUFH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
@@ -1,9 +1,32 @@
1
+ import diagnosticsChannel from 'node:diagnostics_channel';
1
2
  import { EventEmitter } from 'node:events';
2
3
  import { LookupFunction } from 'node:net';
3
4
  import { Dispatcher } from 'undici';
4
5
  import { CheckAddressFunction } from './HttpAgent.js';
5
6
  import { RequestURL, RequestOptions, RequestMeta } from './Request.js';
6
7
  import { RawResponseWithMeta, HttpClientResponse } from './Response.js';
8
+ export declare const PROTO_RE: RegExp;
9
+ export interface UndiciTimingInfo {
10
+ startTime: number;
11
+ redirectStartTime: number;
12
+ redirectEndTime: number;
13
+ postRedirectStartTime: number;
14
+ finalServiceWorkerStartTime: number;
15
+ finalNetworkResponseStartTime: number;
16
+ finalNetworkRequestStartTime: number;
17
+ endTime: number;
18
+ encodedBodySize: number;
19
+ decodedBodySize: number;
20
+ finalConnectionTimingInfo: {
21
+ domainLookupStartTime: number;
22
+ domainLookupEndTime: number;
23
+ connectionStartTime: number;
24
+ connectionEndTime: number;
25
+ secureConnectionStartTime: number;
26
+ };
27
+ }
28
+ export interface UnidiciTimingInfo extends UndiciTimingInfo {
29
+ }
7
30
  export type ClientOptions = {
8
31
  defaultArgs?: RequestOptions;
9
32
  /** Allow to use HTTP2 first. Default is `false` */
@@ -46,6 +69,14 @@ export type RequestContext = {
46
69
  retries: number;
47
70
  socketErrorRetries: number;
48
71
  requestStartTime?: number;
72
+ redirects: number;
73
+ history: string[];
74
+ };
75
+ export declare const channels: {
76
+ request: diagnosticsChannel.Channel<unknown, unknown>;
77
+ response: diagnosticsChannel.Channel<unknown, unknown>;
78
+ fetchRequest: diagnosticsChannel.Channel<unknown, unknown>;
79
+ fetchResponse: diagnosticsChannel.Channel<unknown, unknown>;
49
80
  };
50
81
  export type RequestDiagnosticsMessage = {
51
82
  request: RequestMeta;