msw 2.2.3 → 2.3.0-ws.rc-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.
- package/cli/init.js +0 -0
- package/config/scripts/postinstall.js +0 -0
- package/lib/browser/index.d.mts +7 -6
- package/lib/browser/index.d.ts +7 -6
- package/lib/browser/index.js +32 -15
- package/lib/browser/index.js.map +1 -1
- package/lib/browser/index.mjs +32 -15
- package/lib/browser/index.mjs.map +1 -1
- package/lib/core/{GraphQLHandler-jOzqbxSK.d.ts → GraphQLHandler-Cbu12sb0.d.ts} +1 -1
- package/lib/core/{GraphQLHandler-AenIUdwE.d.mts → GraphQLHandler-QGQY_9Rc.d.mts} +1 -1
- package/lib/core/{HttpResponse-wcp03c7-.d.mts → HttpResponse-BWB1yDNM.d.mts} +2 -2
- package/lib/core/{HttpResponse-_514VQ9z.d.ts → HttpResponse-DeJBWGN5.d.ts} +2 -2
- package/lib/core/HttpResponse.d.mts +1 -1
- package/lib/core/HttpResponse.d.ts +1 -1
- package/lib/core/SetupApi.d.mts +15 -12
- package/lib/core/SetupApi.d.ts +15 -12
- package/lib/core/SetupApi.js +3 -1
- package/lib/core/SetupApi.js.map +1 -1
- package/lib/core/SetupApi.mjs +3 -1
- package/lib/core/SetupApi.mjs.map +1 -1
- package/lib/core/getResponse.d.mts +1 -1
- package/lib/core/getResponse.d.ts +1 -1
- package/lib/core/graphql.d.mts +2 -2
- package/lib/core/graphql.d.ts +2 -2
- package/lib/core/handlers/GraphQLHandler.d.mts +2 -2
- package/lib/core/handlers/GraphQLHandler.d.ts +2 -2
- package/lib/core/handlers/HttpHandler.d.mts +1 -1
- package/lib/core/handlers/HttpHandler.d.ts +1 -1
- package/lib/core/handlers/RequestHandler.d.mts +1 -1
- package/lib/core/handlers/RequestHandler.d.ts +1 -1
- package/lib/core/handlers/WebSocketHandler.d.mts +38 -0
- package/lib/core/handlers/WebSocketHandler.d.ts +38 -0
- package/lib/core/handlers/WebSocketHandler.js +65 -0
- package/lib/core/handlers/WebSocketHandler.js.map +1 -0
- package/lib/core/handlers/WebSocketHandler.mjs +47 -0
- package/lib/core/handlers/WebSocketHandler.mjs.map +1 -0
- package/lib/core/http.d.mts +1 -1
- package/lib/core/http.d.ts +1 -1
- package/lib/core/index.d.mts +5 -2
- package/lib/core/index.d.ts +5 -2
- package/lib/core/index.js +3 -1
- package/lib/core/index.js.map +1 -1
- package/lib/core/index.mjs +3 -1
- package/lib/core/index.mjs.map +1 -1
- package/lib/core/passthrough.d.mts +1 -1
- package/lib/core/passthrough.d.ts +1 -1
- package/lib/core/utils/HttpResponse/decorators.d.mts +1 -1
- package/lib/core/utils/HttpResponse/decorators.d.ts +1 -1
- package/lib/core/utils/executeHandlers.d.mts +1 -1
- package/lib/core/utils/executeHandlers.d.ts +1 -1
- package/lib/core/utils/executeHandlers.js +4 -0
- package/lib/core/utils/executeHandlers.js.map +1 -1
- package/lib/core/utils/executeHandlers.mjs +6 -0
- package/lib/core/utils/executeHandlers.mjs.map +1 -1
- package/lib/core/utils/handleRequest.d.mts +2 -2
- package/lib/core/utils/handleRequest.d.ts +2 -2
- package/lib/core/utils/handleRequest.js.map +1 -1
- package/lib/core/utils/handleRequest.mjs.map +1 -1
- package/lib/core/utils/handleWebSocketEvent.d.mts +10 -0
- package/lib/core/utils/handleWebSocketEvent.d.ts +10 -0
- package/lib/core/utils/handleWebSocketEvent.js +56 -0
- package/lib/core/utils/handleWebSocketEvent.js.map +1 -0
- package/lib/core/utils/handleWebSocketEvent.mjs +40 -0
- package/lib/core/utils/handleWebSocketEvent.mjs.map +1 -0
- package/lib/core/utils/internal/parseGraphQLRequest.d.mts +2 -2
- package/lib/core/utils/internal/parseGraphQLRequest.d.ts +2 -2
- package/lib/core/utils/internal/parseMultipartData.d.mts +1 -1
- package/lib/core/utils/internal/parseMultipartData.d.ts +1 -1
- package/lib/core/utils/internal/requestHandlerUtils.d.mts +1 -1
- package/lib/core/utils/internal/requestHandlerUtils.d.ts +1 -1
- package/lib/core/utils/matching/matchRequestUrl.d.mts +2 -1
- package/lib/core/utils/matching/matchRequestUrl.d.ts +2 -1
- package/lib/core/utils/matching/matchRequestUrl.js +4 -0
- package/lib/core/utils/matching/matchRequestUrl.js.map +1 -1
- package/lib/core/utils/matching/matchRequestUrl.mjs +4 -0
- package/lib/core/utils/matching/matchRequestUrl.mjs.map +1 -1
- package/lib/core/ws/WebSocketClientManager.d.mts +64 -0
- package/lib/core/ws/WebSocketClientManager.d.ts +64 -0
- package/lib/core/ws/WebSocketClientManager.js +123 -0
- package/lib/core/ws/WebSocketClientManager.js.map +1 -0
- package/lib/core/ws/WebSocketClientManager.mjs +103 -0
- package/lib/core/ws/WebSocketClientManager.mjs.map +1 -0
- package/lib/core/ws/webSocketInterceptor.d.mts +5 -0
- package/lib/core/ws/webSocketInterceptor.d.ts +5 -0
- package/lib/core/ws/webSocketInterceptor.js +26 -0
- package/lib/core/ws/webSocketInterceptor.js.map +1 -0
- package/lib/core/ws/webSocketInterceptor.mjs +6 -0
- package/lib/core/ws/webSocketInterceptor.mjs.map +1 -0
- package/lib/core/ws/ws.d.mts +44 -0
- package/lib/core/ws/ws.d.ts +44 -0
- package/lib/core/ws/ws.js +82 -0
- package/lib/core/ws/ws.js.map +1 -0
- package/lib/core/ws/ws.mjs +65 -0
- package/lib/core/ws/ws.mjs.map +1 -0
- package/lib/iife/index.js +703 -17
- package/lib/iife/index.js.map +1 -1
- package/lib/mockServiceWorker.js +1 -1
- package/lib/native/index.d.mts +6 -5
- package/lib/native/index.d.ts +6 -5
- package/lib/native/index.js +7 -0
- package/lib/native/index.js.map +1 -1
- package/lib/native/index.mjs +7 -0
- package/lib/native/index.mjs.map +1 -1
- package/lib/node/index.d.mts +8 -7
- package/lib/node/index.d.ts +8 -7
- package/lib/node/index.js +7 -0
- package/lib/node/index.js.map +1 -1
- package/lib/node/index.mjs +7 -0
- package/lib/node/index.mjs.map +1 -1
- package/package.json +27 -22
- package/src/browser/setupWorker/glossary.ts +10 -10
- package/src/browser/setupWorker/setupWorker.ts +17 -3
- package/src/core/SetupApi.ts +28 -20
- package/src/core/handlers/WebSocketHandler.ts +89 -0
- package/src/core/index.ts +3 -0
- package/src/core/utils/executeHandlers.ts +6 -2
- package/src/core/utils/handleRequest.ts +1 -2
- package/src/core/utils/handleWebSocketEvent.ts +49 -0
- package/src/core/utils/matching/matchRequestUrl.test.ts +44 -0
- package/src/core/utils/matching/matchRequestUrl.ts +4 -0
- package/src/core/ws/WebSocketClientManager.test.ts +159 -0
- package/src/core/ws/WebSocketClientManager.ts +170 -0
- package/src/core/ws/webSocketInterceptor.ts +3 -0
- package/src/core/ws/ws.test.ts +23 -0
- package/src/core/ws/ws.ts +108 -0
- package/src/node/SetupServerApi.ts +8 -7
- package/src/node/SetupServerCommonApi.ts +10 -1
- package/src/node/glossary.ts +5 -7
- package/src/node/setupServer.ts +2 -1
package/cli/init.js
CHANGED
|
File without changes
|
|
File without changes
|
package/lib/browser/index.d.mts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { SharedOptions, LifeCycleEventEmitter, LifeCycleEventsMap } from '~/core/sharedOptions';
|
|
2
|
-
import { RequestHandler
|
|
2
|
+
import { RequestHandler } from '~/core/handlers/RequestHandler';
|
|
3
|
+
import { WebSocketHandler } from '~/core/handlers/WebSocketHandler';
|
|
3
4
|
import { SetupApi } from '~/core/SetupApi';
|
|
4
5
|
|
|
5
6
|
type FindWorker = (scriptUrl: string, mockServiceWorkerUrl: string) => boolean;
|
|
@@ -54,7 +55,7 @@ interface SetupWorker {
|
|
|
54
55
|
*
|
|
55
56
|
* @see {@link https://mswjs.io/docs/api/setup-worker/use `worker.use()` API reference}
|
|
56
57
|
*/
|
|
57
|
-
use: (...handlers: RequestHandler
|
|
58
|
+
use: (...handlers: Array<RequestHandler | WebSocketHandler>) => void;
|
|
58
59
|
/**
|
|
59
60
|
* Marks all request handlers that respond using `res.once()` as unused.
|
|
60
61
|
*
|
|
@@ -67,13 +68,13 @@ interface SetupWorker {
|
|
|
67
68
|
*
|
|
68
69
|
* @see {@link https://mswjs.io/docs/api/setup-worker/reset-handlers `worker.resetHandlers()` API reference}
|
|
69
70
|
*/
|
|
70
|
-
resetHandlers: (...nextHandlers: RequestHandler
|
|
71
|
+
resetHandlers: (...nextHandlers: Array<RequestHandler | WebSocketHandler>) => void;
|
|
71
72
|
/**
|
|
72
73
|
* Returns a readonly list of currently active request handlers.
|
|
73
74
|
*
|
|
74
75
|
* @see {@link https://mswjs.io/docs/api/setup-worker/list-handlers `worker.listHandlers()` API reference}
|
|
75
76
|
*/
|
|
76
|
-
listHandlers(): ReadonlyArray<RequestHandler
|
|
77
|
+
listHandlers(): ReadonlyArray<RequestHandler | WebSocketHandler>;
|
|
77
78
|
/**
|
|
78
79
|
* Life-cycle events.
|
|
79
80
|
* Life-cycle events allow you to subscribe to the internal library events occurring during the request/response handling.
|
|
@@ -88,7 +89,7 @@ declare class SetupWorkerApi extends SetupApi<LifeCycleEventsMap> implements Set
|
|
|
88
89
|
private startHandler;
|
|
89
90
|
private stopHandler;
|
|
90
91
|
private listeners;
|
|
91
|
-
constructor(...handlers: Array<RequestHandler>);
|
|
92
|
+
constructor(...handlers: Array<RequestHandler | WebSocketHandler>);
|
|
92
93
|
private createWorkerContext;
|
|
93
94
|
start(options?: StartOptions): StartReturnType;
|
|
94
95
|
stop(): void;
|
|
@@ -99,6 +100,6 @@ declare class SetupWorkerApi extends SetupApi<LifeCycleEventsMap> implements Set
|
|
|
99
100
|
*
|
|
100
101
|
* @see {@link https://mswjs.io/docs/api/setup-worker `setupWorker()` API reference}
|
|
101
102
|
*/
|
|
102
|
-
declare function setupWorker(...handlers: Array<RequestHandler>): SetupWorker;
|
|
103
|
+
declare function setupWorker(...handlers: Array<RequestHandler | WebSocketHandler>): SetupWorker;
|
|
103
104
|
|
|
104
105
|
export { type SetupWorker, SetupWorkerApi, type StartOptions, setupWorker };
|
package/lib/browser/index.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { SharedOptions, LifeCycleEventEmitter, LifeCycleEventsMap } from "../core/sharedOptions";
|
|
2
|
-
import { RequestHandler
|
|
2
|
+
import { RequestHandler } from "../core/handlers/RequestHandler";
|
|
3
|
+
import { WebSocketHandler } from "../core/handlers/WebSocketHandler";
|
|
3
4
|
import { SetupApi } from "../core/SetupApi";
|
|
4
5
|
|
|
5
6
|
type FindWorker = (scriptUrl: string, mockServiceWorkerUrl: string) => boolean;
|
|
@@ -54,7 +55,7 @@ interface SetupWorker {
|
|
|
54
55
|
*
|
|
55
56
|
* @see {@link https://mswjs.io/docs/api/setup-worker/use `worker.use()` API reference}
|
|
56
57
|
*/
|
|
57
|
-
use: (...handlers: RequestHandler
|
|
58
|
+
use: (...handlers: Array<RequestHandler | WebSocketHandler>) => void;
|
|
58
59
|
/**
|
|
59
60
|
* Marks all request handlers that respond using `res.once()` as unused.
|
|
60
61
|
*
|
|
@@ -67,13 +68,13 @@ interface SetupWorker {
|
|
|
67
68
|
*
|
|
68
69
|
* @see {@link https://mswjs.io/docs/api/setup-worker/reset-handlers `worker.resetHandlers()` API reference}
|
|
69
70
|
*/
|
|
70
|
-
resetHandlers: (...nextHandlers: RequestHandler
|
|
71
|
+
resetHandlers: (...nextHandlers: Array<RequestHandler | WebSocketHandler>) => void;
|
|
71
72
|
/**
|
|
72
73
|
* Returns a readonly list of currently active request handlers.
|
|
73
74
|
*
|
|
74
75
|
* @see {@link https://mswjs.io/docs/api/setup-worker/list-handlers `worker.listHandlers()` API reference}
|
|
75
76
|
*/
|
|
76
|
-
listHandlers(): ReadonlyArray<RequestHandler
|
|
77
|
+
listHandlers(): ReadonlyArray<RequestHandler | WebSocketHandler>;
|
|
77
78
|
/**
|
|
78
79
|
* Life-cycle events.
|
|
79
80
|
* Life-cycle events allow you to subscribe to the internal library events occurring during the request/response handling.
|
|
@@ -88,7 +89,7 @@ declare class SetupWorkerApi extends SetupApi<LifeCycleEventsMap> implements Set
|
|
|
88
89
|
private startHandler;
|
|
89
90
|
private stopHandler;
|
|
90
91
|
private listeners;
|
|
91
|
-
constructor(...handlers: Array<RequestHandler>);
|
|
92
|
+
constructor(...handlers: Array<RequestHandler | WebSocketHandler>);
|
|
92
93
|
private createWorkerContext;
|
|
93
94
|
start(options?: StartOptions): StartReturnType;
|
|
94
95
|
stop(): void;
|
|
@@ -99,6 +100,6 @@ declare class SetupWorkerApi extends SetupApi<LifeCycleEventsMap> implements Set
|
|
|
99
100
|
*
|
|
100
101
|
* @see {@link https://mswjs.io/docs/api/setup-worker `setupWorker()` API reference}
|
|
101
102
|
*/
|
|
102
|
-
declare function setupWorker(...handlers: Array<RequestHandler>): SetupWorker;
|
|
103
|
+
declare function setupWorker(...handlers: Array<RequestHandler | WebSocketHandler>): SetupWorker;
|
|
103
104
|
|
|
104
105
|
export { type SetupWorker, SetupWorkerApi, type StartOptions, setupWorker };
|
package/lib/browser/index.js
CHANGED
|
@@ -393,7 +393,7 @@ async function requestIntegrityCheck(context, serviceWorker) {
|
|
|
393
393
|
return serviceWorker;
|
|
394
394
|
}
|
|
395
395
|
|
|
396
|
-
// node_modules/.pnpm/@mswjs+interceptors@0.
|
|
396
|
+
// node_modules/.pnpm/@mswjs+interceptors@0.26.8/node_modules/@mswjs/interceptors/lib/browser/chunk-UJZOJSMP.mjs
|
|
397
397
|
var encoder = new TextEncoder();
|
|
398
398
|
function encodeBuffer(text) {
|
|
399
399
|
return encoder.encode(text);
|
|
@@ -419,6 +419,9 @@ function isResponseWithoutBody(status) {
|
|
|
419
419
|
return RESPONSE_STATUS_CODES_WITHOUT_BODY.has(status);
|
|
420
420
|
}
|
|
421
421
|
|
|
422
|
+
// node_modules/.pnpm/@mswjs+interceptors@0.26.8/node_modules/@mswjs/interceptors/lib/browser/chunk-HAGW22AN.mjs
|
|
423
|
+
var IS_PATCHED_MODULE = Symbol("isPatchedModule");
|
|
424
|
+
|
|
422
425
|
// node_modules/.pnpm/@open-draft+logger@0.3.0/node_modules/@open-draft/logger/lib/index.mjs
|
|
423
426
|
var __defProp2 = Object.defineProperty;
|
|
424
427
|
var __export2 = (target, all) => {
|
|
@@ -856,8 +859,7 @@ var _Emitter = class {
|
|
|
856
859
|
var Emitter = _Emitter;
|
|
857
860
|
Emitter.defaultMaxListeners = 10;
|
|
858
861
|
|
|
859
|
-
// node_modules/.pnpm/@mswjs+interceptors@0.
|
|
860
|
-
var IS_PATCHED_MODULE = Symbol("isPatchedModule");
|
|
862
|
+
// node_modules/.pnpm/@mswjs+interceptors@0.26.8/node_modules/@mswjs/interceptors/lib/browser/chunk-SGO3INLV.mjs
|
|
861
863
|
function getGlobalSymbol(symbol) {
|
|
862
864
|
return (
|
|
863
865
|
// @ts-ignore https://github.com/Microsoft/TypeScript/issues/24587
|
|
@@ -1001,7 +1003,7 @@ var Interceptor = class {
|
|
|
1001
1003
|
}
|
|
1002
1004
|
};
|
|
1003
1005
|
|
|
1004
|
-
// node_modules/.pnpm/@mswjs+interceptors@0.
|
|
1006
|
+
// node_modules/.pnpm/@mswjs+interceptors@0.26.8/node_modules/@mswjs/interceptors/lib/browser/index.mjs
|
|
1005
1007
|
var BatchInterceptor = class extends Interceptor {
|
|
1006
1008
|
constructor(options) {
|
|
1007
1009
|
BatchInterceptor.symbol = Symbol(options.name);
|
|
@@ -1292,14 +1294,7 @@ var DeferredPromise = class extends Promise {
|
|
|
1292
1294
|
}
|
|
1293
1295
|
};
|
|
1294
1296
|
|
|
1295
|
-
// node_modules/.pnpm/@mswjs+interceptors@0.
|
|
1296
|
-
function uuidv4() {
|
|
1297
|
-
return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function(c) {
|
|
1298
|
-
const r = Math.random() * 16 | 0;
|
|
1299
|
-
const v = c == "x" ? r : r & 3 | 8;
|
|
1300
|
-
return v.toString(16);
|
|
1301
|
-
});
|
|
1302
|
-
}
|
|
1297
|
+
// node_modules/.pnpm/@mswjs+interceptors@0.26.8/node_modules/@mswjs/interceptors/lib/browser/chunk-OUWBQF3Z.mjs
|
|
1303
1298
|
var RequestController = class {
|
|
1304
1299
|
constructor(request) {
|
|
1305
1300
|
this.request = request;
|
|
@@ -1337,7 +1332,16 @@ async function emitAsync(emitter, eventName, ...data) {
|
|
|
1337
1332
|
}
|
|
1338
1333
|
}
|
|
1339
1334
|
|
|
1340
|
-
// node_modules/.pnpm/@mswjs+interceptors@0.
|
|
1335
|
+
// node_modules/.pnpm/@mswjs+interceptors@0.26.8/node_modules/@mswjs/interceptors/lib/browser/chunk-CEKC26XE.mjs
|
|
1336
|
+
function uuidv4() {
|
|
1337
|
+
return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function(c) {
|
|
1338
|
+
const r = Math.random() * 16 | 0;
|
|
1339
|
+
const v = c == "x" ? r : r & 3 | 8;
|
|
1340
|
+
return v.toString(16);
|
|
1341
|
+
});
|
|
1342
|
+
}
|
|
1343
|
+
|
|
1344
|
+
// node_modules/.pnpm/@mswjs+interceptors@0.26.8/node_modules/@mswjs/interceptors/lib/browser/chunk-65OQZE6W.mjs
|
|
1341
1345
|
function isPropertyAccessible(obj, key) {
|
|
1342
1346
|
try {
|
|
1343
1347
|
obj[key];
|
|
@@ -1484,7 +1488,7 @@ function createNetworkError(cause) {
|
|
|
1484
1488
|
});
|
|
1485
1489
|
}
|
|
1486
1490
|
|
|
1487
|
-
// node_modules/.pnpm/@mswjs+interceptors@0.
|
|
1491
|
+
// node_modules/.pnpm/@mswjs+interceptors@0.26.8/node_modules/@mswjs/interceptors/lib/browser/chunk-6ZIL5FW4.mjs
|
|
1488
1492
|
function concatArrayBuffer(left, right) {
|
|
1489
1493
|
const result = new Uint8Array(left.byteLength + right.byteLength);
|
|
1490
1494
|
result.set(left, 0);
|
|
@@ -2083,7 +2087,11 @@ function createXMLHttpRequestProxy({
|
|
|
2083
2087
|
const XMLHttpRequestProxy = new Proxy(globalThis.XMLHttpRequest, {
|
|
2084
2088
|
construct(target, args, newTarget) {
|
|
2085
2089
|
logger.info("constructed new XMLHttpRequest");
|
|
2086
|
-
const originalRequest = Reflect.construct(
|
|
2090
|
+
const originalRequest = Reflect.construct(
|
|
2091
|
+
target,
|
|
2092
|
+
args,
|
|
2093
|
+
newTarget
|
|
2094
|
+
);
|
|
2087
2095
|
const prototypeDescriptors = Object.getOwnPropertyDescriptors(
|
|
2088
2096
|
target.prototype
|
|
2089
2097
|
);
|
|
@@ -2309,6 +2317,8 @@ function supportsReadableStreamTransfer() {
|
|
|
2309
2317
|
}
|
|
2310
2318
|
|
|
2311
2319
|
// src/browser/setupWorker/setupWorker.ts
|
|
2320
|
+
var import_webSocketInterceptor = require("../core/ws/webSocketInterceptor.js");
|
|
2321
|
+
var import_handleWebSocketEvent = require("../core/utils/handleWebSocketEvent.js");
|
|
2312
2322
|
var SetupWorkerApi = class extends import_SetupApi.SetupApi {
|
|
2313
2323
|
context;
|
|
2314
2324
|
startHandler = null;
|
|
@@ -2424,6 +2434,13 @@ var SetupWorkerApi = class extends import_SetupApi.SetupApi {
|
|
|
2424
2434
|
DEFAULT_START_OPTIONS,
|
|
2425
2435
|
options
|
|
2426
2436
|
);
|
|
2437
|
+
(0, import_handleWebSocketEvent.handleWebSocketEvent)(() => {
|
|
2438
|
+
return this.handlersController.currentHandlers();
|
|
2439
|
+
});
|
|
2440
|
+
import_webSocketInterceptor.webSocketInterceptor.apply();
|
|
2441
|
+
this.subscriptions.push(() => {
|
|
2442
|
+
import_webSocketInterceptor.webSocketInterceptor.dispose();
|
|
2443
|
+
});
|
|
2427
2444
|
return await this.startHandler(this.context.startOptions, options);
|
|
2428
2445
|
}
|
|
2429
2446
|
stop() {
|