Spaces:
Running
Running
Delete mock-service-worker.js
Browse files- mock-service-worker.js +0 -50
mock-service-worker.js
DELETED
|
@@ -1,50 +0,0 @@
|
|
| 1 |
-
/**
|
| 2 |
-
* @license
|
| 3 |
-
* SPDX-License-Identifier: Apache-2.0
|
| 4 |
-
*/
|
| 5 |
-
|
| 6 |
-
const MOCK_ROUTES = new Map();
|
| 7 |
-
|
| 8 |
-
self.addEventListener('install', (event) => {
|
| 9 |
-
self.skipWaiting();
|
| 10 |
-
});
|
| 11 |
-
|
| 12 |
-
self.addEventListener('activate', (event) => {
|
| 13 |
-
event.waitUntil(self.clients.claim());
|
| 14 |
-
});
|
| 15 |
-
|
| 16 |
-
self.addEventListener('message', (event) => {
|
| 17 |
-
if (event.data.type === 'SET_ROUTES') {
|
| 18 |
-
const routes = event.data.routes || [];
|
| 19 |
-
MOCK_ROUTES.clear();
|
| 20 |
-
routes.forEach(route => {
|
| 21 |
-
// Simple wildcard support
|
| 22 |
-
const regex = new RegExp('^' + route.path.replace(/\*/g, '.*') + '$');
|
| 23 |
-
MOCK_ROUTES.set(regex, {
|
| 24 |
-
method: route.method,
|
| 25 |
-
response: route.response,
|
| 26 |
-
});
|
| 27 |
-
});
|
| 28 |
-
}
|
| 29 |
-
});
|
| 30 |
-
|
| 31 |
-
self.addEventListener('fetch', (event) => {
|
| 32 |
-
const url = new URL(event.request.url);
|
| 33 |
-
const path = url.pathname;
|
| 34 |
-
const method = event.request.method;
|
| 35 |
-
|
| 36 |
-
for (const [routeRegex, routeInfo] of MOCK_ROUTES.entries()) {
|
| 37 |
-
if (routeRegex.test(path) && routeInfo.method === method) {
|
| 38 |
-
event.respondWith(
|
| 39 |
-
new Response(JSON.stringify(routeInfo.response.body), {
|
| 40 |
-
status: routeInfo.response.status,
|
| 41 |
-
headers: { 'Content-Type': 'application/json', ...routeInfo.response.headers },
|
| 42 |
-
})
|
| 43 |
-
);
|
| 44 |
-
return;
|
| 45 |
-
}
|
| 46 |
-
}
|
| 47 |
-
|
| 48 |
-
// If no mock route matches, fall back to the network.
|
| 49 |
-
event.respondWith(fetch(event.request));
|
| 50 |
-
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|