Turnos de noche en el calendario — ahora se ve que terminas a las 07:00, no empiezas
Antes un turno de 21:00–07:00 aparecía igual en ambos días y parecía un doble turno. Ahora el segundo día muestra claramente 'termina 07:00' con flecha hacia atrás — sin dudas.

Lucía es enfermera y hace turnos de noche. Mete "Turno 21–07" en el calendario, fija la fecha en miércoles, y algo cierto pasa: el turno se extiende pasada la medianoche al jueves. Hasta ahí bien. Pero lo que mostrábamos antes — "21:00–07:00" tanto el miércoles como el jueves — daba la impresión de que hacía dos turnos de noche seguidos. Ella sabía cómo era, pero la pareja o un padre bonus que mirara rápido veía doble turno.
Ya está corregido.
Qué ves hoy
El miércoles (día en que empieza el turno) el evento aparece como antes — con hora de inicio 21:00 y un pequeño subtítulo: "→ termina 07:00 al día siguiente". Flecha hacia adelante, porque eso es lo que pasa: el turno continúa al día siguiente.
El jueves (día en que termina el turno) ves en cambio ← Termina 07:00 con flecha hacia atrás y sin altura de fila completa. No es un turno que empieza — solo la marca de que la noche de Lucía terminó temprano por la mañana, y el resto del jueves está libre.
La flecha es la clave. Flecha adelante en el día 1 significa empieza y continúa. Flecha atrás en el día 2 significa termina. Sin palabras como "noche" o "continuación" — solo el símbolo, legible al instante incluso al hacer scroll rápido.
Un ejemplo concreto
Hugo (el marido de Lucía) abre el calendario el viernes por la mañana para mirar el fin de semana. Antes podía haber visto:
Miércoles: Lucía turno 21:00–07:00 Jueves: Lucía turno 21:00–07:00
Y dudaba dos segundos: "espera, ¿está haciendo dos noches o cómo va?". Luego miraba las fechas para resolverlo.
Ahora ve:
Miércoles: Lucía turno 21:00 → termina 07:00 al día siguiente Jueves: ← Termina 07:00
Sin dudas. Una noche, vuelve a casa el jueves por la mañana, duerme, y el resto del jueves libre.
Por qué lo cambiamos
Hemos estado escuchando a enfermeras, bomberos, camioneros y panaderos durante meses. La pregunta recurrente era esa — "¿esto cuenta como un turno o dos?". Esa pequeña incertidumbre cuesta: más carga mental, más preguntas a la pareja, menos confianza en el calendario. Y un calendario en el que no confías, no se usa.
Este tipo de fontanería debe quedarse en segundo plano. No tienes que interpretar.
Compromisos
Solo aplica a eventos que cruzan la medianoche. Un turno normal de 9 a 17 no tiene este problema y se muestra igual que antes.
Solo iOS por ahora. La web sigue mostrando los eventos que cruzan días al modo viejo. Llegará en alguno de los próximos lanzamientos.
La flecha no sustituye al texto completo en el día 2. Si quieres saber qué evento es el que termina — toca la fila y se abre la vista de detalle con título, ubicación y notas.
Por debajo
FBEventCard ha recibido un nuevo parámetro displayDate — la fecha en que la tarjeta se está renderizando. Internamente se compara con startDate y endDate del evento usando Calendar.isDate(_, inSameDayAs:), y un enum RailMode se establece en uno de:
.normal— el evento empieza y termina el mismo día (caso común).startsToday— empieza hoy pero termina mañana (mostrar hora de inicio + subtítulo con flecha adelante).endsToday— empezó ayer y termina hoy (mostrar fila compacta con flecha atrás y hora de fin)
El renderizado de RailMode.endsToday es deliberadamente estrecho — ocupa menos espacio vertical, porque no es un turno alrededor del cual planificas, sino una nota de que la mañana está bloqueada y el resto del día libre.
Pruébalo
Añade un turno de noche — por ejemplo 22:00 hoy hasta 06:00 mañana — al calendario. Pasa al día de mañana. Verás la fila estrecha arriba con la flecha hacia atrás. Tócala para abrir el detalle si quieres.
Actualiza la app iOS vía TestFlight para tener el cambio. De esos arreglos pequeños que notas cuando dejas de comprobar dos veces — nuestra clase favorita.