forked from single-spa/single-spa-playground
-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.html
96 lines (96 loc) · 3.89 KB
/
index.html
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
86
87
88
89
90
91
92
93
94
95
96
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<title>Single spa playground</title>
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="importmap-type" content="systemjs-importmap" />
<link
rel="stylesheet"
href="https://fonts.googleapis.com/css?family=Heebo:400,700"
/>
<script type="systemjs-importmap" id="playground-import-map">
{
"imports": {
"single-spa": "https://cdn.jsdelivr.net/npm/[email protected]/lib/system/single-spa.min.js",
"single-spa-playground": "/assets/single-spa-playground.js",
"react": "https://cdn.jsdelivr.net/npm/[email protected]/umd/react.production.min.js",
"react-dom": "https://cdn.jsdelivr.net/npm/[email protected]/umd/react-dom.production.min.js",
"vue-router": "https://cdn.jsdelivr.net/npm/[email protected]/dist/vue-router.min.js",
"vue": "https://cdn.jsdelivr.net/npm/[email protected]/dist/vue.min.js"
}
}
</script>
<script src="https://cdn.jsdelivr.net/npm/import-map-overrides/dist/import-map-overrides.js"></script>
<script src="https://cdn.jsdelivr.net/npm/systemjs/dist/system.js"></script>
<script src="https://cdn.jsdelivr.net/npm/systemjs/dist/extras/amd.js"></script>
<script src="https://cdn.jsdelivr.net/npm/systemjs/dist/extras/named-exports.js"></script>
<script src="https://cdn.jsdelivr.net/npm/systemjs/dist/extras/named-register.js"></script>
<style>
import-map-overrides-full .imo-popup {
z-index: 100000;
}
</style>
</head>
<body>
<import-map-overrides-full></import-map-overrides-full>
<!-- Start Single Page Apps for GitHub Pages -->
<script type="text/javascript">
// Single Page Apps for GitHub Pages
// https://github.com/rafrex/spa-github-pages
// Copyright (c) 2016 Rafael Pedicini, licensed under the MIT License
// ----------------------------------------------------------------------
// This script checks to see if a redirect is present in the query string
// and converts it back into the correct url and adds it to the
// browser's history using window.history.replaceState(...),
// which won't cause the browser to attempt to load the new url.
// When the single page app is loaded further down in this file,
// the correct url will be waiting in the browser's history for
// the single page app to route accordingly.
(function (l) {
if (l.search) {
var q = {};
l.search
.slice(1)
.split("&")
.forEach(function (v) {
var a = v.split("=");
q[a[0]] = a.slice(1).join("=").replace(/~and~/g, "&");
});
if (q.p !== undefined) {
window.history.replaceState(
null,
null,
l.pathname.slice(0, -1) +
(q.p || "") +
(q.q ? "?" + q.q : "") +
l.hash
);
}
}
})(window.location);
</script>
<!-- End Single Page Apps for GitHub Pages -->
<div id="single-spa-playground"></div>
<script>
if (!window.__SINGLE_SPA_DEVTOOLS__) {
window.__SINGLE_SPA_DEVTOOLS__ = {};
}
const playgroundData = localStorage.getItem("single-spa-playground");
if (playgroundData && playgroundData.includes("angular")) {
const globalDefine = window.define;
delete window.define;
const zoneEl = document.createElement("script");
zoneEl.src = "https://unpkg.com/zone.js";
zoneEl.addEventListener("load", () => {
System.import("single-spa-playground");
window.define = globalDefine;
});
document.head.appendChild(zoneEl);
} else {
System.import("single-spa-playground");
}
</script>
</body>
</html>