Update pnpm-lock.yaml for Radix UI package versions and enhance popover styling in CSS
ci / build-backend (push) Successful in 2m51s
ci / build-frontend (push) Successful in 1m4s
ci / tests (push) Successful in 2m41s
ci / sonar (push) Successful in 5m50s

Updated the pnpm-lock.yaml to override versions of '@radix-ui/react-dismissable-layer' and '@radix-ui/react-focus-scope' to their latest releases. Enhanced the CSS for popover components by introducing a new '.crt-popover' class for improved styling, ensuring a more distinct appearance over other content. Refactored related components to utilize the new class, improving visual consistency across the application.
This commit is contained in:
Leonid Pershin
2026-07-27 11:58:38 +03:00
parent 860cde19a3
commit 36c70a61df
7 changed files with 41 additions and 83 deletions
@@ -1,20 +1,16 @@
import { useTranslation } from 'react-i18next'
import { GalleryBrowser } from './ImageGallery'
/**
* Отдельная страница «Галерея»: просмотр/загрузка/удаление всех изображений приложения.
*
* Страница занимает экран целиком и сама не прокручивается: списка на сотни картинок здесь нет
* пагинации, и две полосы прокрутки — внешняя и внутри сетки — мешали бы друг другу.
* Своего заголовка нет: страница целиком об одном, и её название уже написано в активной вкладке
* админки. Страница занимает экран и сама не прокручивается — пагинации у списка нет, а две полосы
* прокрутки (внешняя и внутри сетки) мешали бы друг другу.
*/
export function GalleryPanel() {
const { t } = useTranslation()
return (
<div className="flex h-[calc(100vh-13rem)] min-h-96 flex-col gap-4">
<h2 className="crt-glow text-xl font-semibold">{t('admin.gallery.title')}</h2>
<div className="crt-panel flex min-h-0 flex-1 flex-col rounded-md p-4">
<GalleryBrowser fill />
</div>
<div className="crt-panel flex h-[calc(100vh-11rem)] min-h-96 flex-col rounded-md p-4">
<GalleryBrowser fill />
</div>
)
}
@@ -117,8 +117,9 @@ export function ShowPicker({
}
return (
// modal — потому что пикер живёт внутри диалогов: те держат фокус-ловушку, и без своего
// слоя поповер отдавал бы фокус обратно диалогу, а в строку поиска нельзя было бы печатать.
// modal — потому что пикер живёт внутри диалогов: поповер регистрирует свой слой поверх
// диалогового, забирает фокус-ловушку и получает указатель. Работает это лишь пока Radix
// загружен одним экземпляром — единственность версий закреплена в pnpm-workspace.yaml.
<Popover modal open={open} onOpenChange={(next) => (next ? setOpen(true) : close())}>
<PopoverTrigger
className={cn(