How ionic-team/cordova-outsystems-calendar works
OutSystems client actions wrap a cross-platform Cordova calendar plugin. The central flow is an OutSystems action invoking the plugin API, whose platform bridge handles permissions and dispatches calendar operations to native code; native implementations use EventKit on iOS and CalendarContract on Android. The README documents create, find, modify, and remove events and calendars. Wrapper excerpts show create and find dispatch, but most wrapper scripts and parts of native dispatch are unsampled, so uncertain links are omitted.
Main entry points: OSCalendarPlugin.swift iOS dispatcher · bridge.ts Cordova bridge · src Calendar actions · CreateEvent.js Create event action
Components 18
OutSystems actions
- Calendar actions
packages/outsystems-wrapper/src - Create event action
packages/outsystems-wrapper/src/CreateEvent.js - Find event action
packages/outsystems-wrapper/src/FindEvent.js - Delete event actions
packages/outsystems-wrapper/src - Calendar actions
packages/outsystems-wrapper/src
Plugin API
- API definitions
packages/cordova-plugin/src/definitions.ts - Cordova bridge
packages/cordova-plugin/src/bridge.ts
Android implementation
- Android dispatcher
packages/cordova-plugin/android/OSCalendarPlugin.kt - Android calendar logic
packages/cordova-plugin/android/Calendar.kt - Android errors
packages/cordova-plugin/android/CalendarError.kt
iOS implementation
- iOS dispatcher
packages/cordova-plugin/ios/OSCalendarPlugin.swift - iOS calendar logic
packages/cordova-plugin/ios/Calendar.swift - iOS errors
packages/cordova-plugin/ios/CalendarError.swift
Other components
- OutSystems app
- Cordova plugin runtime
- CalendarContract
- EventKit
- System calendar UI
Connections 18
- OutSystems app → Calendar actions: uses
packages/outsystems-wrapper/src/CreateEvent.js - Calendar actions → Create event action: runs
packages/outsystems-wrapper/src/CreateEvent.js - Calendar actions → Find event action: runs
packages/outsystems-wrapper/src/FindEvent.js - Create event action → Cordova plugin runtime: calls event API
packages/outsystems-wrapper/src/CreateEvent.js - Find event action → Cordova plugin runtime: calls find API
packages/outsystems-wrapper/src/FindEvent.js - Create event action → Cordova bridge: may call
- Find event action → Cordova bridge: may call
- Cordova bridge → API definitions: uses types
packages/cordova-plugin/src/bridge.ts - Cordova bridge → Cordova plugin runtime: dispatches commands
packages/cordova-plugin/src/bridge.ts - Cordova plugin runtime → Android dispatcher: routes commands
- Cordova plugin runtime → iOS dispatcher: routes commands
- Android dispatcher → Android calendar logic: delegates operations
packages/cordova-plugin/android/OSCalendarPlugin.kt - Android dispatcher → Android errors: reports errors
packages/cordova-plugin/android/OSCalendarPlugin.kt - Android calendar logic → CalendarContract: reads and writes
- iOS dispatcher → iOS calendar logic: delegates operations
packages/cordova-plugin/ios/OSCalendarPlugin.swift - iOS dispatcher → iOS errors: reports errors
packages/cordova-plugin/ios/OSCalendarPlugin.swift - iOS calendar logic → EventKit: reads and writes
- iOS dispatcher → System calendar UI: opens editor
packages/cordova-plugin/ios/OSCalendarPlugin.swift