kopia lustrzana https://github.com/FacilMap/facilmap
97 wiersze
2.8 KiB
Plaintext
97 wiersze
2.8 KiB
Plaintext
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<title><%= padData && padData.name ? `${padData.name} – ` : ''%><%=appName%></title>
|
|
<meta name="description" content="<%= padData && padData.description || "A fully-featured OpenStreetMap-based map where markers and lines can be added with live collaboration." %>" />
|
|
<% if(!padData || (isReadOnly && padData.searchEngines)) { -%>
|
|
<meta name="robots" content="index,nofollow" />
|
|
<% } else { -%>
|
|
<meta name="robots" content="noindex,nofollow" />
|
|
<% } -%>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
|
|
<meta name="fmConfig" content="<%=JSON.stringify(config)%>" />
|
|
<link rel="icon" href="<%=paths.base%>static/favicon.svg">
|
|
<link rel="mask-icon" href="<%=paths.base%>static/favicon.svg" color="#00272a">
|
|
<link rel="apple-touch-icon" href="<%=paths.base%>static/app-180.png">
|
|
<link rel="manifest" href="<%=paths.base%>manifest.json">
|
|
<link rel="search" type="application/opensearchdescription+xml" title="<%=appName%>" href="<%=paths.base%>opensearch.xml">
|
|
<style type="text/css">
|
|
html, body, #app {
|
|
margin: 0;
|
|
padding: 0;
|
|
display: flex;
|
|
flex-direction: column;
|
|
flex-grow: 1;
|
|
}
|
|
|
|
html {
|
|
height: 100%;
|
|
}
|
|
|
|
#loading {
|
|
padding: 10px;
|
|
font-size: 24.5px;
|
|
font-weight: 500;
|
|
color: #495057;
|
|
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
|
|
}
|
|
|
|
#loading.error {
|
|
background: #fff;
|
|
color: #d00;
|
|
}
|
|
|
|
#spinner {
|
|
position: fixed;
|
|
top: 50%;
|
|
left: 50%;
|
|
transform: translate(-50% -50%);
|
|
width: 28px;
|
|
height: 28px;
|
|
border: 3.5px solid #495057;
|
|
border-right-color: transparent;
|
|
border-radius: 50%;
|
|
animation: spinner-border .75s linear infinite;
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
@keyframes spinner-border {
|
|
to { transform: rotate(360deg); }
|
|
}
|
|
</style>
|
|
<style type="text/css">
|
|
<% for (const path of styles) { -%>
|
|
@import url("<%=paths.base%><%=path%>");
|
|
<% } -%>
|
|
</style>
|
|
<% for (const path of scripts) { -%>
|
|
<script type="module" src="<%=paths.base%><%=path%>"></script>
|
|
<% } -%>
|
|
<% for (const path of preloadScripts) { -%>
|
|
<link rel="modulepreload" href="<%=paths.base%><%=path%>"/>
|
|
<% } -%>
|
|
</head>
|
|
<body>
|
|
<noscript><p><strong><%=appName%> requires JavaScript to work.</strong></p></noscript>
|
|
<div id="loading">
|
|
Loading...
|
|
<div id="spinner"></div>
|
|
</div>
|
|
|
|
<div id="app">
|
|
</div>
|
|
|
|
<script>
|
|
(function() {
|
|
window.onload = function() {
|
|
var loading = document.getElementById("loading");
|
|
if(loading) {
|
|
loading.className += " error";
|
|
loading.innerHTML = "Could not load <%=appName%>!";
|
|
}
|
|
};
|
|
})();
|
|
</script>
|
|
</body>
|
|
</html> |