add type extension on day column

This commit is contained in:
sianida26 2024-06-26 21:28:09 +07:00
parent 495c6392fe
commit 15671361f7
2 changed files with 6 additions and 6 deletions

View File

@ -6,23 +6,23 @@ import Event from "./types/Event";
dayjs.extend(isoWeek); dayjs.extend(isoWeek);
dayjs.extend(customParseFormat); dayjs.extend(customParseFormat);
type Props = { type Props<T extends Record<string, unknown> & Event> = {
day: dayjs.Dayjs; day: dayjs.Dayjs;
startTime: dayjs.Dayjs; startTime: dayjs.Dayjs;
endTime: dayjs.Dayjs; endTime: dayjs.Dayjs;
events: Event[]; events: T[];
renderCell?: (date: dayjs.Dayjs) => JSX.Element; renderCell?: (date: dayjs.Dayjs) => JSX.Element;
renderEvent?: (event: Event) => JSX.Element; renderEvent?: (event: T) => JSX.Element;
}; };
export default function DayColumn({ export default function DayColumn<T extends Record<string, unknown> & Event>({
day, day,
startTime, startTime,
endTime, endTime,
events, events,
renderCell, renderCell,
renderEvent, renderEvent,
}: Props) { }: Props<T>) {
const isToday = day.isSame(dayjs(), "day"); const isToday = day.isSame(dayjs(), "day");
return ( return (

View File

@ -17,7 +17,7 @@ type Props<T extends Record<string, unknown> & Event> = {
endTime?: dayjs.Dayjs; endTime?: dayjs.Dayjs;
events: T[]; events: T[];
renderCell?: (date: dayjs.Dayjs) => JSX.Element; renderCell?: (date: dayjs.Dayjs) => JSX.Element;
renderEvent?: (event: Event) => JSX.Element; renderEvent?: (event: T) => JSX.Element;
onDateChange?: (date: Dayjs) => void; onDateChange?: (date: Dayjs) => void;
header?: { header?: {
center?: JSX.Element; center?: JSX.Element;