He construido un calendario usando dayjs. Para crear un calendario cuadrado, he incluido los días que comienzan en domingo del mes anterior e incluyo los días que terminan en domingo del mes siguiente.
Por ejemplo, aquí está el código que estoy ejecutando para obtener los días restantes hasta el domingo.
{range(6 - weekDayOfLast).map((dayIdx) => ())}weekDayOfLast significa el día del 0 al 6 en el que cae el último día del mes.
Necesito aplicar CSS condicional a todos los rincones del calendario, pero para hacerlo debo calcular el primer día del calendario, el último día de la primera semana, el primer día de la última semana y el último día Del mes.
Estoy luchando con la forma de resolver esto.
El único que he logrado hasta ahora es el último día del mes:
dayIdx + 1 === 6 - weekDayOfLast ? "rounded-br-lg" : ""Calculo la mitad del calendario mapeando los días del mes, así:
{range(daysInMonth).map((dayIdx) => ()))}Y los primeros días del calendario calculando el día en que cae el primer día del mes, por ejemplo:
{range(daysInMonth).map((dayIdx) => ()}