You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
79 lines
2.6 KiB
79 lines
2.6 KiB
<html> |
|
<head> |
|
<title>Rageshake decoder ring</title> |
|
<script crossorigin src="https://unpkg.com/source-map@0.7.3/dist/source-map.js"></script> |
|
<script> |
|
sourceMap.SourceMapConsumer.initialize({ |
|
"lib/mappings.wasm": "https://unpkg.com/source-map@0.7.3/lib/mappings.wasm" |
|
}); |
|
</script> |
|
<script crossorigin src="https://unpkg.com/react@16/umd/react.production.min.js"></script> |
|
<script crossorigin src="https://unpkg.com/react-dom@16/umd/react-dom.production.min.js"></script> |
|
<!--<script crossorigin src="https://unpkg.com/react@16/umd/react.development.js"></script> |
|
<script crossorigin src="https://unpkg.com/react-dom@16/umd/react-dom.development.js"></script>--> |
|
<script crossorigin src="https://unpkg.com/rxjs/dist/bundles/rxjs.umd.min.js"></script> |
|
<script src="datatypes.js"></script> |
|
<script src="decoder.js"></script> |
|
|
|
<style> |
|
@keyframes spin { |
|
from {transform:rotate(0deg);} |
|
to {transform:rotate(359deg);} |
|
} |
|
|
|
body { |
|
font-family: sans-serif |
|
} |
|
|
|
.spinner { |
|
animation: spin 4s infinite linear; |
|
display: inline-block; |
|
text-align: center; |
|
vertical-align: middle; |
|
font-size: larger; |
|
} |
|
|
|
.progress { |
|
padding-left: 0.5em; |
|
padding-right: 0.5em; |
|
} |
|
|
|
.bundle input { |
|
width: 24ex; |
|
} |
|
|
|
.valid::after { |
|
content: "✓" |
|
} |
|
|
|
label { |
|
width: 3em; |
|
margin-right: 1em; |
|
display: inline-block; |
|
} |
|
|
|
input:valid { |
|
border: 1px solid green; |
|
} |
|
|
|
.inputs > div { |
|
margin-bottom: 0.5em; |
|
} |
|
</style> |
|
</head> |
|
<body> |
|
<header><h2>Decoder ring</h2></header> |
|
<content id="main">Waiting for javascript to run...</content> |
|
<script type="text/javascript"> |
|
document.addEventListener("DOMContentLoaded", () => { |
|
try { |
|
ReactDOM.render(React.createElement(Decoder.BundlePicker), document.getElementById("main")) |
|
} catch (e) { |
|
const n = document.createElement("div"); |
|
n.innerText = `Error starting: ${e.message}`; |
|
document.getElementById("main").appendChild(n); |
|
} |
|
}); |
|
</script> |
|
</body> |
|
</html>
|
|
|