2 Commits
Author SHA1 Message Date
Alexey NovikovandCursor 73b43e1f24 Center the footer lockup in its column.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-16 18:47:13 +03:00
Alexey NovikovandCursor 5274520a33 Replace the header and footer mark with the official stacked MONIKI lockup.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-16 18:31:42 +03:00
9 changed files with 29 additions and 9 deletions
+14
View File
@@ -2,6 +2,18 @@
Формат основан на [Keep a Changelog](https://keepachangelog.com/ru/1.1.0/), версии — [SemVer](https://semver.org/lang/ru/). Формат основан на [Keep a Changelog](https://keepachangelog.com/ru/1.1.0/), версии — [SemVer](https://semver.org/lang/ru/).
## [1.0.4] — 2026-09-16
### Сайт
- Логотип в подвале выровнен по центру колонки
## [1.0.3] — 2026-09-16
### Сайт
- Обновлён логотип МОНИКИ в шапке и подвале
## [1.0.2] — 2026-09-16 ## [1.0.2] — 2026-09-16
### Сайт ### Сайт
@@ -37,6 +49,8 @@
- Docker Compose для локальной БД - Docker Compose для локальной БД
- Секреты и логины в git не входят - Секреты и логины в git не входят
[1.0.4]: https://git.myunion.pro/Alex/Moniki_uslugi/src/tag/v1.0.4
[1.0.3]: https://git.myunion.pro/Alex/Moniki_uslugi/src/tag/v1.0.3
[1.0.2]: https://git.myunion.pro/Alex/Moniki_uslugi/src/tag/v1.0.2 [1.0.2]: https://git.myunion.pro/Alex/Moniki_uslugi/src/tag/v1.0.2
[1.0.1]: https://git.myunion.pro/Alex/Moniki_uslugi/src/tag/v1.0.1 [1.0.1]: https://git.myunion.pro/Alex/Moniki_uslugi/src/tag/v1.0.1
[1.0.0]: https://git.myunion.pro/Alex/Moniki_uslugi/src/tag/v1.0.0 [1.0.0]: https://git.myunion.pro/Alex/Moniki_uslugi/src/tag/v1.0.0
+1 -1
View File
@@ -4,7 +4,7 @@
Репозиторий: [Moniki_uslugi](https://git.myunion.pro/Alex/Moniki_uslugi) на [git.myunion.pro](https://git.myunion.pro/). Репозиторий: [Moniki_uslugi](https://git.myunion.pro/Alex/Moniki_uslugi) на [git.myunion.pro](https://git.myunion.pro/).
Текущая версия: **v1.0.2** (см. [CHANGELOG.md](CHANGELOG.md)). Текущая версия: **v1.0.4** (см. [CHANGELOG.md](CHANGELOG.md)).
## Что внутри ## Что внутри
+1 -1
View File
@@ -1,6 +1,6 @@
{ {
"name": "@moniki/cms", "name": "@moniki/cms",
"version": "1.0.2", "version": "1.0.4",
"private": true, "private": true,
"type": "module", "type": "module",
"scripts": { "scripts": {
+1 -1
View File
@@ -1,6 +1,6 @@
{ {
"name": "@moniki/web", "name": "@moniki/web",
"version": "1.0.2", "version": "1.0.4",
"private": true, "private": true,
"scripts": { "scripts": {
"dev": "next dev -p 3000", "dev": "next dev -p 3000",
Binary file not shown.

Before

Width:  |  Height:  |  Size: 130 KiB

After

Width:  |  Height:  |  Size: 11 KiB

+3 -2
View File
@@ -7,6 +7,7 @@ import { ScrollToTop } from "@/components/layout/ScrollToTop";
import { ThemeProvider } from "@/components/layout/ThemeProvider"; import { ThemeProvider } from "@/components/layout/ThemeProvider";
import { CookieBanner } from "@/components/legal/CookieBanner"; import { CookieBanner } from "@/components/legal/CookieBanner";
import { A11Y_BOOTSTRAP } from "@/lib/a11y"; import { A11Y_BOOTSTRAP } from "@/lib/a11y";
import { APP_VERSION } from "@/lib/version";
import { THEME_BOOTSTRAP } from "@/lib/theme"; import { THEME_BOOTSTRAP } from "@/lib/theme";
import { routing, type Locale } from "@/i18n/routing"; import { routing, type Locale } from "@/i18n/routing";
import { Manrope } from "next/font/google"; import { Manrope } from "next/font/google";
@@ -40,8 +41,8 @@ export async function generateMetadata({
}, },
description: t("fullName"), description: t("fullName"),
icons: { icons: {
icon: "/logo.png", icon: `/logo.png?v=${APP_VERSION}`,
apple: "/logo.png", apple: `/logo.png?v=${APP_VERSION}`,
}, },
}; };
} }
+5 -1
View File
@@ -71,7 +71,11 @@ export async function Footer() {
<footer className="mt-auto border-t border-[var(--border)] bg-[var(--surface)]"> <footer className="mt-auto border-t border-[var(--border)] bg-[var(--surface)]">
<div className="mx-auto grid max-w-6xl gap-10 px-4 py-12 sm:px-6 md:grid-cols-2 lg:grid-cols-5"> <div className="mx-auto grid max-w-6xl gap-10 px-4 py-12 sm:px-6 md:grid-cols-2 lg:grid-cols-5">
<div> <div>
<Logo imgClassName="h-16 w-16" showTagline={false} /> <Logo
className="w-full justify-center"
imgClassName="h-20 w-auto max-h-none sm:h-24"
showTagline={false}
/>
<p className="mt-2 text-sm leading-relaxed text-[var(--text-muted)]">{footer("about")}</p> <p className="mt-2 text-sm leading-relaxed text-[var(--text-muted)]">{footer("about")}</p>
<p className="mt-4 text-sm text-[var(--neutral-700)]">{hero("address")}</p> <p className="mt-4 text-sm text-[var(--neutral-700)]">{hero("address")}</p>
<p className="mt-1 text-sm font-semibold text-[var(--brand-700)]"> <p className="mt-1 text-sm font-semibold text-[var(--brand-700)]">
+3 -2
View File
@@ -1,4 +1,5 @@
import { Link } from "@/i18n/routing"; import { Link } from "@/i18n/routing";
import { APP_VERSION } from "@/lib/version";
import { cn } from "@/lib/utils"; import { cn } from "@/lib/utils";
export function Logo({ export function Logo({
@@ -16,9 +17,9 @@ export function Logo({
<Link href="/" className={cn("group flex items-center gap-2.5", className)}> <Link href="/" className={cn("group flex items-center gap-2.5", className)}>
{/* eslint-disable-next-line @next/next/no-img-element */} {/* eslint-disable-next-line @next/next/no-img-element */}
<img <img
src="/logo.png" src={`/logo.png?v=${APP_VERSION}`}
alt="МОНИКИ" alt="МОНИКИ"
className={cn("h-12 w-12 shrink-0 rounded-full object-contain", imgClassName)} className={cn("h-12 w-auto max-h-14 shrink-0 object-contain sm:h-14", imgClassName)}
/> />
{showTagline && tagline ? ( {showTagline && tagline ? (
<span className="hidden max-w-[7.5rem] text-[11px] leading-tight text-[var(--neutral-500)] xl:block"> <span className="hidden max-w-[7.5rem] text-[11px] leading-tight text-[var(--neutral-500)] xl:block">
+1 -1
View File
@@ -1,6 +1,6 @@
{ {
"name": "moniki-platnye-uslugi", "name": "moniki-platnye-uslugi",
"version": "1.0.2", "version": "1.0.4",
"private": true, "private": true,
"scripts": { "scripts": {
"dev": "pnpm -r --parallel dev", "dev": "pnpm -r --parallel dev",