fix: birth-date-calendar

This commit is contained in:
João Gustavo 2025-12-03 16:16:33 -03:00
parent 47965fe78a
commit dddbd1e15b
4 changed files with 14 additions and 2 deletions

View File

@ -1041,7 +1041,11 @@ export function CalendarRegistrationForm({ formData, onFormChange, createMode =
const d = new Date(s.datetime);
const hh = String(d.getHours()).padStart(2, '0');
const mm = String(d.getMinutes()).padStart(2, '0');
const dateOnly = d.toISOString().split('T')[0];
// Use local date components instead of toISOString to avoid timezone conversion
const year = d.getFullYear();
const month = String(d.getMonth() + 1).padStart(2, '0');
const day = String(d.getDate()).padStart(2, '0');
const dateOnly = `${year}-${month}-${day}`;
return dateOnly === date && `${hh}:${mm}` === time;
} catch (e) {
return false;

View File

@ -835,6 +835,10 @@ async function handleSubmit(ev: React.FormEvent) {
selected={form.data_nascimento ?? undefined}
onSelect={(date) => setField("data_nascimento", date ?? null)}
initialFocus
captionLayout="dropdown"
fromYear={1900}
toYear={new Date().getFullYear()}
disabled={(date) => date > new Date()}
/>
</PopoverContent>
</Popover>

View File

@ -467,6 +467,10 @@ export function PatientRegistrationForm({
selected={form.birth_date ?? undefined}
onSelect={(date) => setField("birth_date", date || null)}
initialFocus
captionLayout="dropdown"
fromYear={1900}
toYear={new Date().getFullYear()}
disabled={(date) => date > new Date()}
/>
</PopoverContent>
</Popover>

View File

@ -30,7 +30,7 @@ function PopoverContent({
align={align}
sideOffset={sideOffset}
className={cn(
"bg-white text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-[9999] w-72 origin-(--radix-popover-content-transform-origin) rounded-md border p-4 shadow-md",
"bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-[9999] w-72 origin-(--radix-popover-content-transform-origin) rounded-md border p-4 shadow-md",
className
)}
{...props}