feat: add SAC app icon to favicon, sidebar, and login page

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-05-28 14:39:57 +10:00
parent ac3c20b7db
commit daec333dbe
6 changed files with 93 additions and 10 deletions
+41 -8
View File
@@ -1,6 +1,12 @@
<template>
<aside class="sac-sidebar">
<div class="sac-sidebar-brand">{{ appTitle }}</div>
<div class="sac-sidebar-brand">
<img src="/sac-icon.png" alt="" class="sac-brand-logo" width="40" height="40" />
<div class="sac-brand-text">
<span class="sac-brand-name">{{ appName }}</span>
<span class="sac-brand-version">v.{{ appVersion }}</span>
</div>
</div>
<nav class="sac-sidebar-nav" aria-label="Основная навигация">
<RouterLink
v-for="item in navItems"
@@ -25,9 +31,10 @@
<script setup lang="ts">
import { useRoute, useRouter } from "vue-router";
import { clearToken } from "../api";
import { APP_VERSION_LABEL } from "../version";
import { APP_NAME, APP_VERSION } from "../version";
const appTitle = APP_VERSION_LABEL;
const appName = APP_NAME;
const appVersion = APP_VERSION;
const route = useRoute();
const router = useRouter();
@@ -70,16 +77,42 @@ function logout() {
}
.sac-sidebar-brand {
font-weight: 700;
color: #fff;
font-size: 0.82rem;
line-height: 1.35;
display: flex;
align-items: center;
gap: 0.65rem;
padding: 0.5rem 0.75rem 0.85rem;
white-space: nowrap;
border-bottom: 1px solid #2a3441;
margin-bottom: 0.5rem;
}
.sac-brand-logo {
flex-shrink: 0;
border-radius: 8px;
display: block;
}
.sac-brand-text {
display: flex;
flex-direction: column;
gap: 0.1rem;
min-width: 0;
}
.sac-brand-name {
font-weight: 700;
color: #fff;
font-size: 0.78rem;
line-height: 1.25;
white-space: nowrap;
}
.sac-brand-version {
color: #9aa4b2;
font-size: 0.72rem;
font-weight: 500;
white-space: nowrap;
}
.sac-sidebar-nav {
display: flex;
flex-direction: column;
+37 -2
View File
@@ -1,6 +1,10 @@
<template>
<div class="card" style="max-width: 360px; margin: 4rem auto">
<h1 style="margin-top: 0">Вход в SAC</h1>
<div class="card login-card">
<div class="login-brand">
<img src="/sac-icon.png" alt="" class="login-brand-icon" width="64" height="64" />
<h1 class="login-title">Вход в SAC</h1>
<p class="login-subtitle">Security Alert Center</p>
</div>
<form @submit.prevent="submit">
<p>
<label>Логин<br />
@@ -46,3 +50,34 @@ async function submit() {
}
}
</script>
<style scoped>
.login-card {
max-width: 360px;
margin: 4rem auto;
}
.login-brand {
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
margin-bottom: 1.25rem;
}
.login-brand-icon {
border-radius: 12px;
margin-bottom: 0.75rem;
}
.login-title {
margin: 0;
font-size: 1.35rem;
}
.login-subtitle {
margin: 0.35rem 0 0;
color: #9aa4b2;
font-size: 0.9rem;
}
</style>