Files
calendar/Cargo.toml
Connor Johnstone ad176dd423 Implement comprehensive CalDAV calendar event parsing
Features:
- Complete CalendarEvent struct with all iCal properties
- EventStatus and EventClass enums for proper typing
- CalDAVClient for server communication with:
  - fetch_events() method using CalDAV REPORT queries
  - discover_calendars() with intelligent path discovery
  - Full iCal parsing using ical crate
  - DateTime parsing with multiple format support
  - XML response parsing with regex

Integration tests:
- Real server event fetching with calendar discovery
- iCal parsing validation with sample data
- DateTime parsing tests (UTC, local, date-only)
- Successful connection to configured calendar path

Dependencies added:
- regex crate for XML parsing
- Enhanced calendar module structure

Test results: ✓ All 7 tests pass
- Successfully connects to /calendars/test/ path
- Fetches 0 events (empty calendar, connection confirmed)
- No more 404 errors with improved discovery logic

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-28 15:30:47 -04:00

43 lines
873 B
TOML

[package]
name = "yew-app"
version = "0.1.0"
edition = "2021"
[dependencies]
yew = { version = "0.21", features = ["csr"] }
web-sys = "0.3"
wasm-bindgen = "0.2"
# HTTP client for CalDAV requests
reqwest = { version = "0.11", features = ["json"] }
wasm-bindgen-futures = "0.4"
# Calendar and iCal parsing
ical = "0.7"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
# Date and time handling
chrono = { version = "0.4", features = ["serde", "wasm-bindgen"] }
chrono-tz = "0.8"
# Error handling
anyhow = "1.0"
thiserror = "1.0"
# Logging
log = "0.4"
console_log = "1.0"
# UUID generation for calendar events
uuid = { version = "1.0", features = ["v4", "wasm-bindgen"] }
# Environment variable handling
dotenvy = "0.15"
base64 = "0.21"
# XML/Regex parsing
regex = "1.0"
[dev-dependencies]
tokio = { version = "1.0", features = ["macros", "rt"] }