fix(ui): restore TopBar search + add notifications bell + theme to sidebar
Follow-up к MR !90 per user feedback iterations: 1) "в поиске по справочникам два крестика" — fixed в SearchInput: `type="search"` (native browser X) → `type="text"`. Custom onClear X остаётся единственным. Catalog input тоже type="text". 2) "блин два крестика было на топбар поиске а тут норм все. верни" — restore TopBar search input. Context-aware behavior сохранён: - На /dictionaries → live filter каталога через URL ?q= - На остальных routes → submit (Enter) → /search records search Single X confirmed by visual test. 3) "свитч темы можно тоже в профиль перенести" — ThemeSwitch переехал в Sidebar footer (рядом с RU/EN button). Right row в footer: lang button слева, theme switch (3 icons sun/moon/monitor) справа через ml-auto. 4) "руководство и версию оставить в топбар чтобы подсвечивать новинки" — Docs + VersionBadge stays in TopBar. Туда же добавлена NotificationsBell (placeholder Bell icon) — broadcast slot для webhook errors / draft reviews / system notices когда backend notifications stream появится.
This commit is contained in:
@@ -23,7 +23,10 @@ export const SearchInput = React.forwardRef<HTMLInputElement, SearchInputProps>(
|
||||
/>
|
||||
<Input
|
||||
ref={ref}
|
||||
type="search"
|
||||
// type="text" вместо "search" — native browser X (Chrome/Safari)
|
||||
// дублировал custom onClear X справа ("два крестика"). Custom X
|
||||
// имеет правильный onClick handler и tracks state, native — нет.
|
||||
type="text"
|
||||
value={value}
|
||||
className={cn('pl-8', hasValue && onClear && 'pr-8', className)}
|
||||
{...props}
|
||||
|
||||
Reference in New Issue
Block a user