77 * - Please do NOT modify this file.
88 */
99
10- const PACKAGE_VERSION = " 2.12.10" ;
11- const INTEGRITY_CHECKSUM = " 4db4a41e972cec1b64cc569c66952d82" ;
12- const IS_MOCKED_RESPONSE = Symbol ( " isMockedResponse" ) ;
13- const activeClientIds = new Set ( ) ;
10+ const PACKAGE_VERSION = ' 2.12.9'
11+ const INTEGRITY_CHECKSUM = ' 4db4a41e972cec1b64cc569c66952d82'
12+ const IS_MOCKED_RESPONSE = Symbol ( ' isMockedResponse' )
13+ const activeClientIds = new Set ( )
1414
15- addEventListener ( " install" , function ( ) {
16- self . skipWaiting ( ) ;
17- } ) ;
15+ addEventListener ( ' install' , function ( ) {
16+ self . skipWaiting ( )
17+ } )
1818
19- addEventListener ( " activate" , function ( event ) {
20- event . waitUntil ( self . clients . claim ( ) ) ;
21- } ) ;
19+ addEventListener ( ' activate' , function ( event ) {
20+ event . waitUntil ( self . clients . claim ( ) )
21+ } )
2222
23- addEventListener ( " message" , async function ( event ) {
24- const clientId = Reflect . get ( event . source || { } , "id" ) ;
23+ addEventListener ( ' message' , async function ( event ) {
24+ const clientId = Reflect . get ( event . source || { } , 'id' )
2525
2626 if ( ! clientId || ! self . clients ) {
27- return ;
27+ return
2828 }
2929
30- const client = await self . clients . get ( clientId ) ;
30+ const client = await self . clients . get ( clientId )
3131
3232 if ( ! client ) {
33- return ;
33+ return
3434 }
3535
3636 const allClients = await self . clients . matchAll ( {
37- type : " window" ,
38- } ) ;
37+ type : ' window' ,
38+ } )
3939
4040 switch ( event . data ) {
41- case " KEEPALIVE_REQUEST" : {
41+ case ' KEEPALIVE_REQUEST' : {
4242 sendToClient ( client , {
43- type : " KEEPALIVE_RESPONSE" ,
44- } ) ;
45- break ;
43+ type : ' KEEPALIVE_RESPONSE' ,
44+ } )
45+ break
4646 }
4747
48- case " INTEGRITY_CHECK_REQUEST" : {
48+ case ' INTEGRITY_CHECK_REQUEST' : {
4949 sendToClient ( client , {
50- type : " INTEGRITY_CHECK_RESPONSE" ,
50+ type : ' INTEGRITY_CHECK_RESPONSE' ,
5151 payload : {
5252 packageVersion : PACKAGE_VERSION ,
5353 checksum : INTEGRITY_CHECKSUM ,
5454 } ,
55- } ) ;
56- break ;
55+ } )
56+ break
5757 }
5858
59- case " MOCK_ACTIVATE" : {
60- activeClientIds . add ( clientId ) ;
59+ case ' MOCK_ACTIVATE' : {
60+ activeClientIds . add ( clientId )
6161
6262 sendToClient ( client , {
63- type : " MOCKING_ENABLED" ,
63+ type : ' MOCKING_ENABLED' ,
6464 payload : {
6565 client : {
6666 id : client . id ,
6767 frameType : client . frameType ,
6868 } ,
6969 } ,
70- } ) ;
71- break ;
70+ } )
71+ break
7272 }
7373
74- case " CLIENT_CLOSED" : {
75- activeClientIds . delete ( clientId ) ;
74+ case ' CLIENT_CLOSED' : {
75+ activeClientIds . delete ( clientId )
7676
7777 const remainingClients = allClients . filter ( ( client ) => {
78- return client . id !== clientId ;
79- } ) ;
78+ return client . id !== clientId
79+ } )
8080
8181 // Unregister itself when there are no more clients
8282 if ( remainingClients . length === 0 ) {
83- self . registration . unregister ( ) ;
83+ self . registration . unregister ( )
8484 }
8585
86- break ;
86+ break
8787 }
8888 }
89- } ) ;
89+ } )
9090
91- addEventListener ( " fetch" , function ( event ) {
92- const requestInterceptedAt = Date . now ( ) ;
91+ addEventListener ( ' fetch' , function ( event ) {
92+ const requestInterceptedAt = Date . now ( )
9393
9494 // Bypass navigation requests.
95- if ( event . request . mode === " navigate" ) {
96- return ;
95+ if ( event . request . mode === ' navigate' ) {
96+ return
9797 }
9898
9999 // Opening the DevTools triggers the "only-if-cached" request
100100 // that cannot be handled by the worker. Bypass such requests.
101- if ( event . request . cache === "only-if-cached" && event . request . mode !== "same-origin" ) {
102- return ;
101+ if (
102+ event . request . cache === 'only-if-cached' &&
103+ event . request . mode !== 'same-origin'
104+ ) {
105+ return
103106 }
104107
105108 // Bypass all requests when there are no active clients.
106109 // Prevents the self-unregistered worked from handling requests
107110 // after it's been terminated (still remains active until the next reload).
108111 if ( activeClientIds . size === 0 ) {
109- return ;
112+ return
110113 }
111114
112- const requestId = crypto . randomUUID ( ) ;
113- event . respondWith ( handleRequest ( event , requestId , requestInterceptedAt ) ) ;
114- } ) ;
115+ const requestId = crypto . randomUUID ( )
116+ event . respondWith ( handleRequest ( event , requestId , requestInterceptedAt ) )
117+ } )
115118
116119/**
117120 * @param {FetchEvent } event
118121 * @param {string } requestId
119122 * @param {number } requestInterceptedAt
120123 */
121124async function handleRequest ( event , requestId , requestInterceptedAt ) {
122- const client = await resolveMainClient ( event ) ;
123- const requestCloneForEvents = event . request . clone ( ) ;
124- const response = await getResponse ( event , client , requestId , requestInterceptedAt ) ;
125+ const client = await resolveMainClient ( event )
126+ const requestCloneForEvents = event . request . clone ( )
127+ const response = await getResponse (
128+ event ,
129+ client ,
130+ requestId ,
131+ requestInterceptedAt ,
132+ )
125133
126134 // Send back the response clone for the "response:*" life-cycle events.
127135 // Ensure MSW is active and ready to handle the message, otherwise
128136 // this message will pend indefinitely.
129137 if ( client && activeClientIds . has ( client . id ) ) {
130- const serializedRequest = await serializeRequest ( requestCloneForEvents ) ;
138+ const serializedRequest = await serializeRequest ( requestCloneForEvents )
131139
132140 // Clone the response so both the client and the library could consume it.
133- const responseClone = response . clone ( ) ;
141+ const responseClone = response . clone ( )
134142
135143 sendToClient (
136144 client ,
137145 {
138- type : " RESPONSE" ,
146+ type : ' RESPONSE' ,
139147 payload : {
140148 isMockedResponse : IS_MOCKED_RESPONSE in response ,
141149 request : {
@@ -152,10 +160,10 @@ async function handleRequest(event, requestId, requestInterceptedAt) {
152160 } ,
153161 } ,
154162 responseClone . body ? [ serializedRequest . body , responseClone . body ] : [ ] ,
155- ) ;
163+ )
156164 }
157165
158- return response ;
166+ return response
159167}
160168
161169/**
@@ -167,30 +175,30 @@ async function handleRequest(event, requestId, requestInterceptedAt) {
167175 * @returns {Promise<Client | undefined> }
168176 */
169177async function resolveMainClient ( event ) {
170- const client = await self . clients . get ( event . clientId ) ;
178+ const client = await self . clients . get ( event . clientId )
171179
172180 if ( activeClientIds . has ( event . clientId ) ) {
173- return client ;
181+ return client
174182 }
175183
176- if ( client ?. frameType === " top-level" ) {
177- return client ;
184+ if ( client ?. frameType === ' top-level' ) {
185+ return client
178186 }
179187
180188 const allClients = await self . clients . matchAll ( {
181- type : " window" ,
182- } ) ;
189+ type : ' window' ,
190+ } )
183191
184192 return allClients
185193 . filter ( ( client ) => {
186194 // Get only those clients that are currently visible.
187- return client . visibilityState === " visible" ;
195+ return client . visibilityState === ' visible'
188196 } )
189197 . find ( ( client ) => {
190198 // Find the client ID that's recorded in the
191199 // set of clients that have registered the worker.
192- return activeClientIds . has ( client . id ) ;
193- } ) ;
200+ return activeClientIds . has ( client . id )
201+ } )
194202}
195203
196204/**
@@ -203,70 +211,72 @@ async function resolveMainClient(event) {
203211async function getResponse ( event , client , requestId , requestInterceptedAt ) {
204212 // Clone the request because it might've been already used
205213 // (i.e. its body has been read and sent to the client).
206- const requestClone = event . request . clone ( ) ;
214+ const requestClone = event . request . clone ( )
207215
208216 function passthrough ( ) {
209217 // Cast the request headers to a new Headers instance
210218 // so the headers can be manipulated with.
211- const headers = new Headers ( requestClone . headers ) ;
219+ const headers = new Headers ( requestClone . headers )
212220
213221 // Remove the "accept" header value that marked this request as passthrough.
214222 // This prevents request alteration and also keeps it compliant with the
215223 // user-defined CORS policies.
216- const acceptHeader = headers . get ( " accept" ) ;
224+ const acceptHeader = headers . get ( ' accept' )
217225 if ( acceptHeader ) {
218- const values = acceptHeader . split ( "," ) . map ( ( value ) => value . trim ( ) ) ;
219- const filteredValues = values . filter ( ( value ) => value !== "msw/passthrough" ) ;
226+ const values = acceptHeader . split ( ',' ) . map ( ( value ) => value . trim ( ) )
227+ const filteredValues = values . filter (
228+ ( value ) => value !== 'msw/passthrough' ,
229+ )
220230
221231 if ( filteredValues . length > 0 ) {
222- headers . set ( " accept" , filteredValues . join ( ", " ) ) ;
232+ headers . set ( ' accept' , filteredValues . join ( ', ' ) )
223233 } else {
224- headers . delete ( " accept" ) ;
234+ headers . delete ( ' accept' )
225235 }
226236 }
227237
228- return fetch ( requestClone , { headers } ) ;
238+ return fetch ( requestClone , { headers } )
229239 }
230240
231241 // Bypass mocking when the client is not active.
232242 if ( ! client ) {
233- return passthrough ( ) ;
243+ return passthrough ( )
234244 }
235245
236246 // Bypass initial page load requests (i.e. static assets).
237247 // The absence of the immediate/parent client in the map of the active clients
238248 // means that MSW hasn't dispatched the "MOCK_ACTIVATE" event yet
239249 // and is not ready to handle requests.
240250 if ( ! activeClientIds . has ( client . id ) ) {
241- return passthrough ( ) ;
251+ return passthrough ( )
242252 }
243253
244254 // Notify the client that a request has been intercepted.
245- const serializedRequest = await serializeRequest ( event . request ) ;
255+ const serializedRequest = await serializeRequest ( event . request )
246256 const clientMessage = await sendToClient (
247257 client ,
248258 {
249- type : " REQUEST" ,
259+ type : ' REQUEST' ,
250260 payload : {
251261 id : requestId ,
252262 interceptedAt : requestInterceptedAt ,
253263 ...serializedRequest ,
254264 } ,
255265 } ,
256266 [ serializedRequest . body ] ,
257- ) ;
267+ )
258268
259269 switch ( clientMessage . type ) {
260- case " MOCK_RESPONSE" : {
261- return respondWithMock ( clientMessage . data ) ;
270+ case ' MOCK_RESPONSE' : {
271+ return respondWithMock ( clientMessage . data )
262272 }
263273
264- case " PASSTHROUGH" : {
265- return passthrough ( ) ;
274+ case ' PASSTHROUGH' : {
275+ return passthrough ( )
266276 }
267277 }
268278
269- return passthrough ( ) ;
279+ return passthrough ( )
270280}
271281
272282/**
@@ -277,18 +287,21 @@ async function getResponse(event, client, requestId, requestInterceptedAt) {
277287 */
278288function sendToClient ( client , message , transferrables = [ ] ) {
279289 return new Promise ( ( resolve , reject ) => {
280- const channel = new MessageChannel ( ) ;
290+ const channel = new MessageChannel ( )
281291
282292 channel . port1 . onmessage = ( event ) => {
283293 if ( event . data && event . data . error ) {
284- return reject ( event . data . error ) ;
294+ return reject ( event . data . error )
285295 }
286296
287- resolve ( event . data ) ;
288- } ;
297+ resolve ( event . data )
298+ }
289299
290- client . postMessage ( message , [ channel . port2 , ...transferrables . filter ( Boolean ) ] ) ;
291- } ) ;
300+ client . postMessage ( message , [
301+ channel . port2 ,
302+ ...transferrables . filter ( Boolean ) ,
303+ ] )
304+ } )
292305}
293306
294307/**
@@ -301,17 +314,17 @@ function respondWithMock(response) {
301314 // instance will have status code set to 0. Since it's not possible to create
302315 // a Response instance with status code 0, handle that use-case separately.
303316 if ( response . status === 0 ) {
304- return Response . error ( ) ;
317+ return Response . error ( )
305318 }
306319
307- const mockedResponse = new Response ( response . body , response ) ;
320+ const mockedResponse = new Response ( response . body , response )
308321
309322 Reflect . defineProperty ( mockedResponse , IS_MOCKED_RESPONSE , {
310323 value : true ,
311324 enumerable : true ,
312- } ) ;
325+ } )
313326
314- return mockedResponse ;
327+ return mockedResponse
315328}
316329
317330/**
@@ -332,5 +345,5 @@ async function serializeRequest(request) {
332345 referrerPolicy : request . referrerPolicy ,
333346 body : await request . arrayBuffer ( ) ,
334347 keepalive : request . keepalive ,
335- } ;
348+ }
336349}
0 commit comments