msw 0.48.2 → 0.49.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.
@@ -2,12 +2,12 @@ import { StrictEventEmitter, EventMapType } from 'strict-event-emitter';
2
2
  import { FlatHeadersObject, Headers } from 'headers-polyfill';
3
3
  import { RequestInit as RequestInit$1, IsomorphicRequest } from '@mswjs/interceptors';
4
4
 
5
- declare type HeadersObject<KeyType extends string = string> = Record<KeyType, string | string[]>;
5
+ type HeadersObject<KeyType extends string = string> = Record<KeyType, string | string[]>;
6
6
  /**
7
7
  * @see https://developer.mozilla.org/en-US/docs/Glossary/Forbidden_header_name
8
8
  */
9
- declare type ForbiddenHeaderNames = 'cookie' | 'cookie2' | 'set-cookie' | 'set-cookie2';
10
- declare type ForbiddenHeaderError<HeaderName extends string> = `SafeResponseHeader: the '${HeaderName}' header cannot be set on the response. Please use the 'ctx.cookie()' function instead.`;
9
+ type ForbiddenHeaderNames = 'cookie' | 'cookie2' | 'set-cookie' | 'set-cookie2';
10
+ type ForbiddenHeaderError<HeaderName extends string> = `SafeResponseHeader: the '${HeaderName}' header cannot be set on the response. Please use the 'ctx.cookie()' function instead.`;
11
11
  /**
12
12
  * Sets one or multiple response headers.
13
13
  * @example
@@ -20,7 +20,7 @@ declare type ForbiddenHeaderError<HeaderName extends string> = `SafeResponseHead
20
20
  */
21
21
  declare function set<N extends string | HeadersObject>(...args: N extends string ? Lowercase<N> extends ForbiddenHeaderNames ? [ForbiddenHeaderError<N>] : [N, string] : N extends HeadersObject<infer CookieName> ? Lowercase<CookieName> extends ForbiddenHeaderNames ? [ForbiddenHeaderError<CookieName>] : [N] : [N]): ResponseTransformer;
22
22
 
23
- declare type DelayMode = 'real' | 'infinite';
23
+ type DelayMode = 'real' | 'infinite';
24
24
  /**
25
25
  * Delays the response by the given duration (ms).
26
26
  * @example
@@ -31,12 +31,12 @@ declare type DelayMode = 'real' | 'infinite';
31
31
  */
32
32
  declare const delay: (durationOrMode?: DelayMode | number) => ResponseTransformer;
33
33
 
34
- declare type RequestCache = 'default' | 'no-store' | 'reload' | 'no-cache' | 'force-cache' | 'only-if-cached';
35
- declare type RequestMode = 'navigate' | 'same-origin' | 'no-cors' | 'cors';
36
- declare type RequestRedirect = 'follow' | 'error' | 'manual';
37
- declare type RequestDestination = '' | 'audio' | 'audioworklet' | 'document' | 'embed' | 'font' | 'frame' | 'iframe' | 'image' | 'manifest' | 'object' | 'paintworklet' | 'report' | 'script' | 'sharedworker' | 'style' | 'track' | 'video' | 'xslt' | 'worker';
38
- declare type RequestPriority = 'high' | 'low' | 'auto';
39
- declare type RequestReferrerPolicy = '' | 'no-referrer' | 'no-referrer-when-downgrade' | 'origin' | 'origin-when-cross-origin' | 'same-origin' | 'strict-origin' | 'strict-origin-when-cross-origin' | 'unsafe-url';
34
+ type RequestCache = 'default' | 'no-store' | 'reload' | 'no-cache' | 'force-cache' | 'only-if-cached';
35
+ type RequestMode = 'navigate' | 'same-origin' | 'no-cors' | 'cors';
36
+ type RequestRedirect = 'follow' | 'error' | 'manual';
37
+ type RequestDestination = '' | 'audio' | 'audioworklet' | 'document' | 'embed' | 'font' | 'frame' | 'iframe' | 'image' | 'manifest' | 'object' | 'paintworklet' | 'report' | 'script' | 'sharedworker' | 'style' | 'track' | 'video' | 'xslt' | 'worker';
38
+ type RequestPriority = 'high' | 'low' | 'auto';
39
+ type RequestReferrerPolicy = '' | 'no-referrer' | 'no-referrer-when-downgrade' | 'origin' | 'origin-when-cross-origin' | 'same-origin' | 'strict-origin' | 'strict-origin-when-cross-origin' | 'unsafe-url';
40
40
  interface MockedRequestInit extends RequestInit$1 {
41
41
  id?: string;
42
42
  cache?: RequestCache;
@@ -99,8 +99,8 @@ interface UnhandledRequestPrint {
99
99
  warning(): void;
100
100
  error(): void;
101
101
  }
102
- declare type UnhandledRequestCallback = (request: MockedRequest, print: UnhandledRequestPrint) => void;
103
- declare type UnhandledRequestStrategy = 'bypass' | 'warn' | 'error' | UnhandledRequestCallback;
102
+ type UnhandledRequestCallback = (request: MockedRequest, print: UnhandledRequestPrint) => void;
103
+ type UnhandledRequestStrategy = 'bypass' | 'warn' | 'error' | UnhandledRequestCallback;
104
104
 
105
105
  interface SharedOptions {
106
106
  /**
@@ -122,10 +122,10 @@ interface LifeCycleEventsMap<ResponseType> {
122
122
  'response:bypass': (response: ResponseType, requestId: string) => void;
123
123
  unhandledException: (error: Error, request: MockedRequest) => void;
124
124
  }
125
- declare type LifeCycleEventEmitter<ResponseType extends Record<string | symbol, any>> = Pick<StrictEventEmitter<ResponseType>, 'on' | 'removeListener' | 'removeAllListeners'>;
125
+ type LifeCycleEventEmitter<ResponseType extends Record<string | symbol, any>> = Pick<StrictEventEmitter<ResponseType>, 'on' | 'removeListener' | 'removeAllListeners'>;
126
126
 
127
- declare type WorkerLifecycleEventsMap = LifeCycleEventsMap<Response>;
128
- declare type FindWorker = (scriptUrl: string, mockServiceWorkerUrl: string) => boolean;
127
+ type WorkerLifecycleEventsMap = LifeCycleEventsMap<Response>;
128
+ type FindWorker = (scriptUrl: string, mockServiceWorkerUrl: string) => boolean;
129
129
  interface StartOptions extends SharedOptions {
130
130
  /**
131
131
  * Service Worker registration options.
@@ -163,8 +163,8 @@ interface SerializedResponse<BodyType extends DefaultBodyType = any> {
163
163
  body: BodyType;
164
164
  delay?: number;
165
165
  }
166
- declare type StartReturnType = Promise<ServiceWorkerRegistration | undefined>;
167
- declare type StopHandler = () => void;
166
+ type StartReturnType = Promise<ServiceWorkerRegistration | undefined>;
167
+ type StopHandler = () => void;
168
168
  interface SetupWorkerApi {
169
169
  /**
170
170
  * Registers and activates the mock Service Worker.
@@ -206,26 +206,26 @@ interface SetupWorkerApi {
206
206
  events: LifeCycleEventEmitter<WorkerLifecycleEventsMap>;
207
207
  }
208
208
 
209
- declare type DefaultContext = {
209
+ type DefaultContext = {
210
210
  status: typeof status;
211
211
  set: typeof set;
212
212
  delay: typeof delay;
213
213
  fetch: typeof fetch;
214
214
  };
215
215
  declare const defaultContext: DefaultContext;
216
- declare type DefaultRequestMultipartBody = Record<string, string | File | (string | File)[]>;
217
- declare type DefaultBodyType = Record<string, any> | DefaultRequestMultipartBody | string | number | boolean | null | undefined;
216
+ type DefaultRequestMultipartBody = Record<string, string | File | (string | File)[]>;
217
+ type DefaultBodyType = Record<string, any> | DefaultRequestMultipartBody | string | number | boolean | null | undefined;
218
218
  interface RequestHandlerDefaultInfo {
219
219
  header: string;
220
220
  }
221
221
  interface RequestHandlerInternalInfo {
222
222
  callFrame?: string;
223
223
  }
224
- declare type ContextMap = Record<string, (...args: any[]) => any>;
225
- declare type ResponseResolverReturnType<ReturnType> = ReturnType | undefined | void;
226
- declare type MaybeAsyncResponseResolverReturnType<ReturnType> = MaybePromise<ResponseResolverReturnType<ReturnType>>;
227
- declare type AsyncResponseResolverReturnType<ReturnType> = MaybeAsyncResponseResolverReturnType<ReturnType> | Generator<MaybeAsyncResponseResolverReturnType<ReturnType>, MaybeAsyncResponseResolverReturnType<ReturnType>, MaybeAsyncResponseResolverReturnType<ReturnType>>;
228
- declare type ResponseResolver<RequestType = MockedRequest, ContextType = typeof defaultContext, BodyType extends DefaultBodyType = any> = (req: RequestType, res: ResponseComposition<BodyType>, context: ContextType) => AsyncResponseResolverReturnType<MockedResponse<BodyType>>;
224
+ type ContextMap = Record<string, (...args: any[]) => any>;
225
+ type ResponseResolverReturnType<ReturnType> = ReturnType | undefined | void;
226
+ type MaybeAsyncResponseResolverReturnType<ReturnType> = MaybePromise<ResponseResolverReturnType<ReturnType>>;
227
+ type AsyncResponseResolverReturnType<ReturnType> = MaybeAsyncResponseResolverReturnType<ReturnType> | Generator<MaybeAsyncResponseResolverReturnType<ReturnType>, MaybeAsyncResponseResolverReturnType<ReturnType>, MaybeAsyncResponseResolverReturnType<ReturnType>>;
228
+ type ResponseResolver<RequestType = MockedRequest, ContextType = typeof defaultContext, BodyType extends DefaultBodyType = any> = (req: RequestType, res: ResponseComposition<BodyType>, context: ContextType) => AsyncResponseResolverReturnType<MockedResponse<BodyType>>;
229
229
  interface RequestHandlerOptions<HandlerInfo> {
230
230
  info: HandlerInfo;
231
231
  resolver: ResponseResolver<any, any>;
@@ -277,7 +277,7 @@ declare abstract class RequestHandler<HandlerInfo extends RequestHandlerDefaultI
277
277
  private createExecutionResult;
278
278
  }
279
279
 
280
- declare type MaybePromise<ValueType = any> = ValueType | Promise<ValueType>;
280
+ type MaybePromise<ValueType = any> = ValueType | Promise<ValueType>;
281
281
  /**
282
282
  * Internal representation of a mocked response instance.
283
283
  */
@@ -290,9 +290,9 @@ interface MockedResponse<BodyType extends DefaultBodyType = any> {
290
290
  passthrough: boolean;
291
291
  delay?: number;
292
292
  }
293
- declare type ResponseTransformer<BodyType extends TransformerBodyType = any, TransformerBodyType extends DefaultBodyType = any> = (res: MockedResponse<TransformerBodyType>) => MaybePromise<MockedResponse<BodyType>>;
294
- declare type ResponseFunction<BodyType extends DefaultBodyType = any> = (...transformers: ResponseTransformer<BodyType>[]) => MaybePromise<MockedResponse<BodyType>>;
295
- declare type ResponseComposition<BodyType extends DefaultBodyType = any> = ResponseFunction<BodyType> & {
293
+ type ResponseTransformer<BodyType extends TransformerBodyType = any, TransformerBodyType extends DefaultBodyType = any> = (res: MockedResponse<TransformerBodyType>) => MaybePromise<MockedResponse<BodyType>>;
294
+ type ResponseFunction<BodyType extends DefaultBodyType = any> = (...transformers: ResponseTransformer<BodyType>[]) => MaybePromise<MockedResponse<BodyType>>;
295
+ type ResponseComposition<BodyType extends DefaultBodyType = any> = ResponseFunction<BodyType> & {
296
296
  /**
297
297
  * Respond using a given mocked response to the first captured request.
298
298
  * Does not affect any subsequent captured requests.
@@ -301,7 +301,7 @@ declare type ResponseComposition<BodyType extends DefaultBodyType = any> = Respo
301
301
  networkError: (message: string) => void;
302
302
  };
303
303
  declare const defaultResponse: Omit<MockedResponse, 'headers'>;
304
- declare type ResponseCompositionOptions<BodyType> = {
304
+ type ResponseCompositionOptions<BodyType> = {
305
305
  defaultTransformers?: ResponseTransformer<BodyType>[];
306
306
  mockedResponseOverrides?: Partial<MockedResponse>;
307
307
  };
@@ -329,7 +329,7 @@ declare abstract class SetupApi<EventsMap extends EventMapType> {
329
329
  protected readonly emitter: StrictEventEmitter<EventsMap>;
330
330
  protected readonly publicEmitter: StrictEventEmitter<EventsMap>;
331
331
  readonly events: LifeCycleEventEmitter<EventsMap>;
332
- constructor(initialHandlers: Array<RequestHandler>);
332
+ constructor(...initialHandlers: Array<RequestHandler>);
333
333
  private validateHandlers;
334
334
  protected dispose(): void;
335
335
  use(...runtimeHandlers: Array<RequestHandler>): void;
@@ -1,13 +1,13 @@
1
1
  import { IsomorphicResponse, BatchInterceptor, Interceptor, HttpRequestEventMap } from '@mswjs/interceptors';
2
- import { J as LifeCycleEventsMap, S as SetupApi, b as RequestHandler, n as SharedOptions } from './SetupApi-75fbec12.js';
2
+ import { J as LifeCycleEventsMap, S as SetupApi, b as RequestHandler, n as SharedOptions } from './SetupApi-0d3126ba.js';
3
3
 
4
- declare type ServerLifecycleEventsMap = LifeCycleEventsMap<IsomorphicResponse>;
4
+ type ServerLifecycleEventsMap = LifeCycleEventsMap<IsomorphicResponse>;
5
5
  declare class SetupServerApi extends SetupApi<ServerLifecycleEventsMap> {
6
6
  protected readonly interceptor: BatchInterceptor<Array<Interceptor<HttpRequestEventMap>>, HttpRequestEventMap>;
7
7
  private resolvedOptions;
8
8
  constructor(interceptors: Array<{
9
9
  new (): Interceptor<HttpRequestEventMap>;
10
- }>, handlers: Array<RequestHandler>);
10
+ }>, ...handlers: Array<RequestHandler>);
11
11
  /**
12
12
  * Subscribe to all requests that are using the interceptor object
13
13
  */
@@ -1,8 +1,8 @@
1
1
  import { PartialDeep } from 'type-fest';
2
2
  import { IsomorphicResponse } from '@mswjs/interceptors';
3
- import { n as SharedOptions, b as RequestHandler, k as RequestHandlerDefaultInfo, M as MockedRequest, g as DefaultBodyType, L as LifeCycleEventEmitter, J as LifeCycleEventsMap } from './SetupApi-75fbec12.js';
3
+ import { n as SharedOptions, b as RequestHandler, k as RequestHandlerDefaultInfo, M as MockedRequest, g as DefaultBodyType, L as LifeCycleEventEmitter, J as LifeCycleEventsMap } from './SetupApi-0d3126ba.js';
4
4
 
5
- declare type ServerLifecycleEventsMap = LifeCycleEventsMap<IsomorphicResponse>;
5
+ type ServerLifecycleEventsMap = LifeCycleEventsMap<IsomorphicResponse>;
6
6
  interface SetupServerApi {
7
7
  /**
8
8
  * Starts requests interception based on the previously provided request handlers.
package/lib/iife/index.js CHANGED
@@ -13111,8 +13111,8 @@ If this message still persists after updating, please report an issue: https://g
13111
13111
 
13112
13112
  // src/SetupApi.ts
13113
13113
  var SetupApi = class {
13114
- constructor(initialHandlers) {
13115
- this.validateHandlers(initialHandlers);
13114
+ constructor(...initialHandlers) {
13115
+ this.validateHandlers(...initialHandlers);
13116
13116
  this.initialHandlers = toReadonlyArray(initialHandlers);
13117
13117
  this.currentHandlers = [...initialHandlers];
13118
13118
  this.emitter = new import_strict_event_emitter.StrictEventEmitter();
@@ -13120,7 +13120,7 @@ If this message still persists after updating, please report an issue: https://g
13120
13120
  pipeEvents(this.emitter, this.publicEmitter);
13121
13121
  this.events = this.createLifeCycleEvents();
13122
13122
  }
13123
- validateHandlers(handlers) {
13123
+ validateHandlers(...handlers) {
13124
13124
  for (const handler of handlers) {
13125
13125
  (0, import_outvariant3.invariant)(!Array.isArray(handler), devUtils.formatMessage('Failed to construct "%s" given an Array of request handlers. Make sure you spread the request handlers when calling the respective setup function.'), this.constructor.name);
13126
13126
  }
@@ -13160,8 +13160,8 @@ If this message still persists after updating, please report an issue: https://g
13160
13160
 
13161
13161
  // src/setupWorker/setupWorker.ts
13162
13162
  var SetupWorkerApi = class extends SetupApi {
13163
- constructor(handlers) {
13164
- super(handlers);
13163
+ constructor(...handlers) {
13164
+ super(...handlers);
13165
13165
  this.startHandler = null;
13166
13166
  this.stopHandler = null;
13167
13167
  (0, import_outvariant4.invariant)(!(0, import_is_node_process3.isNodeProcess)(), devUtils.formatMessage("Failed to execute `setupWorker` in a non-browser environment. Consider using `setupServer` for Node.js environment instead."));
@@ -13265,7 +13265,7 @@ If this message still persists after updating, please report an issue: https://g
13265
13265
  }
13266
13266
  };
13267
13267
  function setupWorker(...handlers) {
13268
- return new SetupWorkerApi(handlers);
13268
+ return new SetupWorkerApi(...handlers);
13269
13269
  }
13270
13270
 
13271
13271
  // src/rest.ts