From 2c5ec6088a508cd100e81f05356f2085565bd4db Mon Sep 17 00:00:00 2001 From: Richard Freman Date: Sun, 5 Jul 2026 00:00:10 +0000 Subject: [PATCH] feat(calendar): plural default calendar reminders (NC35+) Add multi-alarm list editors in Edit Calendar settings for part-day and full-day default reminders, mirroring the event alarm editor pattern. Reads and writes plural CalDAV properties via update to cdav-library. - NC34: legacy single-dropdown UI unchanged - NC35+: DefaultAlarmsList with relative triggers and DISPLAY/EMAIL Assisted-by: Grok:grok-4 Signed-off-by: Richard Freeman --- .../AppNavigation/EditCalendarModal.vue | 144 ++++++---- .../EditCalendarModal/DefaultAlarmsList.vue | 70 +++++ .../DefaultAlarmsListItem.vue | 255 ++++++++++++++++++ .../DefaultAlarmsListNew.vue | 87 ++++++ src/models/calendar.js | 12 + src/store/calendars.js | 61 ++++- src/types/calendar.ts | 11 + src/utils/alarms.js | 98 ++++--- src/utils/defaultCalendarAlarms.js | 122 +++++++++ tests/javascript/unit/models/calendar.test.js | 26 ++ tests/javascript/unit/utils/alarms.test.js | 228 ++++++++++++++++ .../unit/utils/defaultCalendarAlarms.test.js | 96 +++++++ 12 files changed, 1131 insertions(+), 79 deletions(-) create mode 100644 src/components/AppNavigation/EditCalendarModal/DefaultAlarmsList.vue create mode 100644 src/components/AppNavigation/EditCalendarModal/DefaultAlarmsListItem.vue create mode 100644 src/components/AppNavigation/EditCalendarModal/DefaultAlarmsListNew.vue create mode 100644 src/utils/defaultCalendarAlarms.js create mode 100644 tests/javascript/unit/utils/defaultCalendarAlarms.test.js diff --git a/src/components/AppNavigation/EditCalendarModal.vue b/src/components/AppNavigation/EditCalendarModal.vue index b785a5b968..14577c6778 100644 --- a/src/components/AppNavigation/EditCalendarModal.vue +++ b/src/components/AppNavigation/EditCalendarModal.vue @@ -43,36 +43,61 @@ {{ $t('calendar', 'Never show me as busy (set this calendar to transparent)') }} -