improvement: fdi tooth chart selection modes polished. bugs related to teeth selecyion fixed.

This commit is contained in:
2026-07-18 00:02:40 +03:30
parent 4b2349228a
commit 0740493384
23 changed files with 384 additions and 161 deletions

View File

@@ -38,7 +38,7 @@ import type {
PaginatedLabCases,
} from '@/types/cases';
const PAGE_SIZE = 20;
const PAGE_SIZE = 10;
export function CasesPage() {
const t = useTranslations('cases');
@@ -308,9 +308,9 @@ export function CasesPage() {
<p className="text-sm text-text-muted mt-1">{t('subtitle')}</p>
</div>
<div className="grid gap-4 lg:grid-cols-[minmax(300px,380px)_1fr]">
<div className="grid gap-4 lg:grid-cols-[minmax(300px,380px)_1fr] lg:items-stretch">
<section
className={`rounded-lg border border-border bg-surface p-3 sm:p-4 space-y-3 flex flex-col min-h-0 ${
className={`rounded-lg border border-border bg-surface p-3 sm:p-4 space-y-3 flex flex-col min-h-0 h-full lg:min-h-[420px] ${
mobileDetailOpen && selectedCaseId ? 'hidden lg:flex' : 'flex'
}`}
>
@@ -394,13 +394,13 @@ export function CasesPage() {
</Button>
) : null}
<div className="flex-1 min-h-0">
<div className="flex-1 min-h-0 overflow-y-auto">
{loadingList ? (
<p className="text-sm text-text-muted">{tCommon('loading')}</p>
) : cases.length === 0 ? (
<p className="text-sm text-text-muted">{t('emptyList')}</p>
) : (
<ul className="space-y-2 max-h-[55vh] overflow-y-auto pr-1">
<ul className="space-y-2 pr-1">
{cases.map((item) => {
const isActive = item.id === selectedCaseId;
@@ -466,7 +466,7 @@ export function CasesPage() {
</div>
{pagination.totalPages > 1 ? (
<div className="flex items-center justify-between gap-2 pt-2 border-t border-border">
<div className="flex shrink-0 items-center justify-between gap-2 pt-2 border-t border-border">
<Button
variant="outline"
size="sm"