Ai-Slop #1

Merged
igodin merged 4 commits from Ai-Slop into dev 2026-07-27 17:14:39 +00:00
2 changed files with 24 additions and 19 deletions
Showing only changes of commit d15838d970 - Show all commits

View File

@ -8,18 +8,22 @@
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=IBM+Plex+Sans:wght@400;500;600&display=swap" rel="stylesheet"> <link href="https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=IBM+Plex+Sans:wght@400;500;600&display=swap" rel="stylesheet">
<style> <style>
:root { @import url('https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700&display=swap');
--ground: #E9EBEC;
--card: #FFFFFF;
--ink: #14181A;
--muted: #6C767C;
--rule: #D3D8DA;
--signal: #14684C;
--signal-soft: #E2F0EA;
--alert: #9B3520;
--sans: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; :root {
--ground: hsl(210, 18%, 8%);
--card: hsl(210, 16%, 13%);
--ink: hsl(30, 30%, 96%);
--muted: hsl(215, 12%, 68%);
--rule: hsl(210, 12%, 24%);
--signal: hsl(28, 95%, 58%);
--signal-soft: hsl(28, 70%, 22%);
--alert: hsl(14, 90%, 58%);
--font-ui: 'Outfit', system-ui, -apple-system, 'Segoe UI', sans-serif;
--mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace; --mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
} }
* { box-sizing: border-box; } * { box-sizing: border-box; }
@ -29,9 +33,9 @@ body {
min-height: 100vh; min-height: 100vh;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
font-family: var(--font-ui);
background: var(--ground); background: var(--ground);
color: var(--ink); color: var(--ink);
font-family: var(--sans);
font-size: 15px; font-size: 15px;
line-height: 1.5; line-height: 1.5;
-webkit-font-smoothing: antialiased; -webkit-font-smoothing: antialiased;
@ -140,7 +144,7 @@ button, .button {
border: none; border: none;
background: var(--ink); background: var(--ink);
color: var(--ground); color: var(--ground);
font-family: var(--sans); font-family: var(--font-ui);
font-size: 14px; font-size: 14px;
font-weight: 500; font-weight: 500;
text-decoration: none; text-decoration: none;
@ -271,9 +275,9 @@ button.quiet:hover { background: none; color: var(--ink); }
footer { footer {
margin-top: 28px; margin-top: 28px;
font-family: var(--mono); font-family: var(--font-ui);
font-size: 11px; font-size: 11px;
color: var(--muted); color: var(--ink);
} }
body > footer { body > footer {
@ -413,7 +417,7 @@ function render() {
} }
if (!data.tickets.length) { if (!data.tickets.length) {
html += `<div class="empty"><p>Nothing closed yet. Tickets appear here within a minute of being closed.</p></div>`; html += `<div class="empty"><p>Nothing closed yet.</p></div>`;
} else { } else {
html += '<div class="feed">' + data.tickets.map(renderTicket).join('') + '</div>'; html += '<div class="feed">' + data.tickets.map(renderTicket).join('') + '</div>';
} }
@ -469,8 +473,9 @@ setInterval(load, 5000); // pull fresh state from the server
setInterval(render, 20000); // re-age the rails between pulls setInterval(render, 20000); // re-age the rails between pulls
</script> </script>
<footer> <footer>
<p>© 2026 Isaac Godin. All rights reserved.</p> <p>© 2026 <span style="color: hsl(28, 95%, 58%);">Isaac Godin</span>. All rights reserved.</p>
<p>Design and Credits: <a href="https://www.mccs.me.edu/">Isaac Godin</a></p> <p>Design and Credits: <span style="color: hsl(28, 95%, 58%);">Isaac Godin</span></p>
</footer> </footer>
</body> </body>
</html> </html>

View File

@ -58,7 +58,7 @@ function pollForToken(deviceCode, interval, expiresIn) {
const timer = setInterval(async () => { const timer = setInterval(async () => {
if (Date.now() > deadline) { if (Date.now() > deadline) {
clearInterval(timer); clearInterval(timer);
reject(new Error('The authorization code expired. Connect again.')); reject(new Error('Expired try again.'));
return; return;
} }