diff --git a/shine-UI/js/pages/channels-list.js b/shine-UI/js/pages/channels-list.js index e0d2d947..b48946b7 100644 --- a/shine-UI/js/pages/channels-list.js +++ b/shine-UI/js/pages/channels-list.js @@ -13,6 +13,7 @@ import { } from '../services/channels-ux.js'; import { makeShineChannelRoute } from '../services/shine-routes.js'; import { renderAvatar } from '../components/avatar-image.js'; +import { createOverflowDots } from '../components/overflow-dots.js'; import { parseDmTechBlocks } from '../services/dm-tech-blocks.js'; export const pageMeta = { id: 'channels-list', title: 'Каналы' }; @@ -1226,6 +1227,7 @@ function renderListContent({ screen, container, listState, navigate, refreshFeed const count = document.createElement('span'); count.className = 'unread channel-row-count'; const unreadCount = Number(channel.unreadCount || 0); + count.hidden = unreadCount <= 0; count.textContent = unreadCount > 0 ? String(unreadCount) : ''; count.classList.toggle('is-empty', unreadCount <= 0); diff --git a/shine-UI/styles/components.css b/shine-UI/styles/components.css index b1179a18..79ad1591 100644 --- a/shine-UI/styles/components.css +++ b/shine-UI/styles/components.css @@ -4208,6 +4208,16 @@ textarea.input { line-height: 1; } +.channels-screen--list .channel-row-count { + grid-row: 1; + align-self: start; + justify-self: end; +} + +.channels-screen--list .channel-row-count[hidden] { + display: none !important; +} + .channels-bottom-action { margin-top: 6px; min-height: 48px; @@ -5236,6 +5246,12 @@ textarea.input { gap: 6px; position: relative; min-width: 44px; + grid-template-rows: auto auto; +} + +.channels-screen--list .channel-row-time { + grid-row: 2; + align-self: end; } .channel-menu-trigger {