nuVistA/htdocs/index.html

48 lines
1.9 KiB
HTML
Raw Normal View History

2022-09-22 07:10:08 -04:00
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>nuVistA</title>
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/bootstrap@5.1/dist/css/bootstrap.min.css" />
<link rel="stylesheet" type="text/css" href="/table-sticky.css" />
<link rel="stylesheet" type="text/css" href="/userstyle.css" />
2023-04-25 18:39:25 -04:00
<link rel="icon" href="/icon.svg" type="image/svg+xml" />
2022-09-22 07:10:08 -04:00
</head>
<body><div id='root'></div></body>
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/vue@3.2"></script>
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/vue-router@4"></script>
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/bootstrap@5.1/dist/js/bootstrap.min.js"></script>
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/vue3-sfc-loader/dist/vue3-sfc-loader.js"></script>
<script type="text/javascript">
var loadModule = window['vue3-sfc-loader'].loadModule;
var options = {
moduleCache: {
vue: Vue
},
async getFile(url) {
const res = await fetch(url);
if(res.ok) return {
getContentData: asBinary => asBinary ? res.arrayBuffer() : res.text(),
}
else throw Object.assign(new Error(res.statusText + ' ' + url), { res });
},
addStyle(textContent) {
const style = Object.assign(document.createElement('style'), { textContent });
const ref = document.head.getElementsByTagName('style')[0] || null;
document.head.insertBefore(style, ref);
},
};
var secret = window.location.hash.substring(1);
var app = Vue.createApp({
components: {
'app': Vue.defineAsyncComponent(function() { return loadModule('/App.vue', options); })
},
data: function() { return { secret: secret }; },
template: '<app :secret="secret"></app>'
});
app.use(VueRouter.createRouter({ history: VueRouter.createWebHistory(), routes: [] }));
app.mount('#root');
</script>
</html>