+ {Array.from({ length: startingDayOfWeek }).map((_, i) => (
+
+ ))}
+
+ {Array.from({ length: daysInMonth }).map((_, i) => {
+ const day = i + 1;
+ const date = new Date(
+ currentMonth.getFullYear(),
+ currentMonth.getMonth(),
+ day,
+ );
+ const isDisabled = isDateDisabled(date);
+ const isSelected =
+ selectedDate &&
+ selectedDate.getDate() === day &&
+ selectedDate.getMonth() === currentMonth.getMonth() &&
+ selectedDate.getFullYear() === currentMonth.getFullYear();
+ const isToday =
+ new Date().toDateString() === date.toDateString();
+
+ return (
+
+ );
+ })}
+