From 11ec350dfa926ad2c015f7b6f302028a58d552a2 Mon Sep 17 00:00:00 2001 From: Maxim Dolgolyov Date: Wed, 3 Jun 2026 13:47:07 +0300 Subject: [PATCH] =?UTF-8?q?fix(toast):=20=D0=BD=D0=BE=D1=80=D0=BC=D0=B0?= =?UTF-8?q?=D0=BB=D0=B8=D0=B7=D0=B0=D1=86=D0=B8=D1=8F=20=D1=82=D0=B8=D0=BF?= =?UTF-8?q?=D0=B0=20=E2=80=94=20'warning'/'ok'=20=D0=B1=D0=BE=D0=BB=D1=8C?= =?UTF-8?q?=D1=88=D0=B5=20=D0=BD=D0=B5=20=D1=81=D0=BB=D0=B8=D0=B2=D0=B0?= =?UTF-8?q?=D1=8E=D1=82=D1=81=D1=8F=20=D1=81=20=D1=84=D0=BE=D0=BD=D0=BE?= =?UTF-8?q?=D0=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit В CSS есть только классы .success/.error/.info/.warn, но код принимал любой type. 7 вызовов LS.toast(...,'warning') и 1 'ok' давали класс без фонового градиента → белый текст на светлой странице был невидим. Добавлен alias-map (warning→warn, ok→success, danger/err/fail→error) + fallback неизвестных в 'info', чтобы у toast всегда был фон. --- js/api.js | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/js/api.js b/js/api.js index bd0cc7d..b3299cb 100644 --- a/js/api.js +++ b/js/api.js @@ -335,6 +335,11 @@ function lsIcon(name, size = 18, cls = '') { /* ── Toast-уведомления ────────────────────────────────────────────────── */ function lsToast(message, type = 'info', duration = 3500) { + // нормализация типа: иначе неизвестный класс (напр. 'warning' вместо 'warn') + // остаётся без фонового градиента → белый текст сливается со страницей + const _tAlias = { warning: 'warn', danger: 'error', err: 'error', fail: 'error', ok: 'success' }; + type = _tAlias[type] || type; + if (!['success', 'error', 'info', 'warn'].includes(type)) type = 'info'; if (!document.getElementById('ls-toast-style')) { const s = document.createElement('style'); s.id = 'ls-toast-style';