Autorun latest day on local dev

main
Ashelyn Dawn 1 year ago
parent 54786f471e
commit c8d2d37918

@ -32,6 +32,12 @@ async function getDayList() {
document.querySelector('.loading').innerText = "Select a day"
document.querySelector('.loading').disabled = true
if (window.location.host.includes('tempest.local')) {
const lastDay = days[days.length - 1]
daySelector.value = lastDay
loadDay(lastDay).then(runDay)
}
}
async function loadDay(dayNum) {
@ -78,7 +84,7 @@ async function loadDay(dayNum) {
output.innerText = 'Loaded day ' + dayNum
}
function runLoaded(funcName, inputTextField, outputTextField) {
function runPart(funcName, inputTextField, outputTextField) {
const { memory } = wasmInstance.exports;
const wasmBuffer = memory.buffer;
@ -112,27 +118,14 @@ function runLoaded(funcName, inputTextField, outputTextField) {
return after - before
}
daySelector.value = ""
inputTextArea.value = ""
outputTextArea1.value = ""
outputTextArea2.value = ""
output.innerText = "Ready"
getDayList().then(() => {
daySelector.addEventListener('change', ev => {
loadDay(ev.target.value)
})
})
runButton.addEventListener('click', ev => {
function runDay() {
let part1run = null, part2run = null
try {
part1run = runLoaded('part1', inputTextArea, outputTextArea1).toFixed(2)
part1run = runPart('part1', inputTextArea, outputTextArea1).toFixed(2)
} catch { }
try {
part2run = runLoaded('part2', inputTextArea, outputTextArea2).toFixed(2)
part2run = runPart('part2', inputTextArea, outputTextArea2).toFixed(2)
} catch { }
if (part1run && part2run) {
@ -142,4 +135,18 @@ runButton.addEventListener('click', ev => {
} else {
output.innerText = `partial success; part 1: crashed, part 2 runtime: ${part2run}ms`
}
}
daySelector.value = ""
inputTextArea.value = ""
outputTextArea1.value = ""
outputTextArea2.value = ""
output.innerText = "Ready"
getDayList().then(() => {
daySelector.addEventListener('change', ev => {
loadDay(ev.target.value)
})
})
runButton.addEventListener('click', runDay)

Loading…
Cancel
Save