-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.js
85 lines (73 loc) · 2.84 KB
/
index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
(function () {
let script = document.currentScript;
let src = script.src;
let index = src.lastIndexOf("/");
src = src.substring(0, index);
function loadPackage() {
let package = script.getAttribute("data-package");
let packageRoot = script.getAttribute("data-package-root");
if (!packageRoot) {
packageRoot = src;
script.setAttribute("data-package-root");
}
if (!package) {
fetch(src + "/package.json").then((x) => x.json().then((json) => {
script.setAttribute("data-package", json.name);
loadPackage();
}));
return;
}
const view = script.getAttribute("data-view");
const packed = JSON.parse(script.getAttribute("data-packed") ?? "true");
const min = JSON.parse(script.getAttribute("data-min") ?? "true");
const viewUrl = `${packageRoot}/${view}${packed ? ".pack" : ""}${min ? ".min" : ""}.js`;
const viewName = `${package}/${view}`;
(function (url, success, error) {
var script = document.createElement("script");
script.type = "text/javascript";
script.src = url;
var s = script;
s.onerror = function (e) { alert("Script " + url + " failed to load"); if (error) error(e); else console.error(e); };
s.onload = s.onreadystatechange = function () {
if ((s.readyState && s.readyState !== "complete" && s.readyState !== "loaded")) {
if (error) error(); else console.error("error loading " + url);
return;
}
s.onload = s.onreadystatechange = null;
success();
};
document.body.appendChild(s);
}) (viewUrl, function () {
function empty () {
return function () {
return null
}
}
AmdLoader.moduleProgress = empty;
function done () {
const we = document.getElementById("webAtomsLoader");
if (we) {
we.remove();
}
};
UMD.setupRoot(package, packageRoot);
UMD.lang = "en-US";
UMD.loadView(viewName, 0).then(done);
});
}
loadPackage();
try {
if ('serviceWorker' in navigator) {
navigator.serviceWorker.register("/pwa-sw.js")
.then(function (registration) {
console.log('ServiceWorker registration successful with scope: ', registration.scope);
registration.update().then(() => {
console.log("Registration updated");
}).catch(console.error);
}).catch(console.error);
}
}
catch (error) {
console.error(error);
}
})();