firstfloor_calendar 1.0.8
firstfloor_calendar: ^1.0.8 copied to clipboard
RFC 5545 compliant iCalendar (.ics) parser for Dart and Flutter.
Changelog #
All notable changes to this project will be documented in this file.
1.0.8 - 2025-11-17 #
1.0.6 - 2025-11-10 #
1.0.5 - 2025-11-07 #
Changed #
- BREAKING: Renamed
inRange()extension methods tooccurrences()for consistency- All component iterable extensions (EventIterableQuery, TodoIterableQuery, JournalIterableQuery, TimeZoneIterableQuery) now use
occurrences() - Parameters are now optional:
occurrences({CalDateTime? start, CalDateTime? end}) - Call without parameters to get all occurrences, or provide
start/endto filter
- All component iterable extensions (EventIterableQuery, TodoIterableQuery, JournalIterableQuery, TimeZoneIterableQuery) now use
- Updated
RecurrenceIterator.occurrences()to accept optionalstart,end, anddurationparameters - Removed
RecurrenceIteratorQueryextension - logic consolidated intoRecurrenceIteratorclass
1.0.4 - 2025-11-07 #
1.0.3 - 2025-11-06 #
Added #
addDurationextension method on CalDateTimeisAllDayextension property on EventComponenteffectiveEndextension property on EventComponenteffectiveDurationextension property on Event and Todo componentsinRange()extension method on Iterable
Fixed #
- Ordering of occurrences when combining RRULE and RDATE values
- TodoComponent.dtstart is now nullable (was incorrectly required)
- JournalComponent.dtstart is now nullable (was incorrectly required)
- Documentation comments for several component properties
Improved #
- Refactored RecurrenceIterator for better separation of concerns
- Reorganized extensions into dedicated directory structure
- Major test coverage increase
1.0.2 - 2025-11-05 #
1.0.1 - 2025-10-26 #
1.0.0 - 2025-10-15 #
Added #
- RFC 5545 compliant iCalendar parser
- Support for VEVENT, VTODO, VJOURNAL, VTIMEZONE components
- Full RRULE recurrence expansion
- Streaming parser for large files
- Custom property parser registration
- Timezone-aware date/time handling
- Two-layer architecture (document + semantic)