Files
plane/apps/web/public/sw.js
T

103 lines
2.9 KiB
JavaScript
Raw Normal View History

2023-01-26 23:42:20 +05:30
/**
* Copyright 2018 Google Inc. All Rights Reserved.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// If the loader is already loaded, just stop.
if (!self.define) {
let registry = {};
// Used for `eval` and `importScripts` where we can't get script URL by other means.
// In both cases, it's safe to use a global var because those functions are synchronous.
let nextDefineUri;
const singleRequire = (uri, parentUri) => {
uri = new URL(uri + ".js", parentUri).href;
2025-12-05 17:33:51 +07:00
return (
registry[uri] ||
new Promise((resolve) => {
if ("document" in self) {
const script = document.createElement("script");
script.src = uri;
script.onload = resolve;
document.head.appendChild(script);
} else {
nextDefineUri = uri;
importScripts(uri);
resolve();
}
}).then(() => {
2023-01-26 23:42:20 +05:30
let promise = registry[uri];
if (!promise) {
throw new Error(`Module ${uri} didnt register its module`);
}
return promise;
})
);
};
self.define = (depsNames, factory) => {
const uri = nextDefineUri || ("document" in self ? document.currentScript.src : "") || location.href;
if (registry[uri]) {
// Module is already loading or loaded.
return;
}
let exports = {};
2025-12-05 17:33:51 +07:00
const require = (depUri) => singleRequire(depUri, uri);
2023-01-26 23:42:20 +05:30
const specialDeps = {
module: { uri },
exports,
2025-12-05 17:33:51 +07:00
require,
2023-01-26 23:42:20 +05:30
};
2025-12-05 17:33:51 +07:00
registry[uri] = Promise.all(depsNames.map((depName) => specialDeps[depName] || require(depName))).then((deps) => {
2023-01-26 23:42:20 +05:30
factory(...deps);
return exports;
});
};
}
2025-12-05 17:33:51 +07:00
define(["./workbox-9f2f79cf"], function (workbox) {
"use strict";
2023-01-26 23:42:20 +05:30
importScripts();
self.skipWaiting();
workbox.clientsClaim();
2025-12-05 17:33:51 +07:00
workbox.registerRoute(
"/",
new workbox.NetworkFirst({
cacheName: "start-url",
plugins: [
{
cacheWillUpdate: async ({ request, response, event, state }) => {
if (response && response.type === "opaqueredirect") {
return new Response(response.body, {
status: 200,
statusText: "OK",
headers: response.headers,
});
}
return response;
},
},
],
}),
"GET"
);
workbox.registerRoute(
/.*/i,
new workbox.NetworkOnly({
cacheName: "dev",
plugins: [],
}),
"GET"
);
});
2023-01-26 23:42:20 +05:30
//# sourceMappingURL=sw.js.map