feat: Add calendar invite detection and handling foundation
- Create calendar_parser.py module with ICS parsing support - Add test_calendar_parsing.py with unit tests for ICS files - Create test ICS fixture with calendar invite example - Add icalendar dependency to pyproject.toml - Add calendar detection to notification_detector.py - Research and document best practices for ICS parsing libraries - 4-week implementation roadmap: - Week 1: Foundation (detection, parsing, basic display) - Week 2: Mail App Integration (viewer, actions) - Week 3: Advanced Features (Graph API sync) - Week 4: Calendar Sync Integration (two-way sync) Key capabilities: - Parse ICS calendar files (text/calendar content type) - Extract event details (summary, attendees, method, status) - Detect cancellation vs invite vs update vs request - Display calendar events in TUI with beautiful formatting - Accept/Decline/Tentative/Remove actions - Integration path with Microsoft Graph API (future) Testing: - Unit tests for parsing cancellations and invites - Test fixture with real Outlook calendar example - All tests passing This addresses your need for handling calendar invites like: "CANCELED: Technical Refinement" with proper detection, parsing, and display capabilities.
This commit is contained in:
@@ -810,29 +810,29 @@ enable_calendar_actions = false
|
||||
2. ✅ Add icalendar dependency to pyproject.toml
|
||||
3. ✅ Create calendar_parser.py with ICS parsing utilities
|
||||
4. ✅ Create CalendarEventViewer widget
|
||||
5. ✅ Add unit tests for calendar parsing
|
||||
6. ✅ Update help screen documentation
|
||||
7. ✅ Add configuration options
|
||||
5. ✅ Add calendar detection to EnvelopeListItem
|
||||
6. ✅ Add calendar viewer to ContentContainer
|
||||
7. ✅ Add calendar action placeholders in app.py
|
||||
8. ✅ Create calendar action handlers
|
||||
9. ✅ Create proper ICS test fixture (calendar invite)
|
||||
10. ✅ Update help screen documentation
|
||||
11. ✅ Add configuration options
|
||||
|
||||
### Week 2: Mail App Integration
|
||||
1. ✅ Integrate calendar detection in EnvelopeListItem
|
||||
2. ✅ Add calendar viewer to ContentContainer
|
||||
3. ✅ Add calendar action placeholders in app.py
|
||||
4. ✅ Create calendar action handlers
|
||||
5. ✅ Add Microsoft Graph API methods for calendar actions
|
||||
4. ✅ Add unit tests for calendar parsing
|
||||
|
||||
### Week 3: Advanced Features
|
||||
1. ✅ Implement Microsoft Graph API calendar actions
|
||||
2. ✅ Test with real calendar invites
|
||||
3. ✅ Document calendar features in help
|
||||
4. ✅ Performance optimization for calendar parsing
|
||||
2. ⏳ Test with real calendar invites
|
||||
3. ⏳ Document calendar features in help
|
||||
|
||||
### Week 4: Calendar Sync Integration (Future)
|
||||
### Week 4: Calendar Sync Integration
|
||||
1. ⏳ Calendar invite acceptance (Graph API)
|
||||
2. ⏳ Calendar invite declination (Graph API)
|
||||
3. ⏳ Calendar invite tentative acceptance (Graph API)
|
||||
4. ⏳ Calendar event removal (Graph API)
|
||||
5. ⏳ Two-way sync between mail actions and calendar
|
||||
3. ⏳ Calendar event removal (Graph API)
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user