Safe Haskell | None |
---|
ICalendar types, based on RFC5545.
- newtype Language = Language (CI Text)
- type CalAddress = URI
- data OtherParam = OtherParam (CI Text) [Text]
- data OtherParams = OtherParams (Set OtherParam)
- data VCalendar = VCalendar {
- vcProdId :: ProdId
- vcVersion :: ICalVersion
- vcScale :: Scale
- vcMethod :: Maybe Method
- vcOther :: Set OtherProperty
- vcTimeZones :: Map Text VTimeZone
- vcEvents :: Map (Text, Maybe (Either Date DateTime)) VEvent
- vcTodos :: Map (Text, Maybe (Either Date DateTime)) VTodo
- vcJournals :: Map (Text, Maybe (Either Date DateTime)) VJournal
- vcFreeBusys :: Map Text VFreeBusy
- vcOtherComps :: Set VOther
- data ProdId = ProdId {}
- data ICalVersion
- = MaxICalVersion { }
- | MinMaxICalVersion { }
- data Scale = Scale {}
- data Method = Method {}
- data VEvent = VEvent {
- veDTStamp :: DTStamp
- veUID :: UID
- veClass :: Class
- veDTStart :: Maybe DTStart
- veCreated :: Maybe Created
- veDescription :: Maybe Description
- veGeo :: Maybe Geo
- veLastMod :: Maybe LastModified
- veLocation :: Maybe Location
- veOrganizer :: Maybe Organizer
- vePriority :: Priority
- veSeq :: Sequence
- veStatus :: Maybe EventStatus
- veSummary :: Maybe Summary
- veTransp :: TimeTransparency
- veUrl :: Maybe URL
- veRecurId :: Maybe RecurrenceId
- veRRule :: Set RRule
- veDTEndDuration :: Maybe (Either DTEnd DurationProp)
- veAttach :: Set Attachment
- veAttendee :: Set Attendee
- veCategories :: Set Categories
- veComment :: Set Comment
- veContact :: Set Contact
- veExDate :: Set ExDate
- veRStatus :: Set RequestStatus
- veRelated :: Set RelatedTo
- veResources :: Set Resources
- veRDate :: Set RDate
- veAlarms :: Set VAlarm
- veOther :: Set OtherProperty
- data VTodo = VTodo {
- vtDTStamp :: DTStamp
- vtUID :: UID
- vtClass :: Class
- vtCompleted :: Maybe Completed
- vtCreated :: Maybe Created
- vtDescription :: Maybe Description
- vtDTStart :: Maybe DTStart
- vtGeo :: Maybe Geo
- vtLastMod :: Maybe LastModified
- vtLocation :: Maybe Location
- vtOrganizer :: Maybe Organizer
- vtPercent :: Maybe PercentComplete
- vtPriority :: Priority
- vtRecurId :: Maybe RecurrenceId
- vtSeq :: Sequence
- vtStatus :: Maybe TodoStatus
- vtSummary :: Maybe Summary
- vtUrl :: Maybe URL
- vtRRule :: Set RRule
- vtDueDuration :: Maybe (Either Due DurationProp)
- vtAttach :: Set Attachment
- vtAttendee :: Set Attendee
- vtCategories :: Set Categories
- vtComment :: Set Comment
- vtContact :: Set Contact
- vtExDate :: Set ExDate
- vtRStatus :: Set RequestStatus
- vtRelated :: Set RelatedTo
- vtResources :: Set Resources
- vtRDate :: Set RDate
- vtAlarms :: Set VAlarm
- vtOther :: Set OtherProperty
- data VJournal = VJournal {
- vjDTStamp :: DTStamp
- vjUID :: UID
- vjClass :: Class
- vjCreated :: Maybe Created
- vjDTStart :: Maybe DTStart
- vjLastMod :: Maybe LastModified
- vjOrganizer :: Maybe Organizer
- vjRecurId :: Maybe RecurrenceId
- vjSeq :: Sequence
- vjStatus :: Maybe JournalStatus
- vjSummary :: Maybe Summary
- vjUrl :: Maybe URL
- vjRRule :: Set RRule
- vjAttach :: Set Attachment
- vjAttendee :: Set Attendee
- vjCategories :: Set Categories
- vjComment :: Set Comment
- vjContact :: Set Contact
- vjDescription :: Set Description
- vjExDate :: Set ExDate
- vjRelated :: Set RelatedTo
- vjRDate :: Set RDate
- vjRStatus :: Set RequestStatus
- vjOther :: Set OtherProperty
- data VFreeBusy = VFreeBusy {
- vfbDTStamp :: DTStamp
- vfbUID :: UID
- vfbContact :: Maybe Contact
- vfbDTStart :: Maybe DTStart
- vfbDTEnd :: Maybe DTEnd
- vfbOrganizer :: Maybe Organizer
- vfbUrl :: Maybe URL
- vfbAttendee :: Set Attendee
- vfbComment :: Set Comment
- vfbFreeBusy :: Set FreeBusy
- vfbRStatus :: Set RequestStatus
- vfbOther :: Set OtherProperty
- data VTimeZone = VTimeZone {}
- data TZProp = TZProp {}
- data VAlarm
- = VAlarmAudio { }
- | VAlarmDisplay { }
- | VAlarmEmail { }
- | VAlarmX { }
- data VOther = VOther {}
- data Attachment
- = UriAttachment { }
- | BinaryAttachment { }
- data Categories = Categories {}
- data Class = Class {}
- data ClassValue
- = Public
- | Private
- | Confidential
- | ClassValueX (CI Text)
- data Completed = Completed {}
- data Comment = Comment {}
- data Description = Description {}
- data Geo = Geo {}
- data Location = Location {}
- data PercentComplete = PercentComplete {}
- data Priority = Priority {}
- data Resources = Resources {}
- data EventStatus
- = TentativeEvent { }
- | ConfirmedEvent { }
- | CancelledEvent { }
- data TodoStatus
- = TodoNeedsAction { }
- | CompletedTodo { }
- | InProcessTodo { }
- | CancelledTodo { }
- data JournalStatus
- = DraftJournal { }
- | FinalJournal { }
- | CancelledJournal { }
- data Summary = Summary {}
- data Date = Date {}
- data DateTime
- = FloatingDateTime { }
- | UTCDateTime { }
- | ZonedDateTime { }
- data DTEnd
- = DTEndDateTime { }
- | DTEndDate { }
- data Due
- = DueDateTime { }
- | DueDate { }
- data DTStart
- = DTStartDateTime { }
- | DTStartDate { }
- data Duration
- data Sign
- data DurationProp = DurationProp {}
- data FreeBusy = FreeBusy {}
- data Period
- data UTCPeriod
- data FBType
- = Free
- | Busy
- | BusyUnavailable
- | BusyTentative
- | FBTypeX (CI Text)
- data TimeTransparency
- = Opaque { }
- | Transparent { }
- data TZID = TZID {
- tzidValue :: Text
- tzidGlobal :: Bool
- tzidOther :: OtherParams
- data TZName = TZName {}
- data UTCOffset = UTCOffset {}
- data TZUrl = TZUrl {}
- data Attendee = Attendee {
- attendeeValue :: CalAddress
- attendeeCUType :: CUType
- attendeeMember :: Set CalAddress
- attendeeRole :: Role
- attendeePartStat :: PartStat
- attendeeRSVP :: Bool
- attendeeDelTo :: Set CalAddress
- attendeeDelFrom :: Set CalAddress
- attendeeSentBy :: Maybe CalAddress
- attendeeCN :: Maybe Text
- attendeeDir :: Maybe URI
- attendeeLanguage :: Maybe Language
- attendeeOther :: OtherParams
- data CUType
- data Role
- = Chair
- | ReqParticipant
- | OptParticipant
- | NonParticipant
- | RoleX (CI Text)
- data PartStat
- = PartStatNeedsAction
- | Accepted
- | Declined
- | Tentative
- | Delegated
- | PartStatCompleted
- | InProcess
- | PartStatX (CI Text)
- data Contact = Contact {}
- data Organizer = Organizer {}
- data RecurrenceId
- data Range
- data RelatedTo = RelatedTo {}
- data RelationshipType
- data URL = URL {
- urlValue :: URI
- urlOther :: OtherParams
- data UID = UID {
- uidValue :: Text
- uidOther :: OtherParams
- data ExDate
- = ExDates {
- exDates :: Set Date
- exDateOther :: OtherParams
- | ExDateTimes { }
- = ExDates {
- data RDate
- = RDateDates { }
- | RDateDateTimes { }
- | RDatePeriods { }
- data Frequency
- data Weekday
- data Recur = Recur {
- recurFreq :: Frequency
- recurUntilCount :: Maybe (Either (Either Date DateTime) Int)
- recurInterval :: Int
- recurBySecond :: [Int]
- recurByMinute :: [Int]
- recurByHour :: [Int]
- recurByDay :: [Either (Int, Weekday) Weekday]
- recurByMonthDay :: [Int]
- recurByYearDay :: [Int]
- recurByWeekNo :: [Int]
- recurByMonth :: [Int]
- recurBySetPos :: [Int]
- recurWkSt :: Weekday
- data RRule = RRule {}
- data Repeat = Repeat {}
- data AlarmTriggerRelationship
- data Trigger
- data Created = Created {}
- data DTStamp = DTStamp {}
- data LastModified = LastModified {}
- data Sequence = Sequence {}
- data RequestStatus = RequestStatus {}
- data OtherProperty = OtherProperty {}
Documentation
Language.
type CalAddress = URISource
data OtherParam Source
One other parameter, either x-param or iana-param.
OtherParam (CI Text) [Text] |
data OtherParams Source
Other parameters, either x-param or other iana-param.
VCalendar component. 3.4.
VCalendar | |
|
Eq VCalendar | |
Ord VCalendar | |
Show VCalendar | |
Typeable VCalendar | |
Monoid VCalendar |
Picks the left in most cases. On UIDRecurrenceIdTZID clash, picks the If the Sequence, DTStamp or LastModified is the same, picks the left. |
Default VCalendar |
Product Identifier. 3.7.3.
Calendar Scale. 3.7.1.
Scale | |
|
Method. 3.7.2.
Event Component. 3.6.1.
VEvent | |
|
To-Do Component. 3.6.2
VTodo | |
|
Journal Component. 3.6.3
VJournal | |
|
Free/Busy Component. 3.6.4
VFreeBusy | |
|
Time Zone Component. 3.6.5.
VTimeZone | |
|
Time zone property, also 3.6.5.
TZProp | |
|
VAlarm component. 3.6.6.
VAlarmAudio | |
| |
VAlarmDisplay | |
| |
VAlarmEmail | |
| |
VAlarmX | |
|
Any other component not recognized.
data Attachment Source
Attachment. 3.8.1.1.
Classification. 3.8.1.3.
data ClassValue Source
Classification value. 3.8.1.3. Unrecognized ClassValueX MUST be treated as Private.
Date-Time Completed. 3.8.2.1.
Comment. 3.8.1.4.
Geographic Position. 3.8.1.6.
Location. 3.8.1.7.
data PercentComplete Source
Percent complete. 3.8.1.8.
Priority. 3.8.1.9.
Resources. 3.8.1.10.
data EventStatus Source
Status, but only for Events. 3.8.1.11.
data TodoStatus Source
Status, but only for TODOs. 3.8.1.11.
data JournalStatus Source
Status, but only for Journals. 3.8.1.11.
Summary. 3.8.1.12.
Date-Time value. 3.3.5.
Date-Time End. 3.8.2.2.
Date-Time Due. 3.8.2.3.
Date-Time Start. 3.8.2.4.
Duration value. 3.3.6.
data DurationProp Source
Duration property. 3.8.2.5.
Period of time. 3.3.9.
Period of time which must be UTC, as in FreeBusy. 3.3.9.
Free/Busy Time Type. 3.2.9.
Unrecognized FBTypeX MUST be treated as Busy.
data TimeTransparency Source
Time Transparency. 3.8.2.7.
Time Zone Identifier. 3.8.3.1.
TZID | |
|
Time Zone Name. 3.8.3.2.
UTC Offset. 3.3.14, 3.8.3.4, and 3.8.3.3. (unified-ish)
UTCOffset | |
|
Time Zone URL. 3.8.3.5.
TZUrl | |
|
Attendee. 3.8.4.1.
Calendar User Type. 3.2.3.
Unrecognized CUTypeX MUST be treated as Unknown.
Role. 3.2.16.
Participation Status. 3.2.12.
Contact. 3.8.4.2.
Organizer. 3.8.4.3.
TODO: CAL-ADDRESS-related properties.
Recurrence Identifier Range. 3.2.13
Related To. 3.8.4.5.
data RelationshipType Source
Relationship Type. 3.2.15.
Unrecognized RelationshipTypeX values MUST be treated as Parent.
Uniform Resource Locator. 3.8.4.6.
URL | |
|
Unique Identifier. 3.8.4.7.
UID | |
|
Exception Date-Times. 3.8.5.1.
Recurrence Date-Times. 3.8.5.2.
Frequency in recurrences. 3.3.10.
Weekday, in recurrences. 3.3.10.
Recur value. 3.3.10.
Recur | |
|
Recurrence Rule. 3.8.5.3.
Repeat count. 3.8.6.2.
data AlarmTriggerRelationship Source
Alarm Trigger Relationship. 3.2.14.
Trigger. 3.8.6.3.
Date-Time Created. 3.8.7.1.
Date-Time Stamp. 3.8.7.2.
data LastModified Source
Last Modified. 3.8.7.3.
Sequence number. 3.8.7.4.
data OtherProperty Source
Any other property.