Skip to content

andrelince/ionic-calendar-plugin

Repository files navigation

calendar-plugin

Capacitor plugin with native calendar integration for iOS (Android coming soon).

Install

npm install ionic-calendar-plugin
npx cap sync

Permissions

iOS

Add the following to info.plist file:

<key>NSCalendarsUsageDescription</key>
<string>Manage calendar events</string>
<key>NSRemindersUsageDescription</key>
<string>Manage calendar event reminders</string>
<key>NSContactsUsageDescription</key>
<string>Manage calendar events</string>

API

checkPermissions()

checkPermissions() => Promise<PermissionStatus>

Returns: Promise<PermissionStatus>


requestPermissions()

requestPermissions() => Promise<PermissionStatus>

Returns: Promise<PermissionStatus>


listCalendars()

listCalendars() => Promise<Results<ICalendar>>

Returns: Promise<Results<ICalendar>>


createCalendar(...)

createCalendar(options: CalendarCreateOpts) => Promise<ICalendar>
Param Type
options CalendarCreateOpts

Returns: Promise<ICalendar>


createEvent(...)

createEvent(options: EventCreateOpts) => Promise<IEvent>
Param Type
options EventCreateOpts

Returns: Promise<IEvent>


updateEvent(...)

updateEvent(options: EventUpdateOpts) => Promise<IEvent>
Param Type
options EventUpdateOpts

Returns: Promise<IEvent>


deleteEvent(...)

deleteEvent(options: EventDeleteOpts) => Promise<any>
Param Type
options EventDeleteOpts

Returns: Promise<any>


listEvents(...)

listEvents(options: EventListOpts) => Promise<Results<IEvent>>
Param Type
options EventListOpts

Returns: Promise<Results<IEvent>>


Interfaces

PermissionStatus

Prop Type
status PermissionState

Results

Prop Type
results T[]

ICalendar

Prop Type
uniqueId string
title string
color string

CalendarCreateOpts

Prop Type
name string

IEvent

Prop Type
uniqueId string
calendarId string
title string
start string
end string
location { name: string; lat: number; lon: number; }

EventCreateOpts

Prop Type
calendar string
title string
start Date
end Date
location { name: string; lat: number; lon: number; }

Date

Enables basic storage and retrieval of dates and times.

Method Signature Description
toString () => string Returns a string representation of a date. The format of the string depends on the locale.
toDateString () => string Returns a date as a string value.
toTimeString () => string Returns a time as a string value.
toLocaleString () => string Returns a value as a string value appropriate to the host environment's current locale.
toLocaleDateString () => string Returns a date as a string value appropriate to the host environment's current locale.
toLocaleTimeString () => string Returns a time as a string value appropriate to the host environment's current locale.
valueOf () => number Returns the stored time value in milliseconds since midnight, January 1, 1970 UTC.
getTime () => number Gets the time value in milliseconds.
getFullYear () => number Gets the year, using local time.
getUTCFullYear () => number Gets the year using Universal Coordinated Time (UTC).
getMonth () => number Gets the month, using local time.
getUTCMonth () => number Gets the month of a Date object using Universal Coordinated Time (UTC).
getDate () => number Gets the day-of-the-month, using local time.
getUTCDate () => number Gets the day-of-the-month, using Universal Coordinated Time (UTC).
getDay () => number Gets the day of the week, using local time.
getUTCDay () => number Gets the day of the week using Universal Coordinated Time (UTC).
getHours () => number Gets the hours in a date, using local time.
getUTCHours () => number Gets the hours value in a Date object using Universal Coordinated Time (UTC).
getMinutes () => number Gets the minutes of a Date object, using local time.
getUTCMinutes () => number Gets the minutes of a Date object using Universal Coordinated Time (UTC).
getSeconds () => number Gets the seconds of a Date object, using local time.
getUTCSeconds () => number Gets the seconds of a Date object using Universal Coordinated Time (UTC).
getMilliseconds () => number Gets the milliseconds of a Date, using local time.
getUTCMilliseconds () => number Gets the milliseconds of a Date object using Universal Coordinated Time (UTC).
getTimezoneOffset () => number Gets the difference in minutes between the time on the local computer and Universal Coordinated Time (UTC).
setTime (time: number) => number Sets the date and time value in the Date object.
setMilliseconds (ms: number) => number Sets the milliseconds value in the Date object using local time.
setUTCMilliseconds (ms: number) => number Sets the milliseconds value in the Date object using Universal Coordinated Time (UTC).
setSeconds (sec: number, ms?: number | undefined) => number Sets the seconds value in the Date object using local time.
setUTCSeconds (sec: number, ms?: number | undefined) => number Sets the seconds value in the Date object using Universal Coordinated Time (UTC).
setMinutes (min: number, sec?: number | undefined, ms?: number | undefined) => number Sets the minutes value in the Date object using local time.
setUTCMinutes (min: number, sec?: number | undefined, ms?: number | undefined) => number Sets the minutes value in the Date object using Universal Coordinated Time (UTC).
setHours (hours: number, min?: number | undefined, sec?: number | undefined, ms?: number | undefined) => number Sets the hour value in the Date object using local time.
setUTCHours (hours: number, min?: number | undefined, sec?: number | undefined, ms?: number | undefined) => number Sets the hours value in the Date object using Universal Coordinated Time (UTC).
setDate (date: number) => number Sets the numeric day-of-the-month value of the Date object using local time.
setUTCDate (date: number) => number Sets the numeric day of the month in the Date object using Universal Coordinated Time (UTC).
setMonth (month: number, date?: number | undefined) => number Sets the month value in the Date object using local time.
setUTCMonth (month: number, date?: number | undefined) => number Sets the month value in the Date object using Universal Coordinated Time (UTC).
setFullYear (year: number, month?: number | undefined, date?: number | undefined) => number Sets the year of the Date object using local time.
setUTCFullYear (year: number, month?: number | undefined, date?: number | undefined) => number Sets the year value in the Date object using Universal Coordinated Time (UTC).
toUTCString () => string Returns a date converted to a string using Universal Coordinated Time (UTC).
toISOString () => string Returns a date as a string value in ISO format.
toJSON (key?: any) => string Used by the JSON.stringify method to enable the transformation of an object's data for JavaScript Object Notation (JSON) serialization.

EventUpdateOpts

Prop Type
event string
title string
start Date
end Date
location { name: string; lat: number; lon: number; }

EventDeleteOpts

Prop Type
event string

EventListOpts

Prop Type
start Date
end Date
calendars string[]

Type Aliases

PermissionState

'prompt' | 'prompt-with-rationale' | 'granted' | 'denied'