[#318] implement SEQUENCE field for ICS events (#362)

- Add SEQUENCE property to ICS generation (starts at 1 for new events)
- Increment SEQUENCE on event updates (modal, drag & drop, resize)
- Handle SEQUENCE independently for recurring event instances
- Add comprehensive tests for SEQUENCE generation and incrementation
- Ensure proper event ordering for remote calendar participants

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude <noreply@anthropic.com>
This commit is contained in:
Benoit TELLIER
2025-11-27 08:58:31 +01:00
committed by GitHub
parent d8c931e02e
commit 65c26f7627
6 changed files with 114 additions and 0 deletions
@@ -177,6 +177,7 @@ export const createEventHandlers = (props: EventHandlersProps) => {
...event,
start: computedNewStart.toISOString(),
end: computedNewEnd.toISOString(),
sequence: (event.sequence ?? 1) + 1,
} as CalendarEvent,
true
);
@@ -202,6 +203,7 @@ export const createEventHandlers = (props: EventHandlersProps) => {
...master,
start: computedNewStart.toISOString(),
end: computedNewEnd.toISOString(),
sequence: (master.sequence ?? 1) + 1,
},
})
);
@@ -254,6 +256,7 @@ export const createEventHandlers = (props: EventHandlersProps) => {
...event,
start: computedNewStart.toISOString(),
end: computedNewEnd.toISOString(),
sequence: (event.sequence ?? 1) + 1,
} as CalendarEvent,
true
);
@@ -280,6 +283,7 @@ export const createEventHandlers = (props: EventHandlersProps) => {
...master,
start: computedNewStart.toISOString(),
end: computedNewEnd.toISOString(),
sequence: (master.sequence ?? 1) + 1,
},
})
);