@@ -3,7 +3,7 @@ use objc2_event_kit::{EKAlarm, EKCalendarType, EKEvent, EKStructuredLocation};
33use objc2_foundation:: { NSArray , NSDate , NSString , NSTimeZone } ;
44
55use crate :: error:: Error ;
6- use crate :: types:: { AppleEvent , CalendarRef , Participant , StructuredLocation } ;
6+ use crate :: types:: { AppleEvent , CalendarSummary , Participant , StructuredLocation } ;
77
88use super :: super :: recurrence:: { offset_date_time_from, parse_recurrence_info} ;
99use super :: alarm:: transform_alarm;
@@ -14,7 +14,7 @@ use super::utils::get_url_string;
1414
1515pub fn transform_event ( event : & EKEvent ) -> Result < AppleEvent , Error > {
1616 let identifiers = extract_event_identifiers ( event) ;
17- let calendar_ref = extract_event_calendar_ref ( event) ;
17+ let calendar_summary = extract_event_calendar_summary ( event) ;
1818 let basic_info = extract_event_basic_info ( event) ;
1919 let dates = extract_event_dates ( event) ;
2020 let status_info = extract_event_status_info ( event) ;
@@ -23,13 +23,13 @@ pub fn transform_event(event: &EKEvent) -> Result<AppleEvent, Error> {
2323 let location_info = extract_event_location_info ( event) ;
2424 let recurrence_info = extract_event_recurrence_info ( event, flags. has_recurrence_rules ) ;
2525 let alarm_info = extract_event_alarm_info ( event) ;
26- let birthday_info = extract_event_birthday_info ( event, & calendar_ref ) ;
26+ let birthday_info = extract_event_birthday_info ( event, & calendar_summary ) ;
2727
2828 Ok ( AppleEvent {
2929 event_identifier : identifiers. event_identifier ,
3030 calendar_item_identifier : identifiers. calendar_item_identifier ,
31- external_identifier : identifiers. external_identifier ,
32- calendar : calendar_ref ,
31+ calendar_item_external_identifier : identifiers. calendar_item_external_identifier ,
32+ calendar : calendar_summary ,
3333 title : basic_info. title ,
3434 location : basic_info. location ,
3535 url : basic_info. url ,
@@ -50,36 +50,31 @@ pub fn transform_event(event: &EKEvent) -> Result<AppleEvent, Error> {
5050 attendees : participants. attendees ,
5151 structured_location : location_info. structured_location ,
5252 recurrence : recurrence_info. recurrence ,
53- occurrence_date : recurrence_info. occurrence_date ,
54- is_detached : recurrence_info. is_detached ,
5553 alarms : alarm_info. alarms ,
5654 birthday_contact_identifier : birthday_info. birthday_contact_identifier ,
5755 is_birthday : birthday_info. is_birthday ,
5856 } )
5957}
6058
6159struct EventIdentifiers {
62- event_identifier : String ,
60+ event_identifier : Option < String > ,
6361 calendar_item_identifier : String ,
64- external_identifier : String ,
62+ calendar_item_external_identifier : Option < String > ,
6563}
6664
6765fn extract_event_identifiers ( event : & EKEvent ) -> EventIdentifiers {
6866 EventIdentifiers {
69- event_identifier : unsafe { event. eventIdentifier ( ) }
70- . map ( |s| s. to_string ( ) )
71- . unwrap_or_default ( ) ,
67+ event_identifier : unsafe { event. eventIdentifier ( ) } . map ( |s| s. to_string ( ) ) ,
7268 calendar_item_identifier : unsafe { event. calendarItemIdentifier ( ) } . to_string ( ) ,
73- external_identifier : unsafe { event. calendarItemExternalIdentifier ( ) }
74- . map ( |s| s. to_string ( ) )
75- . unwrap_or_default ( ) ,
69+ calendar_item_external_identifier : unsafe { event. calendarItemExternalIdentifier ( ) }
70+ . map ( |s| s. to_string ( ) ) ,
7671 }
7772}
7873
79- fn extract_event_calendar_ref ( event : & EKEvent ) -> CalendarRef {
74+ fn extract_event_calendar_summary ( event : & EKEvent ) -> CalendarSummary {
8075 let calendar = unsafe { event. calendar ( ) } . unwrap ( ) ;
81- CalendarRef {
82- id : unsafe { calendar. calendarIdentifier ( ) } . to_string ( ) ,
76+ CalendarSummary {
77+ calendar_identifier : unsafe { calendar. calendarIdentifier ( ) } . to_string ( ) ,
8378 title : unsafe { calendar. title ( ) } . to_string ( ) ,
8479 }
8580}
@@ -198,8 +193,6 @@ fn extract_event_location_info(event: &EKEvent) -> EventLocationInfo {
198193
199194struct EventRecurrenceInfo {
200195 recurrence : Option < crate :: types:: RecurrenceInfo > ,
201- occurrence_date : Option < chrono:: DateTime < chrono:: Utc > > ,
202- is_detached : bool ,
203196}
204197
205198fn extract_event_recurrence_info (
@@ -208,8 +201,6 @@ fn extract_event_recurrence_info(
208201) -> EventRecurrenceInfo {
209202 EventRecurrenceInfo {
210203 recurrence : parse_recurrence_info ( event, has_recurrence_rules) ,
211- occurrence_date : unsafe { event. occurrenceDate ( ) } . map ( offset_date_time_from) ,
212- is_detached : unsafe { event. isDetached ( ) } ,
213204 }
214205}
215206
@@ -233,7 +224,10 @@ struct EventBirthdayInfo {
233224 is_birthday : bool ,
234225}
235226
236- fn extract_event_birthday_info ( event : & EKEvent , _calendar_ref : & CalendarRef ) -> EventBirthdayInfo {
227+ fn extract_event_birthday_info (
228+ event : & EKEvent ,
229+ _calendar_summary : & CalendarSummary ,
230+ ) -> EventBirthdayInfo {
237231 let birthday_contact_identifier = unsafe {
238232 let id: Option < Retained < NSString > > = msg_send ! [ event, birthdayContactIdentifier] ;
239233 id. map ( |s| s. to_string ( ) )
0 commit comments