Persist per-event Google calendar assignments

This commit is contained in:
zsolt
2026-08-13 14:01:04 +02:00
parent aea92b0eed
commit 1809da2e4d
4 changed files with 117 additions and 46 deletions
+17
View File
@@ -86,6 +86,23 @@ Color parseGoogleColor(String? value) {
String uniqueId() => DateTime.now().microsecondsSinceEpoch.toString();
String importedEventKey(CalendarEvent event) {
final calendarId = event.calendarId?.trim();
final externalId = event.externalId?.trim();
if (calendarId != null &&
calendarId.isNotEmpty &&
externalId != null &&
externalId.isNotEmpty) {
return '$calendarId::$externalId';
}
final fallbackCalendar = calendarId?.isNotEmpty == true
? calendarId!
: 'local';
final date = event.date.toIso8601String().split('T').first;
return '$fallbackCalendar::${event.title}::$date::${event.start}';
}
String normalizeJarvisUrl(String value) {
final trimmed = value.trim();
if (trimmed.isEmpty) return JarvisSettings.defaults().apiUrl;