msw 2.8.6 → 2.9.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/README.md +1 -1
- package/cli/init.js +1 -1
- package/lib/browser/index.js +14 -18
- package/lib/browser/index.js.map +1 -1
- package/lib/browser/index.mjs +14 -18
- package/lib/browser/index.mjs.map +1 -1
- package/lib/core/handlers/HttpHandler.js +1 -1
- package/lib/core/handlers/HttpHandler.js.map +1 -1
- package/lib/core/handlers/HttpHandler.mjs +1 -1
- package/lib/core/handlers/HttpHandler.mjs.map +1 -1
- package/lib/core/utils/request/onUnhandledRequest.js +1 -1
- package/lib/core/utils/request/onUnhandledRequest.js.map +1 -1
- package/lib/core/utils/request/onUnhandledRequest.mjs +1 -1
- package/lib/core/utils/request/onUnhandledRequest.mjs.map +1 -1
- package/lib/iife/index.js +16 -20
- package/lib/iife/index.js.map +1 -1
- package/lib/mockServiceWorker.js +91 -54
- package/package.json +3 -2
- package/src/browser/setupWorker/glossary.ts +7 -7
- package/src/browser/setupWorker/setupWorker.ts +0 -1
- package/src/browser/setupWorker/start/createRequestListener.ts +4 -5
- package/src/browser/setupWorker/start/createResponseListener.ts +8 -12
- package/src/browser/utils/{parseWorkerRequest.ts → deserializeRequest.ts} +5 -5
- package/src/core/handlers/HttpHandler.ts +1 -1
- package/src/core/utils/request/onUnhandledRequest.test.ts +3 -3
- package/src/core/utils/request/onUnhandledRequest.ts +1 -1
- package/src/mockServiceWorker.js +89 -52
- package/src/tsconfig.worker.json +13 -0
package/README.md
CHANGED
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
This README will give you a brief overview of the library, but there's no better place to start with Mock Service Worker than its official documentation.
|
|
32
32
|
|
|
33
33
|
- [Documentation](https://mswjs.io/docs)
|
|
34
|
-
- [**
|
|
34
|
+
- [**Quick start**](https://mswjs.io/docs/quick-start)
|
|
35
35
|
- [FAQ](https://mswjs.io/docs/faq)
|
|
36
36
|
|
|
37
37
|
## Examples
|
package/cli/init.js
CHANGED
|
@@ -149,7 +149,7 @@ ${paths.map((path) => colors.gray(` - ${path}\n`))}
|
|
|
149
149
|
Continue by describing the network in your application:
|
|
150
150
|
|
|
151
151
|
|
|
152
|
-
${colors.red(colors.bold('https://mswjs.io/docs/
|
|
152
|
+
${colors.red(colors.bold('https://mswjs.io/docs/quick-start'))}
|
|
153
153
|
`)
|
|
154
154
|
}
|
|
155
155
|
|
package/lib/browser/index.js
CHANGED
|
@@ -289,11 +289,11 @@ function pruneGetRequestBody(request) {
|
|
|
289
289
|
return request.body;
|
|
290
290
|
}
|
|
291
291
|
|
|
292
|
-
// src/browser/utils/
|
|
293
|
-
function
|
|
294
|
-
return new Request(
|
|
295
|
-
...
|
|
296
|
-
body: pruneGetRequestBody(
|
|
292
|
+
// src/browser/utils/deserializeRequest.ts
|
|
293
|
+
function deserializeRequest(serializedRequest) {
|
|
294
|
+
return new Request(serializedRequest.url, {
|
|
295
|
+
...serializedRequest,
|
|
296
|
+
body: pruneGetRequestBody(serializedRequest)
|
|
297
297
|
});
|
|
298
298
|
}
|
|
299
299
|
|
|
@@ -307,11 +307,10 @@ var createRequestListener = (context, options) => {
|
|
|
307
307
|
return async (event, message) => {
|
|
308
308
|
const messageChannel = new WorkerChannel(event.ports[0]);
|
|
309
309
|
const requestId = message.payload.id;
|
|
310
|
-
const request =
|
|
310
|
+
const request = deserializeRequest(message.payload);
|
|
311
311
|
const requestCloneForLogs = request.clone();
|
|
312
312
|
const requestClone = request.clone();
|
|
313
313
|
import_RequestHandler.RequestHandler.cache.set(request, requestClone);
|
|
314
|
-
context.requests.set(requestId, requestClone);
|
|
315
314
|
try {
|
|
316
315
|
await (0, import_handleRequest.handleRequest)(
|
|
317
316
|
request,
|
|
@@ -363,7 +362,7 @@ var createRequestListener = (context, options) => {
|
|
|
363
362
|
|
|
364
363
|
%s
|
|
365
364
|
|
|
366
|
-
This exception has been gracefully handled as a 500 response, however, it's strongly recommended to resolve this error, as it indicates a mistake in your code. If you wish to mock an error response, please see this guide: https://mswjs.io/docs/
|
|
365
|
+
This exception has been gracefully handled as a 500 response, however, it's strongly recommended to resolve this error, as it indicates a mistake in your code. If you wish to mock an error response, please see this guide: https://mswjs.io/docs/http/mocking-responses/error-responses`,
|
|
367
366
|
request.method,
|
|
368
367
|
request.url,
|
|
369
368
|
error2.stack ?? error2
|
|
@@ -390,7 +389,7 @@ var import_devUtils5 = require("../core/utils/internal/devUtils");
|
|
|
390
389
|
async function checkWorkerIntegrity(context) {
|
|
391
390
|
context.workerChannel.send("INTEGRITY_CHECK_REQUEST");
|
|
392
391
|
const { payload } = await context.events.once("INTEGRITY_CHECK_RESPONSE");
|
|
393
|
-
if (payload.checksum !== "
|
|
392
|
+
if (payload.checksum !== "f5825c521429caf22a4dd13b66e243af") {
|
|
394
393
|
import_devUtils5.devUtils.warn(
|
|
395
394
|
`The currently registered Service Worker has been generated by a different version of MSW (${payload.packageVersion}) and may not be fully compatible with the installed version.
|
|
396
395
|
|
|
@@ -1145,20 +1144,18 @@ var BatchInterceptor = class extends Interceptor {
|
|
|
1145
1144
|
function createResponseListener(context) {
|
|
1146
1145
|
return (_, message) => {
|
|
1147
1146
|
const { payload: responseJson } = message;
|
|
1148
|
-
const
|
|
1149
|
-
|
|
1150
|
-
context.requests.delete(requestId);
|
|
1151
|
-
if (responseJson.type?.includes("opaque")) {
|
|
1147
|
+
const request = deserializeRequest(responseJson.request);
|
|
1148
|
+
if (responseJson.response.type?.includes("opaque")) {
|
|
1152
1149
|
return;
|
|
1153
1150
|
}
|
|
1154
|
-
const response = responseJson.status === 0 ? Response.error() : new FetchResponse(
|
|
1151
|
+
const response = responseJson.response.status === 0 ? Response.error() : new FetchResponse(
|
|
1155
1152
|
/**
|
|
1156
1153
|
* Responses may be streams here, but when we create a response object
|
|
1157
1154
|
* with null-body status codes, like 204, 205, 304 Response will
|
|
1158
1155
|
* throw when passed a non-null body, so ensure it's null here
|
|
1159
1156
|
* for those codes
|
|
1160
1157
|
*/
|
|
1161
|
-
FetchResponse.isResponseWithBody(responseJson.status) ? responseJson.body : null,
|
|
1158
|
+
FetchResponse.isResponseWithBody(responseJson.response.status) ? responseJson.response.body : null,
|
|
1162
1159
|
{
|
|
1163
1160
|
...responseJson,
|
|
1164
1161
|
/**
|
|
@@ -1172,9 +1169,9 @@ function createResponseListener(context) {
|
|
|
1172
1169
|
context.emitter.emit(
|
|
1173
1170
|
responseJson.isMockedResponse ? "response:mocked" : "response:bypass",
|
|
1174
1171
|
{
|
|
1175
|
-
|
|
1172
|
+
requestId: responseJson.request.id,
|
|
1176
1173
|
request,
|
|
1177
|
-
|
|
1174
|
+
response
|
|
1178
1175
|
}
|
|
1179
1176
|
);
|
|
1180
1177
|
};
|
|
@@ -2790,7 +2787,6 @@ var SetupWorkerApi = class extends import_SetupApi.SetupApi {
|
|
|
2790
2787
|
return this.handlersController.currentHandlers();
|
|
2791
2788
|
},
|
|
2792
2789
|
registration: null,
|
|
2793
|
-
requests: /* @__PURE__ */ new Map(),
|
|
2794
2790
|
emitter: this.emitter,
|
|
2795
2791
|
workerChannel: {
|
|
2796
2792
|
on: (eventType, callback) => {
|