/* global location, navigator, sessionStorage, window */ (function () { if (!("serviceWorker" in navigator)) return; var version = "docs-v3"; var workerUrl = "/sw.js?v=" + encodeURIComponent(version); if (window.trustedTypes) { try { workerUrl = window.trustedTypes .createPolicy("wrnexus-pwa-recovery", { createScriptURL: function (value) { return value; }, }) .createScriptURL(workerUrl); } catch { // A previously-created policy can make creation fail; the same-origin // string remains valid when Trusted Types enforcement is not active. } } var reloading = false; navigator.serviceWorker.addEventListener("controllerchange", function () { var key = "wrnexus-pwa-controller-" + version; if (reloading || sessionStorage.getItem(key)) return; reloading = true; sessionStorage.setItem(key, "1"); location.reload(); }); navigator.serviceWorker .register(workerUrl, { updateViaCache: "none" }) .then(function (registration) { return registration.update(); }) .catch(function () {}); })();