firstfloor_calendar library
Classes
- AlarmActionNames
- Names for AlarmAction enum values
- AlarmComponent
- Represents an alarm in the calendar.
- Attachment
- Represents an ATTACH property, which can be either a URI or binary data.
- AttachmentBinary
- Attachment with binary data, typically encoded in BASE64.
- AttachmentUri
- Attachment with a URI reference.
- ByDay
- BYDAY entry like -1SU or 3MO. ordinal may be null for plain weekday (e.g., SU).
- CalDateTime
- Represents a DATE or a DATE-TIME. If time is null, it's a DATE; otherwise, it's a DATE-TIME.
- CalDuration
- Represents a DURATION value.
- Calendar
- Represents a calendar with typed access to its components and properties.
- CalendarComponent
- Represents the base implementation for calendar components.
- CalendarDocument
- Represents the raw structural representation of an iCalendar document without any type interpretation of property values.
- CalendarDocumentComponent
- Represents a component in the calendar document structure.
- CalendarParser
- Semantic parser for converting a structured calendar document or component into a Calendar model.
- CalendarProperty
- Represents a raw property in the document structure
- CalendarUserAddress
- Represents a calendar user address (CUA) with various parameters.
- CalendarUserTypeNames
- Names for CalendarUserType enum values
- CalTime
- Represents a TIME.
- ClassificationNames
- Names for Classification enum values
- DateUtils
- Utility class for date-related calculations.
- DocumentParser
- Parses iCalendar data from a string source. This class works with in-memory strings. Use DocumentStreamParser for streaming large files and avoiding memory issues.
- DocumentStreamParser
- Parses iCalendar data from a stream of bytes. The streaming API allows for parsing large iCalendar files without loading the entire file into memory.
- EventComponent
- Represents an event in the calendar.
- EventStatusNames
- Names for EventStatus enum values
- FreeBusyComponent
- Represents a free/busy time component in the calendar.
- FreeBusyTypeNames
- Names for FreeBusyType enum values
- GeoCoordinate
- Represents a geographical location with latitude and longitude.
- JournalComponent
- Represents a journal entry in the calendar.
- JournalStatusNames
- Names for JournalStatus enum values
- ParticipationRoleNames
- Names for ParticipationRole enum values
- ParticipationStatusNames
- Names for ParticipationStatus enum values
- Period
- Represents a period with a start and either an end or a duration.
- PropertyRule
- Represents a rule for parsing a specific calendar property. This includes validation for occurrences and a parser function.
-
PropertyValue<
T> - Wrapper containing both the parsed value and source property
- RecurrenceDateTime
- Represents either a DATE-TIME or a PERIOD for recurrence dates (RDATE).
- RecurrenceFrequencyNames
- Names for RecurrenceFrequency enum values
- RecurrenceIterator
- An iterator that generates occurrences based on the provided recurrence rule, start date, exclusions, and additional dates.
- RecurrenceRule
- RRULE value type covering RFC 5545 recurrence properties.
- RelationshipTypeNames
- Names for RelationshipType enum values
- TimeTransparencyNames
- Names for TimeTransparency enum values
- TimeZoneComponent
- Represents a timezone in the calendar.
- TimeZoneSubComponent
- Represents a subcomponent of a timezone, such as a specific time zone rule.
- TodoComponent
- Represents a todo item in the calendar.
- TodoStatusNames
- Names for TodoStatus enum values
- Trigger
- TRIGGER can be a DURATION or a UTC DATE-TIME.
- TriggerRelatedNames
- Names for TriggerRelated enum values
- UtcOffset
- Represents a UTC offset like +hhmm or -hhmmss.
- ValueTypeNames
- Names for ValueType enum values
- WeekdayNames
- Names for Weekday enum values
Enums
- AlarmAction
- Alarm action types.
- CalendarUserType
- Calendar user types.
- Classification
- Classification types.
- EventStatus
- Event status types.
- FreeBusyType
- Free/busy types.
- JournalStatus
- Journal status types.
- ParticipationRole
- Participation role types.
- ParticipationStatus
- Participation status types.
- RecurrenceFrequency
- Recurrence frequencies.
- RelationshipType
- Relationship types.
- Sign
- Sign for UtcOffset and CalDuration.
- TimeTransparency
- Time transparency types.
- TodoStatus
- To-do status types.
- TriggerRelated
- Trigger relation types.
- ValueType
- Value types.
- Weekday
- Days of the week.
Extensions
- AlarmActionExtensions on AlarmAction
- Extensions for AlarmAction enum.
- CalDateTimeExtensions on CalDateTime
- Extensions for CalDateTime to enhance functionality.
- CalendarComponentSerialization on CalendarComponent
- Serialization helpers for semantic components.
- CalendarDocumentComponentExtensions on CalendarDocumentComponent
- Extensions for CalendarDocumentComponent to enhance functionality.
- CalendarDocumentSerialization on CalendarDocumentComponent
- Serialization extensions for document-layer components and properties.
- CalendarPropertySerialization on CalendarProperty
- CalendarUserTypeExtensions on CalendarUserType
- Extensions for CalendarUserType enum.
- ClassificationExtensions on Classification
- Extensions for Classification enum.
- EventComponentExtensions on EventComponent
- Extensions for EventComponent to enhance functionality.
-
EventIterableQuery
on Iterable<
EventComponent> - Query extensions for Iterable<EventComponent> to enhance functionality.
- EventStatusExtensions on EventStatus
- Extensions for EventStatus enum.
- FreeBusyTypeExtensions on FreeBusyType
- Extensions for FreeBusyType enum.
- JournalComponentExtensions on JournalComponent
- Extensions for JournalComponent to enhance functionality.
-
JournalIterableQuery
on Iterable<
JournalComponent> - Query extensions for Iterable<JournalComponent> to enhance functionality.
- JournalStatusExtensions on JournalStatus
- Extensions for JournalStatus enum.
- ParticipationRoleExtensions on ParticipationRole
- Extensions for ParticipationRole enum.
- ParticipationStatusExtensions on ParticipationStatus
- Extensions for ParticipationStatus enum.
- RecurrenceFrequencyExtensions on RecurrenceFrequency
- Extensions for RecurrenceFrequency enum.
- RecurrenceRuleExtensions on RecurrenceRule
- Extensions for RecurrenceRule to enhance functionality.
- RelationshipTypeExtensions on RelationshipType
- Extensions for RelationshipType enum.
- TimeTransparencyExtensions on TimeTransparency
- Extensions for TimeTransparency enum.
-
TimeZoneIterableQuery
on Iterable<
TimeZoneSubComponent> - Query extensions for Iterable<TimeZoneSubComponent> to enhance functionality.
- TimeZoneSubComponentExtensions on TimeZoneSubComponent
- Extensions for TimeZoneSubComponent to enhance functionality.
- TodoComponentExtensions on TodoComponent
- Extensions for TodoComponent to enhance functionality.
-
TodoIterableQuery
on Iterable<
TodoComponent> - Query extensions for Iterable<TodoComponent> to enhance functionality.
- TodoStatusExtensions on TodoStatus
- Extensions for TodoStatus enum.
- TriggerRelatedExtensions on TriggerRelated
- Extensions for TriggerRelated enum.
- ValueTypeExtensions on ValueType
- Extensions for ValueType enum.
- WeekdayExtensions on Weekday
- Extensions for Weekday enum.
Functions
-
parseAttachment(
CalendarProperty property) → Attachment - Parses a CalendarProperty into a uri or binary attachment.
-
parseBoolean(
CalendarProperty property) → bool - Parses a CalendarProperty into a boolean value.
-
parseCalAddress(
CalendarProperty property) → CalendarUserAddress - Parses a CalendarProperty into a calendar user address value.
-
parseCalDate(
CalendarProperty property) → CalDateTime - Parses a CalendarProperty into a CalDate value.
-
parseCalDateOrDateTime(
CalendarProperty property) → CalDateTime - Parses a CalendarProperty into a date or datetime value. This will determine if the value is a date or datetime based on the parameters.
-
parseCalDateOrDateTimeList(
CalendarProperty property) → List< CalDateTime> - Parses a CalendarProperty into a list of date or datetime values.
-
parseCalDateTime(
CalendarProperty property) → CalDateTime - Parses a CalendarProperty into a CalDateTime value.
-
parseCalDateTimeLocal(
CalendarProperty property) → CalDateTime - Parses a CalendarProperty into a CalDateTime value. This is used for properties that must be in local format without timezone identifier.
-
parseCalDateTimeLocalValue(
String value, {int lineNumber = 0}) → CalDateTime - Parses a date-time string in the format YYYYMMDDTHHMMSS into a CalDateTime value.
-
parseCalDateTimeUtc(
CalendarProperty property) → CalDateTime - Parses a CalendarProperty into a CalDateTime value. This is used for properties that must be in UTC format.
-
parseCalDateTimeUtcValue(
String value, {int lineNumber = 0}) → CalDateTime - Parses a date-time string in the format YYYYMMDDTHHMMSSZ into a CalDateTime value.
-
parseCalDateTimeValue(
String value, {String? tzid, int lineNumber = 0}) → CalDateTime -
Parses a date-time string in the format YYYYMMDDTHHMMSS
Zinto a CalDateTime value. -
parseCalDateValue(
String value, {int lineNumber = 0}) → CalDateTime - Parses a date string in the format YYYYMMDD into a CalDate value.
-
parseCalDuration(
CalendarProperty property) → CalDuration - Parses a CalendarProperty into a CalDuration value.
-
parseCalTime(
CalendarProperty property) → CalTime - Parses a CalendarProperty into a CalTime value.
-
parseCalTimeValue(
String value, {String? tzid, int lineNumber = 0}) → CalTime -
Parses a time string in the format HHMMSS
Zinto a CalTime value. -
parseGeoCoordinate(
CalendarProperty property) → GeoCoordinate - Parses a CalendarProperty into a geo coordinate value.
-
parseInteger(
CalendarProperty property) → int - Parses a CalendarProperty into an integer value.
-
parsePeriod(
CalendarProperty property) → Period - Parses a CalendarProperty into a list of integer values.
-
parsePeriodList(
CalendarProperty property) → List< Period> - Parses a list of PERIOD values from a CalendarProperty.
-
parsePeriodValue(
String value, {int lineNumber = 0}) → Period - Parses a period string in the format "start/end" or "start/duration".
-
parseRaw(
CalendarProperty property) → String - Parses a CalendarProperty into a raw string representation. This is used for properties that do not require any special parsing.
-
parseRecurrenceDateTime(
CalendarProperty property) → RecurrenceDateTime - Parses a CalendarProperty into a recurrence date-time value.
-
parseRecurrenceRule(
CalendarProperty property) → RecurrenceRule - Parses a CalendarProperty into a recurrence rule instance.
-
parseRecurrenceRuleValue(
String value, {int lineNumber = 0}) → RecurrenceRule - Parses a recurrence rule string in the format defined by RFC 5545 into a RecurrenceRule instance.
-
parseString(
CalendarProperty property) → String - Parses a CalendarProperty into a text representation. This is the default parser for text properties.
-
parseStringList(
CalendarProperty property) → List< String> - Parses a CalendarProperty into a list of text values. This is used for properties that can have multiple values separated by commas.
-
parseTrigger(
CalendarProperty property) → Trigger - Parses a CalendarProperty into a trigger value.
-
parseUri(
CalendarProperty property) → Uri - Parses a CalendarProperty into a URI value.
-
parseUtcOffset(
CalendarProperty property) → UtcOffset - Parses a CalendarProperty into a UTC offset value.
-
serializeCalendarDocumentComponent(
CalendarDocumentComponent component, {bool foldLines = true}) → String - Serializes a raw CalendarDocumentComponent (or CalendarDocument) to iCalendar text.
-
serializeCalendarProperty(
CalendarProperty property, {bool foldLine = true}) → String - Serializes a CalendarProperty into a single iCalendar content line body.
Typedefs
- EventOccurrence = ({EventComponent event, CalDateTime occurrence})
- Represents a single event occurrence.
- JournalOccurrence = ({JournalComponent journal, CalDateTime occurrence})
- Represents a single journal occurrence.
- PropertyParser = dynamic Function(CalendarProperty property)
- Defines a function type for parsing calendar properties.
- TimeZoneOccurrence = ({CalDateTime occurrence, TimeZoneSubComponent timezone})
- Represents a single timezone occurrence.
- TodoOccurrence = ({CalDateTime occurrence, TodoComponent todo})
- Represents a single todo occurrence.
Exceptions / Errors
- ParseException
- Exception thrown when parsing fails.