diff --git a/server/index.ts b/server/index.ts index ef2d971..086ab02 100644 --- a/server/index.ts +++ b/server/index.ts @@ -42,6 +42,12 @@ const server = Bun.serve({ '/favicon.webp': { GET: () => new Response(Bun.file(`${PUBLIC_DIR}/favicon.webp`)), }, + '/icon-512.webp': { + GET: () => new Response(Bun.file(`${PUBLIC_DIR}/icon-512.webp`)), + }, + '/manifest.json': { + GET: () => new Response(Bun.file(`${PUBLIC_DIR}/manifest.json`)), + }, '/htmx.js': { GET: async (req) => maybeCompress(req, await Bun.file(`${PUBLIC_DIR}/htmx.min.js`).text(), 'text/javascript'), diff --git a/server/public/admin.css b/server/public/admin.css index b7cb953..50bbac9 100644 --- a/server/public/admin.css +++ b/server/public/admin.css @@ -164,7 +164,7 @@ h2 { .link-button { display: inline-block; padding: 0.625rem 1.25rem; - background: #007bff; + background: #8159b8; color: white; text-decoration: none; border-radius: 0.25rem; @@ -174,7 +174,7 @@ h2 { } .link-button:hover { - background: #0056b3; + background: #6b4a99; } .loading { diff --git a/server/public/admin.html b/server/public/admin.html index 1fa3159..8a4681e 100644 --- a/server/public/admin.html +++ b/server/public/admin.html @@ -4,7 +4,9 @@ SUP Admin + + @@ -22,10 +24,13 @@

Signal

+ hx-trigger="load, accountLinked from:body"> Loading...
-
+
diff --git a/server/public/icon-512.webp b/server/public/icon-512.webp new file mode 100644 index 0000000..c6be5f3 Binary files /dev/null and b/server/public/icon-512.webp differ diff --git a/server/public/manifest.json b/server/public/manifest.json new file mode 100644 index 0000000..4672719 --- /dev/null +++ b/server/public/manifest.json @@ -0,0 +1,23 @@ +{ + "name": "SUP Admin", + "short_name": "SUP", + "description": "Signal Unified Push Admin Panel", + "start_url": "/", + "display": "standalone", + "background_color": "#1a1a1a", + "theme_color": "#8159b8", + "icons": [ + { + "src": "/favicon.webp", + "sizes": "32x32", + "type": "image/webp", + "purpose": "any" + }, + { + "src": "/icon-512.webp", + "sizes": "512x512", + "type": "image/webp", + "purpose": "any maskable" + } + ] +} diff --git a/server/routes/admin.ts b/server/routes/admin.ts index 5484949..b0198a2 100644 --- a/server/routes/admin.ts +++ b/server/routes/admin.ts @@ -35,7 +35,10 @@ export const handleHealthFragment = async () => { `; return new Response(html, { - headers: { 'content-type': 'text/html' }, + headers: { + 'content-type': 'text/html', + 'HX-Trigger': linked ? 'accountLinked' : '', + }, }); };