@mswjs/interceptors 0.40.0 → 0.41.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.
- package/ClientRequest/package.json +7 -2
- package/RemoteHttpInterceptor/package.json +7 -2
- package/WebSocket/package.json +9 -2
- package/XMLHttpRequest/package.json +9 -3
- package/fetch/package.json +9 -3
- package/lib/browser/Interceptor-2mUoKZL1.d.mts +65 -0
- package/lib/browser/Interceptor-Deczogc8.d.cts +65 -0
- package/lib/browser/XMLHttpRequest-BUfglQD1.cjs +761 -0
- package/lib/browser/XMLHttpRequest-BUfglQD1.cjs.map +1 -0
- package/lib/browser/XMLHttpRequest-DS5fc8Qs.mjs +756 -0
- package/lib/browser/XMLHttpRequest-DS5fc8Qs.mjs.map +1 -0
- package/lib/browser/bufferUtils-BiiO6HZv.mjs +20 -0
- package/lib/browser/bufferUtils-BiiO6HZv.mjs.map +1 -0
- package/lib/browser/bufferUtils-Uc0eRItL.cjs +38 -0
- package/lib/browser/bufferUtils-Uc0eRItL.cjs.map +1 -0
- package/lib/browser/createRequestId-Cs4oXfa1.cjs +205 -0
- package/lib/browser/createRequestId-Cs4oXfa1.cjs.map +1 -0
- package/lib/browser/createRequestId-DQcIlohW.mjs +170 -0
- package/lib/browser/createRequestId-DQcIlohW.mjs.map +1 -0
- package/lib/browser/fetch-BHcqM3z7.cjs +253 -0
- package/lib/browser/fetch-BHcqM3z7.cjs.map +1 -0
- package/lib/browser/fetch-DSJoynSF.mjs +248 -0
- package/lib/browser/fetch-DSJoynSF.mjs.map +1 -0
- package/lib/browser/getRawRequest-BTaNLFr0.mjs +218 -0
- package/lib/browser/getRawRequest-BTaNLFr0.mjs.map +1 -0
- package/lib/browser/getRawRequest-zx8rUJL2.cjs +259 -0
- package/lib/browser/getRawRequest-zx8rUJL2.cjs.map +1 -0
- package/lib/browser/glossary-BdLS4k1H.d.cts +70 -0
- package/lib/browser/glossary-gEEJhK4S.d.mts +70 -0
- package/lib/browser/handleRequest-DI6a7Dty.cjs +189 -0
- package/lib/browser/handleRequest-DI6a7Dty.cjs.map +1 -0
- package/lib/browser/handleRequest-DxGbCTbb.mjs +178 -0
- package/lib/browser/handleRequest-DxGbCTbb.mjs.map +1 -0
- package/lib/browser/hasConfigurableGlobal-C8kXFDic.mjs +33 -0
- package/lib/browser/hasConfigurableGlobal-C8kXFDic.mjs.map +1 -0
- package/lib/browser/hasConfigurableGlobal-D7S3l5h6.cjs +45 -0
- package/lib/browser/hasConfigurableGlobal-D7S3l5h6.cjs.map +1 -0
- package/lib/browser/index.cjs +68 -0
- package/lib/browser/index.cjs.map +1 -0
- package/lib/browser/index.d.cts +87 -0
- package/lib/browser/index.d.mts +87 -0
- package/lib/browser/index.mjs +49 -77
- package/lib/browser/index.mjs.map +1 -1
- package/lib/browser/interceptors/WebSocket/index.cjs +621 -0
- package/lib/browser/interceptors/WebSocket/index.cjs.map +1 -0
- package/lib/browser/interceptors/WebSocket/index.d.cts +277 -0
- package/lib/browser/interceptors/WebSocket/index.d.mts +277 -0
- package/lib/browser/interceptors/WebSocket/index.mjs +587 -694
- package/lib/browser/interceptors/WebSocket/index.mjs.map +1 -1
- package/lib/browser/interceptors/XMLHttpRequest/index.cjs +7 -0
- package/lib/browser/interceptors/XMLHttpRequest/index.d.cts +15 -0
- package/lib/browser/interceptors/XMLHttpRequest/index.d.mts +15 -0
- package/lib/browser/interceptors/XMLHttpRequest/index.mjs +7 -12
- package/lib/browser/interceptors/fetch/index.cjs +6 -0
- package/lib/browser/interceptors/fetch/index.d.cts +13 -0
- package/lib/browser/interceptors/fetch/index.d.mts +13 -0
- package/lib/browser/interceptors/fetch/index.mjs +6 -11
- package/lib/browser/presets/browser.cjs +17 -0
- package/lib/browser/presets/browser.cjs.map +1 -0
- package/lib/browser/presets/browser.d.cts +12 -0
- package/lib/browser/presets/browser.d.mts +14 -0
- package/lib/browser/presets/browser.mjs +15 -19
- package/lib/browser/presets/browser.mjs.map +1 -1
- package/lib/node/BatchInterceptor-3LnAnLTx.cjs +49 -0
- package/lib/node/BatchInterceptor-3LnAnLTx.cjs.map +1 -0
- package/lib/node/BatchInterceptor-D7mXzHcQ.d.mts +26 -0
- package/lib/node/BatchInterceptor-DFaBPilf.mjs +44 -0
- package/lib/node/BatchInterceptor-DFaBPilf.mjs.map +1 -0
- package/lib/node/BatchInterceptor-D_YqR8qU.d.cts +26 -0
- package/lib/node/ClientRequest-2rDe54Ui.cjs +1043 -0
- package/lib/node/ClientRequest-2rDe54Ui.cjs.map +1 -0
- package/lib/node/ClientRequest-Ca8Qykuv.mjs +1034 -0
- package/lib/node/ClientRequest-Ca8Qykuv.mjs.map +1 -0
- package/lib/node/Interceptor-DEazpLJd.d.mts +133 -0
- package/lib/node/Interceptor-DJ2akVWI.d.cts +133 -0
- package/lib/node/RemoteHttpInterceptor.cjs +154 -0
- package/lib/node/RemoteHttpInterceptor.cjs.map +1 -0
- package/lib/node/RemoteHttpInterceptor.d.cts +39 -0
- package/lib/node/RemoteHttpInterceptor.d.mts +39 -0
- package/lib/node/RemoteHttpInterceptor.mjs +145 -190
- package/lib/node/RemoteHttpInterceptor.mjs.map +1 -1
- package/lib/node/XMLHttpRequest-B7kJdYYI.cjs +763 -0
- package/lib/node/XMLHttpRequest-B7kJdYYI.cjs.map +1 -0
- package/lib/node/XMLHttpRequest-C8dIZpds.mjs +757 -0
- package/lib/node/XMLHttpRequest-C8dIZpds.mjs.map +1 -0
- package/lib/node/bufferUtils-DiCTqG-7.cjs +38 -0
- package/lib/node/bufferUtils-DiCTqG-7.cjs.map +1 -0
- package/lib/node/bufferUtils-_8XfKIfX.mjs +20 -0
- package/lib/node/bufferUtils-_8XfKIfX.mjs.map +1 -0
- package/lib/node/chunk-CbDLau6x.cjs +34 -0
- package/lib/node/fetch-BmXpK10r.cjs +272 -0
- package/lib/node/fetch-BmXpK10r.cjs.map +1 -0
- package/lib/node/fetch-G1DVwDKG.mjs +265 -0
- package/lib/node/fetch-G1DVwDKG.mjs.map +1 -0
- package/lib/node/fetchUtils-BaY5iWXw.cjs +419 -0
- package/lib/node/fetchUtils-BaY5iWXw.cjs.map +1 -0
- package/lib/node/fetchUtils-CoU35g3M.mjs +359 -0
- package/lib/node/fetchUtils-CoU35g3M.mjs.map +1 -0
- package/lib/node/getRawRequest-BavnMWh_.cjs +36 -0
- package/lib/node/getRawRequest-BavnMWh_.cjs.map +1 -0
- package/lib/node/getRawRequest-DnwmXyOW.mjs +24 -0
- package/lib/node/getRawRequest-DnwmXyOW.mjs.map +1 -0
- package/lib/node/glossary-BLKRyLBd.cjs +12 -0
- package/lib/node/glossary-BLKRyLBd.cjs.map +1 -0
- package/lib/node/glossary-glQBRnVD.mjs +6 -0
- package/lib/node/glossary-glQBRnVD.mjs.map +1 -0
- package/lib/node/handleRequest-Bb7Y-XLw.cjs +220 -0
- package/lib/node/handleRequest-Bb7Y-XLw.cjs.map +1 -0
- package/lib/node/handleRequest-Y97UwBbF.mjs +190 -0
- package/lib/node/handleRequest-Y97UwBbF.mjs.map +1 -0
- package/lib/node/hasConfigurableGlobal-C97fWuaA.cjs +26 -0
- package/lib/node/hasConfigurableGlobal-C97fWuaA.cjs.map +1 -0
- package/lib/node/hasConfigurableGlobal-DBJA0vjm.mjs +20 -0
- package/lib/node/hasConfigurableGlobal-DBJA0vjm.mjs.map +1 -0
- package/lib/node/index-BMbJ8FXL.d.cts +113 -0
- package/lib/node/index-C0YAQ36w.d.mts +113 -0
- package/lib/node/index.cjs +30 -0
- package/lib/node/index.cjs.map +1 -0
- package/lib/node/index.d.cts +66 -0
- package/lib/node/index.d.mts +66 -0
- package/lib/node/index.mjs +13 -41
- package/lib/node/index.mjs.map +1 -1
- package/lib/node/interceptors/ClientRequest/index.cjs +6 -0
- package/lib/node/interceptors/ClientRequest/index.d.cts +2 -0
- package/lib/node/interceptors/ClientRequest/index.d.mts +3 -0
- package/lib/node/interceptors/ClientRequest/index.mjs +6 -11
- package/lib/node/interceptors/XMLHttpRequest/index.cjs +6 -0
- package/lib/node/interceptors/XMLHttpRequest/index.d.cts +14 -0
- package/lib/node/interceptors/XMLHttpRequest/index.d.mts +14 -0
- package/lib/node/interceptors/XMLHttpRequest/index.mjs +6 -13
- package/lib/node/interceptors/fetch/index.cjs +5 -0
- package/lib/node/interceptors/fetch/index.d.cts +12 -0
- package/lib/node/interceptors/fetch/index.d.mts +12 -0
- package/lib/node/interceptors/fetch/index.mjs +5 -12
- package/lib/node/node-DwCc6iuP.mjs +27 -0
- package/lib/node/node-DwCc6iuP.mjs.map +1 -0
- package/lib/node/node-dKdAf3tC.cjs +39 -0
- package/lib/node/node-dKdAf3tC.cjs.map +1 -0
- package/lib/node/presets/node.cjs +22 -0
- package/lib/node/presets/node.cjs.map +1 -0
- package/lib/node/presets/node.d.cts +13 -0
- package/lib/node/presets/node.d.mts +15 -0
- package/lib/node/presets/node.mjs +18 -23
- package/lib/node/presets/node.mjs.map +1 -1
- package/lib/node/utils/node/index.cjs +4 -0
- package/lib/node/utils/node/{index.d.ts → index.d.cts} +5 -2
- package/lib/node/utils/node/index.d.mts +16 -0
- package/lib/node/utils/node/index.mjs +3 -10
- package/package.json +33 -59
- package/presets/browser/package.json +2 -3
- package/presets/node/package.json +7 -2
- package/src/interceptors/ClientRequest/MockHttpSocket.ts +21 -8
- package/src/interceptors/ClientRequest/utils/parserUtils.ts +48 -0
- package/src/interceptors/WebSocket/index.ts +4 -1
- package/src/interceptors/XMLHttpRequest/utils/getBodyByteLength.test.ts +2 -2
- package/lib/browser/Interceptor-af98b768.d.ts +0 -63
- package/lib/browser/chunk-2HUMWGRD.js +0 -37
- package/lib/browser/chunk-2HUMWGRD.js.map +0 -1
- package/lib/browser/chunk-2MCNQOY3.js +0 -851
- package/lib/browser/chunk-2MCNQOY3.js.map +0 -1
- package/lib/browser/chunk-57RIRQUY.js +0 -218
- package/lib/browser/chunk-57RIRQUY.js.map +0 -1
- package/lib/browser/chunk-6HYIRFX2.mjs +0 -22
- package/lib/browser/chunk-6HYIRFX2.mjs.map +0 -1
- package/lib/browser/chunk-FW45TRCB.js +0 -178
- package/lib/browser/chunk-FW45TRCB.js.map +0 -1
- package/lib/browser/chunk-JQ2S7G56.js +0 -185
- package/lib/browser/chunk-JQ2S7G56.js.map +0 -1
- package/lib/browser/chunk-LIKZF2VU.mjs +0 -218
- package/lib/browser/chunk-LIKZF2VU.mjs.map +0 -1
- package/lib/browser/chunk-LK6DILFK.js +0 -22
- package/lib/browser/chunk-LK6DILFK.js.map +0 -1
- package/lib/browser/chunk-MNT2FUCH.js +0 -301
- package/lib/browser/chunk-MNT2FUCH.js.map +0 -1
- package/lib/browser/chunk-VOUOVDAW.mjs +0 -178
- package/lib/browser/chunk-VOUOVDAW.mjs.map +0 -1
- package/lib/browser/chunk-VYSDLBSS.mjs +0 -37
- package/lib/browser/chunk-VYSDLBSS.mjs.map +0 -1
- package/lib/browser/chunk-WADP6VHN.mjs +0 -851
- package/lib/browser/chunk-WADP6VHN.mjs.map +0 -1
- package/lib/browser/chunk-WOWPV4GR.mjs +0 -301
- package/lib/browser/chunk-WOWPV4GR.mjs.map +0 -1
- package/lib/browser/chunk-Z5TSB3T6.mjs +0 -185
- package/lib/browser/chunk-Z5TSB3T6.mjs.map +0 -1
- package/lib/browser/glossary-f7ee1c9d.d.ts +0 -74
- package/lib/browser/index.d.ts +0 -82
- package/lib/browser/index.js +0 -83
- package/lib/browser/index.js.map +0 -1
- package/lib/browser/interceptors/WebSocket/index.d.ts +0 -271
- package/lib/browser/interceptors/WebSocket/index.js +0 -721
- package/lib/browser/interceptors/WebSocket/index.js.map +0 -1
- package/lib/browser/interceptors/XMLHttpRequest/index.d.ts +0 -14
- package/lib/browser/interceptors/XMLHttpRequest/index.js +0 -12
- package/lib/browser/interceptors/XMLHttpRequest/index.js.map +0 -1
- package/lib/browser/interceptors/XMLHttpRequest/index.mjs.map +0 -1
- package/lib/browser/interceptors/fetch/index.d.ts +0 -13
- package/lib/browser/interceptors/fetch/index.js +0 -11
- package/lib/browser/interceptors/fetch/index.js.map +0 -1
- package/lib/browser/interceptors/fetch/index.mjs.map +0 -1
- package/lib/browser/presets/browser.d.ts +0 -14
- package/lib/browser/presets/browser.js +0 -21
- package/lib/browser/presets/browser.js.map +0 -1
- package/lib/node/BatchInterceptor-cb9a2eee.d.ts +0 -24
- package/lib/node/Interceptor-dc0a39b5.d.ts +0 -136
- package/lib/node/RemoteHttpInterceptor.d.ts +0 -44
- package/lib/node/RemoteHttpInterceptor.js +0 -197
- package/lib/node/RemoteHttpInterceptor.js.map +0 -1
- package/lib/node/chunk-5UGIB6OX.mjs +0 -1126
- package/lib/node/chunk-5UGIB6OX.mjs.map +0 -1
- package/lib/node/chunk-5V3SIIW2.mjs +0 -853
- package/lib/node/chunk-5V3SIIW2.mjs.map +0 -1
- package/lib/node/chunk-6B3ZQOO2.js +0 -853
- package/lib/node/chunk-6B3ZQOO2.js.map +0 -1
- package/lib/node/chunk-6HYIRFX2.mjs +0 -22
- package/lib/node/chunk-6HYIRFX2.mjs.map +0 -1
- package/lib/node/chunk-6YM4PLBI.mjs +0 -7
- package/lib/node/chunk-6YM4PLBI.mjs.map +0 -1
- package/lib/node/chunk-73NOP3T5.js +0 -7
- package/lib/node/chunk-73NOP3T5.js.map +0 -1
- package/lib/node/chunk-7Q53NNPV.js +0 -189
- package/lib/node/chunk-7Q53NNPV.js.map +0 -1
- package/lib/node/chunk-DOWWQYXZ.js +0 -369
- package/lib/node/chunk-DOWWQYXZ.js.map +0 -1
- package/lib/node/chunk-FRZQJNBO.js +0 -318
- package/lib/node/chunk-FRZQJNBO.js.map +0 -1
- package/lib/node/chunk-GKN5RBVR.mjs +0 -32
- package/lib/node/chunk-GKN5RBVR.mjs.map +0 -1
- package/lib/node/chunk-J5MULIHT.js +0 -51
- package/lib/node/chunk-J5MULIHT.js.map +0 -1
- package/lib/node/chunk-JXGB54LE.mjs +0 -369
- package/lib/node/chunk-JXGB54LE.mjs.map +0 -1
- package/lib/node/chunk-LK6DILFK.js +0 -22
- package/lib/node/chunk-LK6DILFK.js.map +0 -1
- package/lib/node/chunk-OFW5L5ET.mjs +0 -318
- package/lib/node/chunk-OFW5L5ET.mjs.map +0 -1
- package/lib/node/chunk-PFGO5BSM.js +0 -25
- package/lib/node/chunk-PFGO5BSM.js.map +0 -1
- package/lib/node/chunk-R6T7CL5E.mjs +0 -189
- package/lib/node/chunk-R6T7CL5E.mjs.map +0 -1
- package/lib/node/chunk-SQ6RHTJR.mjs +0 -51
- package/lib/node/chunk-SQ6RHTJR.mjs.map +0 -1
- package/lib/node/chunk-SRMAQGPM.js +0 -30
- package/lib/node/chunk-SRMAQGPM.js.map +0 -1
- package/lib/node/chunk-T3TW4P64.js +0 -32
- package/lib/node/chunk-T3TW4P64.js.map +0 -1
- package/lib/node/chunk-TX5GBTFY.mjs +0 -25
- package/lib/node/chunk-TX5GBTFY.mjs.map +0 -1
- package/lib/node/chunk-VYO5XDY2.js +0 -1126
- package/lib/node/chunk-VYO5XDY2.js.map +0 -1
- package/lib/node/chunk-YWNGXXUQ.mjs +0 -30
- package/lib/node/chunk-YWNGXXUQ.mjs.map +0 -1
- package/lib/node/index.d.ts +0 -61
- package/lib/node/index.js +0 -45
- package/lib/node/index.js.map +0 -1
- package/lib/node/interceptors/ClientRequest/index.d.ts +0 -110
- package/lib/node/interceptors/ClientRequest/index.js +0 -11
- package/lib/node/interceptors/ClientRequest/index.js.map +0 -1
- package/lib/node/interceptors/ClientRequest/index.mjs.map +0 -1
- package/lib/node/interceptors/XMLHttpRequest/index.d.ts +0 -13
- package/lib/node/interceptors/XMLHttpRequest/index.js +0 -13
- package/lib/node/interceptors/XMLHttpRequest/index.js.map +0 -1
- package/lib/node/interceptors/XMLHttpRequest/index.mjs.map +0 -1
- package/lib/node/interceptors/fetch/index.d.ts +0 -12
- package/lib/node/interceptors/fetch/index.js +0 -12
- package/lib/node/interceptors/fetch/index.js.map +0 -1
- package/lib/node/interceptors/fetch/index.mjs.map +0 -1
- package/lib/node/presets/node.d.ts +0 -15
- package/lib/node/presets/node.js +0 -27
- package/lib/node/presets/node.js.map +0 -1
- package/lib/node/utils/node/index.js +0 -10
- package/lib/node/utils/node/index.js.map +0 -1
- package/lib/node/utils/node/index.mjs.map +0 -1
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { a as RequestControllerSource, i as RequestController, n as IS_PATCHED_MODULE, r as RequestCredentials, t as HttpRequestEventMap } from "./glossary-BdLS4k1H.cjs";
|
|
2
|
+
import { a as InterceptorReadyState, c as getGlobalSymbol, i as InterceptorEventMap, n as INTERNAL_REQUEST_ID_HEADER_NAME, o as InterceptorSubscription, r as Interceptor, s as deleteGlobalSymbol, t as ExtractEventNames } from "./Interceptor-Deczogc8.cjs";
|
|
3
|
+
import { EventMap, Listener } from "strict-event-emitter";
|
|
4
|
+
|
|
5
|
+
//#region src/BatchInterceptor.d.ts
|
|
6
|
+
interface BatchInterceptorOptions<InterceptorList extends ReadonlyArray<Interceptor<any>>> {
|
|
7
|
+
name: string;
|
|
8
|
+
interceptors: InterceptorList;
|
|
9
|
+
}
|
|
10
|
+
type ExtractEventMapType<InterceptorList extends ReadonlyArray<Interceptor<any>>> = InterceptorList extends ReadonlyArray<infer InterceptorType> ? InterceptorType extends Interceptor<infer EventMap> ? EventMap : never : never;
|
|
11
|
+
/**
|
|
12
|
+
* A batch interceptor that exposes a single interface
|
|
13
|
+
* to apply and operate with multiple interceptors at once.
|
|
14
|
+
*/
|
|
15
|
+
declare class BatchInterceptor<InterceptorList extends ReadonlyArray<Interceptor<any>>, Events extends EventMap = ExtractEventMapType<InterceptorList>> extends Interceptor<Events> {
|
|
16
|
+
static symbol: symbol;
|
|
17
|
+
private interceptors;
|
|
18
|
+
constructor(options: BatchInterceptorOptions<InterceptorList>);
|
|
19
|
+
protected setup(): void;
|
|
20
|
+
on<EventName extends ExtractEventNames<Events>>(event: EventName, listener: Listener<Events[EventName]>): this;
|
|
21
|
+
once<EventName extends ExtractEventNames<Events>>(event: EventName, listener: Listener<Events[EventName]>): this;
|
|
22
|
+
off<EventName extends ExtractEventNames<Events>>(event: EventName, listener: Listener<Events[EventName]>): this;
|
|
23
|
+
removeAllListeners<EventName extends ExtractEventNames<Events>>(event?: EventName | undefined): this;
|
|
24
|
+
}
|
|
25
|
+
//#endregion
|
|
26
|
+
//#region src/createRequestId.d.ts
|
|
27
|
+
/**
|
|
28
|
+
* Generate a random ID string to represent a request.
|
|
29
|
+
* @example
|
|
30
|
+
* createRequestId()
|
|
31
|
+
* // "f774b6c9c600f"
|
|
32
|
+
*/
|
|
33
|
+
declare function createRequestId(): string;
|
|
34
|
+
//#endregion
|
|
35
|
+
//#region src/utils/getCleanUrl.d.ts
|
|
36
|
+
/**
|
|
37
|
+
* Removes query parameters and hashes from a given URL.
|
|
38
|
+
*/
|
|
39
|
+
declare function getCleanUrl(url: URL, isAbsolute?: boolean): string;
|
|
40
|
+
//#endregion
|
|
41
|
+
//#region src/utils/bufferUtils.d.ts
|
|
42
|
+
declare function encodeBuffer(text: string): Uint8Array;
|
|
43
|
+
declare function decodeBuffer(buffer: ArrayBuffer, encoding?: string): string;
|
|
44
|
+
//#endregion
|
|
45
|
+
//#region src/utils/fetchUtils.d.ts
|
|
46
|
+
interface FetchResponseInit extends ResponseInit {
|
|
47
|
+
url?: string;
|
|
48
|
+
}
|
|
49
|
+
declare class FetchResponse extends Response {
|
|
50
|
+
/**
|
|
51
|
+
* Response status codes for responses that cannot have body.
|
|
52
|
+
* @see https://fetch.spec.whatwg.org/#statuses
|
|
53
|
+
*/
|
|
54
|
+
static readonly STATUS_CODES_WITHOUT_BODY: number[];
|
|
55
|
+
static readonly STATUS_CODES_WITH_REDIRECT: number[];
|
|
56
|
+
static isConfigurableStatusCode(status: number): boolean;
|
|
57
|
+
static isRedirectResponse(status: number): boolean;
|
|
58
|
+
/**
|
|
59
|
+
* Returns a boolean indicating whether the given response status
|
|
60
|
+
* code represents a response that can have a body.
|
|
61
|
+
*/
|
|
62
|
+
static isResponseWithBody(status: number): boolean;
|
|
63
|
+
static setUrl(url: string | undefined, response: Response): void;
|
|
64
|
+
/**
|
|
65
|
+
* Parses the given raw HTTP headers into a Fetch API `Headers` instance.
|
|
66
|
+
*/
|
|
67
|
+
static parseRawHeaders(rawHeaders: Array<string>): Headers;
|
|
68
|
+
constructor(body?: BodyInit | null, init?: FetchResponseInit);
|
|
69
|
+
}
|
|
70
|
+
//#endregion
|
|
71
|
+
//#region src/getRawRequest.d.ts
|
|
72
|
+
/**
|
|
73
|
+
* Returns a raw request instance associated with this request.
|
|
74
|
+
*
|
|
75
|
+
* @example
|
|
76
|
+
* interceptor.on('request', ({ request }) => {
|
|
77
|
+
* const rawRequest = getRawRequest(request)
|
|
78
|
+
*
|
|
79
|
+
* if (rawRequest instanceof http.ClientRequest) {
|
|
80
|
+
* console.log(rawRequest.rawHeaders)
|
|
81
|
+
* }
|
|
82
|
+
* })
|
|
83
|
+
*/
|
|
84
|
+
declare function getRawRequest(request: Request): unknown | undefined;
|
|
85
|
+
//#endregion
|
|
86
|
+
export { BatchInterceptor, BatchInterceptorOptions, ExtractEventMapType, ExtractEventNames, FetchResponse, HttpRequestEventMap, INTERNAL_REQUEST_ID_HEADER_NAME, IS_PATCHED_MODULE, Interceptor, InterceptorEventMap, InterceptorReadyState, InterceptorSubscription, RequestController, type RequestControllerSource, RequestCredentials, createRequestId, decodeBuffer, deleteGlobalSymbol, encodeBuffer, getCleanUrl, getGlobalSymbol, getRawRequest };
|
|
87
|
+
//# sourceMappingURL=index.d.cts.map
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { a as RequestControllerSource, i as RequestController, n as IS_PATCHED_MODULE, r as RequestCredentials, t as HttpRequestEventMap } from "./glossary-gEEJhK4S.mjs";
|
|
2
|
+
import { a as InterceptorReadyState, c as getGlobalSymbol, i as InterceptorEventMap, n as INTERNAL_REQUEST_ID_HEADER_NAME, o as InterceptorSubscription, r as Interceptor, s as deleteGlobalSymbol, t as ExtractEventNames } from "./Interceptor-2mUoKZL1.mjs";
|
|
3
|
+
import { EventMap, Listener } from "strict-event-emitter";
|
|
4
|
+
|
|
5
|
+
//#region src/BatchInterceptor.d.ts
|
|
6
|
+
interface BatchInterceptorOptions<InterceptorList extends ReadonlyArray<Interceptor<any>>> {
|
|
7
|
+
name: string;
|
|
8
|
+
interceptors: InterceptorList;
|
|
9
|
+
}
|
|
10
|
+
type ExtractEventMapType<InterceptorList extends ReadonlyArray<Interceptor<any>>> = InterceptorList extends ReadonlyArray<infer InterceptorType> ? InterceptorType extends Interceptor<infer EventMap> ? EventMap : never : never;
|
|
11
|
+
/**
|
|
12
|
+
* A batch interceptor that exposes a single interface
|
|
13
|
+
* to apply and operate with multiple interceptors at once.
|
|
14
|
+
*/
|
|
15
|
+
declare class BatchInterceptor<InterceptorList extends ReadonlyArray<Interceptor<any>>, Events extends EventMap = ExtractEventMapType<InterceptorList>> extends Interceptor<Events> {
|
|
16
|
+
static symbol: symbol;
|
|
17
|
+
private interceptors;
|
|
18
|
+
constructor(options: BatchInterceptorOptions<InterceptorList>);
|
|
19
|
+
protected setup(): void;
|
|
20
|
+
on<EventName extends ExtractEventNames<Events>>(event: EventName, listener: Listener<Events[EventName]>): this;
|
|
21
|
+
once<EventName extends ExtractEventNames<Events>>(event: EventName, listener: Listener<Events[EventName]>): this;
|
|
22
|
+
off<EventName extends ExtractEventNames<Events>>(event: EventName, listener: Listener<Events[EventName]>): this;
|
|
23
|
+
removeAllListeners<EventName extends ExtractEventNames<Events>>(event?: EventName | undefined): this;
|
|
24
|
+
}
|
|
25
|
+
//#endregion
|
|
26
|
+
//#region src/createRequestId.d.ts
|
|
27
|
+
/**
|
|
28
|
+
* Generate a random ID string to represent a request.
|
|
29
|
+
* @example
|
|
30
|
+
* createRequestId()
|
|
31
|
+
* // "f774b6c9c600f"
|
|
32
|
+
*/
|
|
33
|
+
declare function createRequestId(): string;
|
|
34
|
+
//#endregion
|
|
35
|
+
//#region src/utils/getCleanUrl.d.ts
|
|
36
|
+
/**
|
|
37
|
+
* Removes query parameters and hashes from a given URL.
|
|
38
|
+
*/
|
|
39
|
+
declare function getCleanUrl(url: URL, isAbsolute?: boolean): string;
|
|
40
|
+
//#endregion
|
|
41
|
+
//#region src/utils/bufferUtils.d.ts
|
|
42
|
+
declare function encodeBuffer(text: string): Uint8Array;
|
|
43
|
+
declare function decodeBuffer(buffer: ArrayBuffer, encoding?: string): string;
|
|
44
|
+
//#endregion
|
|
45
|
+
//#region src/utils/fetchUtils.d.ts
|
|
46
|
+
interface FetchResponseInit extends ResponseInit {
|
|
47
|
+
url?: string;
|
|
48
|
+
}
|
|
49
|
+
declare class FetchResponse extends Response {
|
|
50
|
+
/**
|
|
51
|
+
* Response status codes for responses that cannot have body.
|
|
52
|
+
* @see https://fetch.spec.whatwg.org/#statuses
|
|
53
|
+
*/
|
|
54
|
+
static readonly STATUS_CODES_WITHOUT_BODY: number[];
|
|
55
|
+
static readonly STATUS_CODES_WITH_REDIRECT: number[];
|
|
56
|
+
static isConfigurableStatusCode(status: number): boolean;
|
|
57
|
+
static isRedirectResponse(status: number): boolean;
|
|
58
|
+
/**
|
|
59
|
+
* Returns a boolean indicating whether the given response status
|
|
60
|
+
* code represents a response that can have a body.
|
|
61
|
+
*/
|
|
62
|
+
static isResponseWithBody(status: number): boolean;
|
|
63
|
+
static setUrl(url: string | undefined, response: Response): void;
|
|
64
|
+
/**
|
|
65
|
+
* Parses the given raw HTTP headers into a Fetch API `Headers` instance.
|
|
66
|
+
*/
|
|
67
|
+
static parseRawHeaders(rawHeaders: Array<string>): Headers;
|
|
68
|
+
constructor(body?: BodyInit | null, init?: FetchResponseInit);
|
|
69
|
+
}
|
|
70
|
+
//#endregion
|
|
71
|
+
//#region src/getRawRequest.d.ts
|
|
72
|
+
/**
|
|
73
|
+
* Returns a raw request instance associated with this request.
|
|
74
|
+
*
|
|
75
|
+
* @example
|
|
76
|
+
* interceptor.on('request', ({ request }) => {
|
|
77
|
+
* const rawRequest = getRawRequest(request)
|
|
78
|
+
*
|
|
79
|
+
* if (rawRequest instanceof http.ClientRequest) {
|
|
80
|
+
* console.log(rawRequest.rawHeaders)
|
|
81
|
+
* }
|
|
82
|
+
* })
|
|
83
|
+
*/
|
|
84
|
+
declare function getRawRequest(request: Request): unknown | undefined;
|
|
85
|
+
//#endregion
|
|
86
|
+
export { BatchInterceptor, BatchInterceptorOptions, ExtractEventMapType, ExtractEventNames, FetchResponse, HttpRequestEventMap, INTERNAL_REQUEST_ID_HEADER_NAME, IS_PATCHED_MODULE, Interceptor, InterceptorEventMap, InterceptorReadyState, InterceptorSubscription, RequestController, type RequestControllerSource, RequestCredentials, createRequestId, decodeBuffer, deleteGlobalSymbol, encodeBuffer, getCleanUrl, getGlobalSymbol, getRawRequest };
|
|
87
|
+
//# sourceMappingURL=index.d.mts.map
|
package/lib/browser/index.mjs
CHANGED
|
@@ -1,83 +1,55 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
} from "./chunk-6HYIRFX2.mjs";
|
|
5
|
-
import {
|
|
6
|
-
FetchResponse,
|
|
7
|
-
IS_PATCHED_MODULE,
|
|
8
|
-
RequestController,
|
|
9
|
-
getRawRequest
|
|
10
|
-
} from "./chunk-LIKZF2VU.mjs";
|
|
11
|
-
import {
|
|
12
|
-
INTERNAL_REQUEST_ID_HEADER_NAME,
|
|
13
|
-
Interceptor,
|
|
14
|
-
InterceptorReadyState,
|
|
15
|
-
createRequestId,
|
|
16
|
-
deleteGlobalSymbol,
|
|
17
|
-
getGlobalSymbol
|
|
18
|
-
} from "./chunk-Z5TSB3T6.mjs";
|
|
1
|
+
import { a as RequestController, r as FetchResponse, s as IS_PATCHED_MODULE, t as getRawRequest } from "./getRawRequest-BTaNLFr0.mjs";
|
|
2
|
+
import { a as deleteGlobalSymbol, i as InterceptorReadyState, n as INTERNAL_REQUEST_ID_HEADER_NAME, o as getGlobalSymbol, r as Interceptor, t as createRequestId } from "./createRequestId-DQcIlohW.mjs";
|
|
3
|
+
import { n as encodeBuffer, t as decodeBuffer } from "./bufferUtils-BiiO6HZv.mjs";
|
|
19
4
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
interceptors.removeAllListeners(event);
|
|
58
|
-
}
|
|
59
|
-
return this;
|
|
60
|
-
}
|
|
5
|
+
//#region src/BatchInterceptor.ts
|
|
6
|
+
/**
|
|
7
|
+
* A batch interceptor that exposes a single interface
|
|
8
|
+
* to apply and operate with multiple interceptors at once.
|
|
9
|
+
*/
|
|
10
|
+
var BatchInterceptor = class BatchInterceptor extends Interceptor {
|
|
11
|
+
constructor(options) {
|
|
12
|
+
BatchInterceptor.symbol = Symbol(options.name);
|
|
13
|
+
super(BatchInterceptor.symbol);
|
|
14
|
+
this.interceptors = options.interceptors;
|
|
15
|
+
}
|
|
16
|
+
setup() {
|
|
17
|
+
const logger = this.logger.extend("setup");
|
|
18
|
+
logger.info("applying all %d interceptors...", this.interceptors.length);
|
|
19
|
+
for (const interceptor of this.interceptors) {
|
|
20
|
+
logger.info("applying \"%s\" interceptor...", interceptor.constructor.name);
|
|
21
|
+
interceptor.apply();
|
|
22
|
+
logger.info("adding interceptor dispose subscription");
|
|
23
|
+
this.subscriptions.push(() => interceptor.dispose());
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
on(event, listener) {
|
|
27
|
+
for (const interceptor of this.interceptors) interceptor.on(event, listener);
|
|
28
|
+
return this;
|
|
29
|
+
}
|
|
30
|
+
once(event, listener) {
|
|
31
|
+
for (const interceptor of this.interceptors) interceptor.once(event, listener);
|
|
32
|
+
return this;
|
|
33
|
+
}
|
|
34
|
+
off(event, listener) {
|
|
35
|
+
for (const interceptor of this.interceptors) interceptor.off(event, listener);
|
|
36
|
+
return this;
|
|
37
|
+
}
|
|
38
|
+
removeAllListeners(event) {
|
|
39
|
+
for (const interceptors of this.interceptors) interceptors.removeAllListeners(event);
|
|
40
|
+
return this;
|
|
41
|
+
}
|
|
61
42
|
};
|
|
62
43
|
|
|
63
|
-
|
|
44
|
+
//#endregion
|
|
45
|
+
//#region src/utils/getCleanUrl.ts
|
|
46
|
+
/**
|
|
47
|
+
* Removes query parameters and hashes from a given URL.
|
|
48
|
+
*/
|
|
64
49
|
function getCleanUrl(url, isAbsolute = true) {
|
|
65
|
-
|
|
50
|
+
return [isAbsolute && url.origin, url.pathname].filter(Boolean).join("");
|
|
66
51
|
}
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
INTERNAL_REQUEST_ID_HEADER_NAME,
|
|
71
|
-
IS_PATCHED_MODULE,
|
|
72
|
-
Interceptor,
|
|
73
|
-
InterceptorReadyState,
|
|
74
|
-
RequestController,
|
|
75
|
-
createRequestId,
|
|
76
|
-
decodeBuffer,
|
|
77
|
-
deleteGlobalSymbol,
|
|
78
|
-
encodeBuffer,
|
|
79
|
-
getCleanUrl,
|
|
80
|
-
getGlobalSymbol,
|
|
81
|
-
getRawRequest
|
|
82
|
-
};
|
|
52
|
+
|
|
53
|
+
//#endregion
|
|
54
|
+
export { BatchInterceptor, FetchResponse, INTERNAL_REQUEST_ID_HEADER_NAME, IS_PATCHED_MODULE, Interceptor, InterceptorReadyState, RequestController, createRequestId, decodeBuffer, deleteGlobalSymbol, encodeBuffer, getCleanUrl, getGlobalSymbol, getRawRequest };
|
|
83
55
|
//# sourceMappingURL=index.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/BatchInterceptor.ts","../../src/utils/getCleanUrl.ts"],"sourcesContent":["import { EventMap, Listener } from 'strict-event-emitter'\nimport { Interceptor, ExtractEventNames } from './Interceptor'\n\nexport interface BatchInterceptorOptions<\n InterceptorList extends ReadonlyArray<Interceptor<any>>\n> {\n name: string\n interceptors: InterceptorList\n}\n\nexport type ExtractEventMapType<\n InterceptorList extends ReadonlyArray<Interceptor<any>>\n> = InterceptorList extends ReadonlyArray<infer InterceptorType>\n ? InterceptorType extends Interceptor<infer EventMap>\n ? EventMap\n : never\n : never\n\n/**\n * A batch interceptor that exposes a single interface\n * to apply and operate with multiple interceptors at once.\n */\nexport class BatchInterceptor<\n InterceptorList extends ReadonlyArray<Interceptor<any>>,\n Events extends EventMap = ExtractEventMapType<InterceptorList>\n> extends Interceptor<Events> {\n static symbol: symbol\n\n private interceptors: InterceptorList\n\n constructor(options: BatchInterceptorOptions<InterceptorList>) {\n BatchInterceptor.symbol = Symbol(options.name)\n super(BatchInterceptor.symbol)\n this.interceptors = options.interceptors\n }\n\n protected setup() {\n const logger = this.logger.extend('setup')\n\n logger.info('applying all %d interceptors...', this.interceptors.length)\n\n for (const interceptor of this.interceptors) {\n logger.info('applying \"%s\" interceptor...', interceptor.constructor.name)\n interceptor.apply()\n\n logger.info('adding interceptor dispose subscription')\n this.subscriptions.push(() => interceptor.dispose())\n }\n }\n\n public on<EventName extends ExtractEventNames<Events>>(\n event: EventName,\n listener: Listener<Events[EventName]>\n ): this {\n // Instead of adding a listener to the batch interceptor,\n // propagate the listener to each of the individual interceptors.\n for (const interceptor of this.interceptors) {\n interceptor.on(event, listener)\n }\n\n return this\n }\n\n public once<EventName extends ExtractEventNames<Events>>(\n event: EventName,\n listener: Listener<Events[EventName]>\n ): this {\n for (const interceptor of this.interceptors) {\n interceptor.once(event, listener)\n }\n\n return this\n }\n\n public off<EventName extends ExtractEventNames<Events>>(\n event: EventName,\n listener: Listener<Events[EventName]>\n ): this {\n for (const interceptor of this.interceptors) {\n interceptor.off(event, listener)\n }\n\n return this\n }\n\n public removeAllListeners<EventName extends ExtractEventNames<Events>>(\n event?: EventName | undefined\n ): this {\n for (const interceptors of this.interceptors) {\n interceptors.removeAllListeners(event)\n }\n\n return this\n }\n}\n","/**\n * Removes query parameters and hashes from a given URL.\n */\nexport function getCleanUrl(url: URL, isAbsolute: boolean = true): string {\n return [isAbsolute && url.origin, url.pathname].filter(Boolean).join('')\n}\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.mjs","names":[],"sources":["../../src/BatchInterceptor.ts","../../src/utils/getCleanUrl.ts"],"sourcesContent":["import { EventMap, Listener } from 'strict-event-emitter'\nimport { Interceptor, ExtractEventNames } from './Interceptor'\n\nexport interface BatchInterceptorOptions<\n InterceptorList extends ReadonlyArray<Interceptor<any>>\n> {\n name: string\n interceptors: InterceptorList\n}\n\nexport type ExtractEventMapType<\n InterceptorList extends ReadonlyArray<Interceptor<any>>\n> = InterceptorList extends ReadonlyArray<infer InterceptorType>\n ? InterceptorType extends Interceptor<infer EventMap>\n ? EventMap\n : never\n : never\n\n/**\n * A batch interceptor that exposes a single interface\n * to apply and operate with multiple interceptors at once.\n */\nexport class BatchInterceptor<\n InterceptorList extends ReadonlyArray<Interceptor<any>>,\n Events extends EventMap = ExtractEventMapType<InterceptorList>\n> extends Interceptor<Events> {\n static symbol: symbol\n\n private interceptors: InterceptorList\n\n constructor(options: BatchInterceptorOptions<InterceptorList>) {\n BatchInterceptor.symbol = Symbol(options.name)\n super(BatchInterceptor.symbol)\n this.interceptors = options.interceptors\n }\n\n protected setup() {\n const logger = this.logger.extend('setup')\n\n logger.info('applying all %d interceptors...', this.interceptors.length)\n\n for (const interceptor of this.interceptors) {\n logger.info('applying \"%s\" interceptor...', interceptor.constructor.name)\n interceptor.apply()\n\n logger.info('adding interceptor dispose subscription')\n this.subscriptions.push(() => interceptor.dispose())\n }\n }\n\n public on<EventName extends ExtractEventNames<Events>>(\n event: EventName,\n listener: Listener<Events[EventName]>\n ): this {\n // Instead of adding a listener to the batch interceptor,\n // propagate the listener to each of the individual interceptors.\n for (const interceptor of this.interceptors) {\n interceptor.on(event, listener)\n }\n\n return this\n }\n\n public once<EventName extends ExtractEventNames<Events>>(\n event: EventName,\n listener: Listener<Events[EventName]>\n ): this {\n for (const interceptor of this.interceptors) {\n interceptor.once(event, listener)\n }\n\n return this\n }\n\n public off<EventName extends ExtractEventNames<Events>>(\n event: EventName,\n listener: Listener<Events[EventName]>\n ): this {\n for (const interceptor of this.interceptors) {\n interceptor.off(event, listener)\n }\n\n return this\n }\n\n public removeAllListeners<EventName extends ExtractEventNames<Events>>(\n event?: EventName | undefined\n ): this {\n for (const interceptors of this.interceptors) {\n interceptors.removeAllListeners(event)\n }\n\n return this\n }\n}\n","/**\n * Removes query parameters and hashes from a given URL.\n */\nexport function getCleanUrl(url: URL, isAbsolute: boolean = true): string {\n return [isAbsolute && url.origin, url.pathname].filter(Boolean).join('')\n}\n"],"mappings":";;;;;;;;;AAsBA,IAAa,mBAAb,MAAa,yBAGH,YAAoB;CAK5B,YAAY,SAAmD;AAC7D,mBAAiB,SAAS,OAAO,QAAQ,KAAK;AAC9C,QAAM,iBAAiB,OAAO;AAC9B,OAAK,eAAe,QAAQ;;CAG9B,AAAU,QAAQ;EAChB,MAAM,SAAS,KAAK,OAAO,OAAO,QAAQ;AAE1C,SAAO,KAAK,mCAAmC,KAAK,aAAa,OAAO;AAExE,OAAK,MAAM,eAAe,KAAK,cAAc;AAC3C,UAAO,KAAK,kCAAgC,YAAY,YAAY,KAAK;AACzE,eAAY,OAAO;AAEnB,UAAO,KAAK,0CAA0C;AACtD,QAAK,cAAc,WAAW,YAAY,SAAS,CAAC;;;CAIxD,AAAO,GACL,OACA,UACM;AAGN,OAAK,MAAM,eAAe,KAAK,aAC7B,aAAY,GAAG,OAAO,SAAS;AAGjC,SAAO;;CAGT,AAAO,KACL,OACA,UACM;AACN,OAAK,MAAM,eAAe,KAAK,aAC7B,aAAY,KAAK,OAAO,SAAS;AAGnC,SAAO;;CAGT,AAAO,IACL,OACA,UACM;AACN,OAAK,MAAM,eAAe,KAAK,aAC7B,aAAY,IAAI,OAAO,SAAS;AAGlC,SAAO;;CAGT,AAAO,mBACL,OACM;AACN,OAAK,MAAM,gBAAgB,KAAK,aAC9B,cAAa,mBAAmB,MAAM;AAGxC,SAAO;;;;;;;;;ACzFX,SAAgB,YAAY,KAAU,aAAsB,MAAc;AACxE,QAAO,CAAC,cAAc,IAAI,QAAQ,IAAI,SAAS,CAAC,OAAO,QAAQ,CAAC,KAAK,GAAG"}
|