Kyle Pope
b401fd9392
Phase 6: Real-time sync, drag-drop guards, security fix, invite bug fix, UI polish
- Event polling (5s refetchInterval) so collaborators see changes without refresh
- Lock status polling in EventDetailPanel view mode — proactive lock banner
- Per-event editable flag blocks drag on read-only shared events
- Read-only permission guard in handleEventDrop/handleEventResize
- M-01 security fix: block non-owners from moving events off shared calendars (403)
- Fix invite response type (backend returns list, not wrapper object)
- Remove is_shared from CalendarCreate/CalendarUpdate input schemas
- New PermissionToggle segmented control (Eye/Pencil/Shield icons)
- CalendarMemberRow restructured into spacious two-line card layout
- CalendarForm dialog widened (sm:max-w-2xl), polished invite card with accent border
- SharedCalendarSettings dialog widened (sm:max-w-lg)
- CalendarMemberList max-height increased (max-h-48 → max-h-72)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-06 16:46:15 +08:00
..
2026-02-15 16:13:41 +08:00
2026-03-06 04:46:17 +08:00
2026-03-06 00:31:10 +08:00
2026-02-27 15:43:55 +08:00
2026-03-06 04:46:17 +08:00
2026-02-27 04:42:23 +08:00
2026-02-27 15:43:55 +08:00
2026-03-06 16:46:15 +08:00
2026-02-27 15:43:55 +08:00
2026-03-05 23:55:11 +08:00
2026-03-04 09:05:46 +08:00
2026-02-27 15:43:55 +08:00
2026-02-27 15:43:55 +08:00
2026-03-04 08:07:45 +08:00
2026-03-06 04:46:17 +08:00
2026-02-27 15:43:55 +08:00
2026-03-01 19:20:07 +08:00
2026-02-27 05:41:16 +08:00