@@ -23,9 +23,8 @@ + (BOOL)requiresMainQueueSetup
2323
2424 UIViewController *root = RCTPresentedViewController ();
2525 [root presentViewController: editEventController animated: YES completion: nil ];
26- resolver (nil );
2726 });
28- } rejecter: rejecter];
27+ } resolver: resolver rejecter: rejecter];
2928}
3029
3130#pragma mark - EventView delegate
@@ -46,11 +45,20 @@ - (EKEvent *)createEvent:(NSDictionary *)eventDetails {
4645- (void )eventEditViewController : (EKEventEditViewController *)controller didCompleteWithAction : (EKEventEditViewAction)action
4746{
4847 dispatch_async (dispatch_get_main_queue (), ^{
49- [controller.presentingViewController dismissViewControllerAnimated: YES completion: nil ];
48+ [controller.presentingViewController dismissViewControllerAnimated: YES completion: ^{
49+ if (action == EKEventEditViewActionSaved) {
50+ self.resolver (@" EVENT_CREATED" );
51+ } else if (action == EKEventEditViewActionDeleted) {
52+ self.resolver (@" EVENT_DELETED" );
53+ } else {
54+ self.resolver (@" EVENT_CANCELLED" );
55+ }
56+ }];
5057 });
5158}
5259
53- - (void )eventStoreHandler : (void (^)(void ))completionBlock rejecter : (RCTPromiseRejectBlock)rejecter {
60+ - (void )eventStoreHandler : (void (^)(void ))completionBlock resolver : (RCTPromiseResolveBlock)resolver rejecter : (RCTPromiseRejectBlock)rejecter {
61+ self.resolver = resolver;
5462 if (!self.eventStore ) {
5563 [self initEventStoreWithCalendarCapabilities: completionBlock rejecter: rejecter];
5664 } else {
@@ -73,7 +81,7 @@ - (void)initEventStoreWithCalendarCapabilities:(void (^)(void))completionBlock r
7381 }
7482}
7583
76- - (void )handleEventStoreAccessWithGranted : (BOOL )granted error : (NSError *)error localEventStore : (EKEventStore *)localEventStore completionBlock : (void (^)(void ))completionBlock rejecter : (RCTPromiseRejectBlock)rejecter
84+ - (void )handleEventStoreAccessWithGranted : (BOOL )granted error : (NSError *)error localEventStore : (EKEventStore *)localEventStore completionBlock : (void (^)(void ))completionBlock rejecter : (RCTPromiseRejectBlock)rejecter
7785{
7886 if (error) {
7987 rejecter (@" ERR_NO_PERMISSION" , @" An error occurred during calendar access" , error);
0 commit comments