diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index d368d2b..e01e3c3 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -6,7 +6,7 @@ on: - main env: - VERSION: 1.4.0 + VERSION: 1.4.1 jobs: # ЧАСТЬ 1: Собираем образы и кладем в Gitea (чтобы делиться с ребятами) diff --git a/Directory.Build.props b/Directory.Build.props index 8769be4..c60d6d3 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -1,6 +1,6 @@ - 1.4.0 + 1.4.1 net10.0 preview enable diff --git a/README.md b/README.md index b6071ff..cc704cc 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ Проект разработан с упором на производительность, архитектуру Vertical Slice, Native AOT (для бота) и удобство развертывания с использованием .NET Aspire. -**Текущая версия:** `v1.4.0`. +**Текущая версия:** `v1.4.1`. --- diff --git a/compose.yaml b/compose.yaml index e6eb6a5..5e807a8 100644 --- a/compose.yaml +++ b/compose.yaml @@ -17,7 +17,7 @@ services: retries: 10 bot: - image: git.codeanddice.ru/toutsu/gmrelay-bot:1.4.0 + image: git.codeanddice.ru/toutsu/gmrelay-bot:1.4.1 restart: always depends_on: db: @@ -29,7 +29,7 @@ services: - gmrelay web: - image: git.codeanddice.ru/toutsu/gmrelay-web:1.4.0 + image: git.codeanddice.ru/toutsu/gmrelay-web:1.4.1 restart: always depends_on: db: diff --git a/src/GmRelay.Web/wwwroot/app.css b/src/GmRelay.Web/wwwroot/app.css index cde001b..1e4ac21 100644 --- a/src/GmRelay.Web/wwwroot/app.css +++ b/src/GmRelay.Web/wwwroot/app.css @@ -1,5 +1,5 @@ /* ============================================ - GM-Relay Design System v1.4.0 + GM-Relay Design System v1.4.1 Dark RPG Dashboard Theme ============================================ */ @@ -363,6 +363,11 @@ input[type="datetime-local"]::-webkit-calendar-picker-indicator { filter: invert(0.7); } +select option { + background: var(--bg-secondary); + color: var(--text-primary); +} + /* === Tables === */ .gm-table { width: 100%; diff --git a/tests/GmRelay.Bot.Tests/Web/WebStylesTests.cs b/tests/GmRelay.Bot.Tests/Web/WebStylesTests.cs new file mode 100644 index 0000000..18d123d --- /dev/null +++ b/tests/GmRelay.Bot.Tests/Web/WebStylesTests.cs @@ -0,0 +1,31 @@ +namespace GmRelay.Bot.Tests.Web; + +public sealed class WebStylesTests +{ + [Fact] + public async Task AppCss_ShouldStyleNativeSelectOptionsForReadableDropdowns() + { + var css = await File.ReadAllTextAsync(FindRepositoryFile("src/GmRelay.Web/wwwroot/app.css")); + + Assert.Matches( + @"select\s+option\s*\{[^}]*background:\s*var\(--bg-secondary\);[^}]*color:\s*var\(--text-primary\);", + css); + } + + private static string FindRepositoryFile(string relativePath) + { + var directory = new DirectoryInfo(AppContext.BaseDirectory); + while (directory is not null) + { + var candidate = Path.Combine(directory.FullName, relativePath); + if (File.Exists(candidate)) + { + return candidate; + } + + directory = directory.Parent; + } + + throw new FileNotFoundException($"Could not locate repository file '{relativePath}'."); + } +}