server
Some checks failed
Build / build (push) Failing after 6m4s
Test / build (push) Failing after 6m33s

This commit is contained in:
Chuck Smith
2024-04-02 12:21:41 -04:00
parent 862119e90e
commit 4c9ec5aaaa
77 changed files with 1181 additions and 244 deletions

View File

@@ -0,0 +1,79 @@
(function () {
var editor = ace.edit('code');
editor.setTheme('ace/theme/tomorrow_night_eighties');
editor.session.setMode('ace/mode/golang');
editor.focus();
var localStorage = window.localStorage || {
setItem: function () {
}, getItem: function () {
return '';
}
};
var savedCode = localStorage.getItem('code') || '';
if (savedCode === '') {
savedCode = 'println("Hello World!")\n';
}
editor.setValue(savedCode, 1);
$('#code').on('keydown', function (e) {
var meta = e.metaKey || e.ctrlKey;
var keyCode = (e.keyCode || e.which);
var enter = keyCode === 10 || keyCode === 13;
var format = keyCode === 32;
if (meta && format) {
e.preventDefault();
$('#output').html('<p class="ide">Formatting...</p>');
$.ajax({
url: '/api/format',
method: 'POST',
data: {
code: editor.getValue()
},
success: function (data) {
editor.setValue(data, 1);
$('#output').html('');
},
error: function (xhr, status, text) {
var response = xhr.responseText.replace(/\n/g, '<br/>');
if (response) {
$('#output').html('<p class="msg-err">' + response + '</p>');
localStorage.setItem('code', editor.getValue());
} else {
$('#output').html('<p class="msg-err">Looks like the server is not reachable.</p>');
}
}
});
}
if (meta && enter) {
e.preventDefault();
$('#output').html('');
$('#output').append('<p class="ide">Executing...</p>');
$.ajax({
url: '/api/run',
method: 'POST',
data: {
code: editor.getValue()
},
success: function (data) {
var output = data.replace(/\n/g, '<br/>');
$('#output').html('<p class="msg">' + output + '</p>');
localStorage.setItem('code', editor.getValue());
},
error: function (xhr, status, text) {
var response = xhr.responseText.replace(/\n/g, '<br/>');
if (response) {
$('#output').html('<p class="msg-err">' + response + '</p>');
localStorage.setItem('code', editor.getValue());
} else {
$('#output').html('<p class="msg-err">Looks like the server is not reachable.</p>');
}
}
});
}
});
})();