Changelog — June 4, 2026
Major calendar overhaul with real E-Do reservation creation, minute-precision scheduling, per-machine date/time pickers, and analytics + dashboard fixes.
Release
v1.48.3✨ New Features
-
Real E-Do Reservations from Calendar — The calendar "+" dialog now creates actual reservations in the E-Do Booking system (client-linked, per-machine date/hour with one booking_sessions row per machine) instead of internal etouch sessions. Calendar renders one block per machine at its own day/hour.
#682 -
Per-Machine Date/Time in Sessions — Each machine in a session can be scheduled at its own day and hour (e.g. live at 14:30, horizontal at 10:00). The session
startedAtdefaults to the earliest machine time. Calendar splits sessions into one block per machine.#683#684 -
Redesigned Mode Switcher — New mode switcher with icons and navigation improvements for a cleaner app experience.
#685 -
Client Combobox — New shadcn-based searchable client selector with org logo, scroll support, and quick-create (name + email). Reused across project, session, reservation, and transform dialogs. Quick-create sends full defaults (locale, timezone, storage limits, auto-archive). Search matches client name, company name, SIREN, and contact name.
#687 -
Dashboard Refresh — Action-first overview with quick actions, recent projects, and team activity feed.
#687
🐛 Bug Fixes
-
Analytics Charts Empty — Fixed empty analytics charts caused by recharts version conflict, ALL_TIME range handling, and resilient resolvers. Added hydration guards.
#687 -
Reservation Reschedule Minute Granularity — The reschedule DateTimePicker was stuck at hour granularity despite #684 adding minute support. Now correctly uses
granularity="minute", prefills the booking's arrival minute, and sendsnewArrivalMinuteend-to-end.#686 -
Calendar Default Date Noise — Removed the redundant session-level "Date planifiée (par défaut)" field since machines now carry their own date/time. At least one machine is now required.
#683
♻️ Refactoring & Technical Improvements
-
Notification UI Refresh — Shared icon resolver and badge updates for the notification system.
#687 -
Shadcn Time Picker Component — Extracted a standalone reusable
TimePicker(hour + optional minute Selects) intopackages/ui.DateTimePickernow composes it with an hour-granularity mode for flows that don't need minutes.#683
📦 Dependencies & Infrastructure
-
Auth Env Fix — Linked
apps/web/.envin worktree setup so Next loads the centralized env, fixing "Invalid origin" on login/logout.#687 -
Releases —
v1.45.0→v1.45.2(calendar + dev fixes),v1.46.0(reservation creation),v1.47.0(reschedule pickers),v1.48.0(mode switcher),v1.48.1–v1.48.2(reschedule granularity + analytics).