Убрал длинное тире из BANNER_SLOGAN

This commit is contained in:
2026-08-08 23:25:25 +03:00
parent d7846ea923
commit c4a56d74c6
6 changed files with 28 additions and 11 deletions
+1 -1
View File
@@ -3,7 +3,7 @@ VITE_APP_TITLE=Генератор QR-кодов
# Плашка внизу: бренд, слоган и ссылка
VITE_BANNER_BRAND=iQR
VITE_BANNER_SLOGAN=qr-код без излишеств
VITE_BANNER_SLOGAN=qr-код без излишеств
VITE_BANNER_URL=https://github.com/IliaMiheev/iQR
# Акцентный цвет (hex, rgb или css-имя)
+2 -2
View File
@@ -8,8 +8,8 @@ services:
environment:
APP_TITLE: "Генератор QR-кодов"
BANNER_BRAND: "iQR"
BANNER_SLOGAN: "qr-код без излишеств"
BANNER_URL: "https://github.com/IliaMiheev/iQR"
BANNER_SLOGAN: "qr-код без излишеств"
BANNER_URL: "https://git.imiheev.online/admin/iQR"
ACCENT_COLOR: "#ff4500"
DEFAULT_THEME: "dark"
restart: unless-stopped
+3 -3
View File
@@ -2,8 +2,8 @@
set -eu
APP_TITLE="${APP_TITLE:-Генератор QR-кодов}"
BANNER_BRAND="${BANNER_BRAND:-iQR}"
BANNER_SLOGAN="${BANNER_SLOGAN:-qr-код без излишеств}"
BANNER_BRAND="${BANNER_BRAND-iQR}"
BANNER_SLOGAN="${BANNER_SLOGAN-qr-код без излишеств}"
BANNER_URL="${BANNER_URL:-https://github.com/IliaMiheev/iQR}"
ACCENT_COLOR="${ACCENT_COLOR:-#ff4500}"
DEFAULT_THEME="${DEFAULT_THEME:-dark}"
@@ -24,7 +24,7 @@ printf ' ───────────────────────
printf ' iQR · готов к работе\n'
printf ' ──────────────────────────────────────\n'
printf ' Заголовок : %s\n' "$APP_TITLE"
printf ' Бренд : %s %s\n' "$BANNER_BRAND" "$BANNER_SLOGAN"
printf ' Бренд : %s %s\n' "$BANNER_BRAND" "$BANNER_SLOGAN"
printf ' Ссылка : %s\n' "$BANNER_URL"
printf ' Акцент : %s\n' "$ACCENT_COLOR"
printf ' Тема : %s\n' "$DEFAULT_THEME"
+8 -1
View File
@@ -29,6 +29,12 @@ const statusClass = computed(() =>
errorColor.value === 'green' ? 'status--success' : 'status--error',
)
const showBanner = computed(() => {
const brand = String(config.bannerBrand ?? '').trim()
const slogan = String(config.bannerSlogan ?? '').trim()
return Boolean(brand && slogan)
})
function onKeydown(event) {
if (event.key === 'Escape' && showModal.value) {
closeQrModal()
@@ -118,6 +124,7 @@ onUnmounted(() => {
</div>
<a
v-if="showBanner"
:href="config.bannerUrl"
target="_blank"
rel="noopener noreferrer"
@@ -125,7 +132,7 @@ onUnmounted(() => {
:title="config.bannerBrand"
>
<span class="site-banner__brand">{{ config.bannerBrand }}</span>
<span class="site-banner__slogan">{{ config.bannerSlogan }}</span>
<span class="site-banner__slogan"> {{ config.bannerSlogan }}</span>
</a>
</main>
+1 -1
View File
@@ -1,7 +1,7 @@
export const defaultConfig = {
title: 'Генератор QR-кодов',
bannerBrand: 'iQR',
bannerSlogan: 'qr-код без излишеств',
bannerSlogan: 'qr-код без излишеств',
bannerUrl: 'https://github.com/IliaMiheev/iQR',
accentColor: '#ff4500',
defaultTheme: 'dark',
+13 -3
View File
@@ -3,14 +3,17 @@ import { defaultConfig, normalizeTheme } from './defaults'
function fromBuildEnv() {
const env = import.meta.env
return pickDefined({
const config = pickDefined({
title: env.VITE_APP_TITLE,
bannerBrand: env.VITE_BANNER_BRAND,
bannerSlogan: env.VITE_BANNER_SLOGAN,
bannerUrl: env.VITE_BANNER_URL,
accentColor: env.VITE_ACCENT_COLOR,
defaultTheme: env.VITE_DEFAULT_THEME,
})
assignIfDefined(config, 'bannerBrand', env.VITE_BANNER_BRAND)
assignIfDefined(config, 'bannerSlogan', env.VITE_BANNER_SLOGAN)
return config
}
function pickDefined(source) {
@@ -19,6 +22,11 @@ function pickDefined(source) {
)
}
function assignIfDefined(target, key, value) {
if (value === undefined) return
target[key] = value
}
export async function loadConfig() {
let runtime = {}
@@ -45,6 +53,8 @@ export async function loadConfig() {
}
}
config.bannerBrand = String(config.bannerBrand ?? '').trim()
config.bannerSlogan = String(config.bannerSlogan ?? '').trim()
config.defaultTheme = normalizeTheme(config.defaultTheme)
return config