๐
Calendar Link
| Status |
---|
Build | |
Health | |
Community | |
JavaScript library to generate an event link for Google Calendar, Yahoo!
Calendar, Microsoft Outlook, etc.
Usage
const { google, outlook, office365, yahoo, ics } = require("calendar-link");
import { google, outlook, office365, yahoo, ics } from "calendar-link";
const event = {
title: "My birthday party",
description: "Be there!",
start: "2019-12-29 18:00:00 +0100",
duration: [3, "hour"],
};
google(event);
outlook(event);
office365(event);
yahoo(event);
ics(event);
Options
Property | Description | Allowed values |
---|
title (required) | Event title | String |
start (required) | Start time | JS Date / ISO 8601 string / Unix Timestamp |
end | End time | JS Date / ISO 8601 string / Unix Timestamp |
duration | Event duration | Array with value (Number) and unit (String) |
allDay | All day event | Boolean |
rRule | Recurring event | iCal recurrence rule string NOTE: Only supported by google and ics |
description | Information about the event | String |
location | Event location in words | String |
busy | Mark on calendar as busy? | Boolean |
guests | Emails of other guests | Array of emails (String) |
url | Calendar document URL | String |
Notes
- Any one of the fields
end
, duration
, or allDay
is required. - The allowed units in
duration
are listed here: https://day.js.org/docs/en/durations/creating#list-of-all-available-units. - The
url
field defaults to document.URL
if a global document
object exists. For server-side rendering, you should supply the url
manually.
Not all calendars support the guests
and url
fields. - If you don't pass the start and end time in UTC, Google will convert it to UTC but Outlook won't, so it's a good idea to use UTC when passing dates and times
- There are some known issues in Office 365 because of which we can't generate a consistent link in all devices (#542)
License
MIT ยฉ Anand Chowdhary