2.8.0 • Published 6 months ago

calendar-link v2.8.0

Weekly downloads
12,492
License
MIT
Repository
github
Last release
6 months ago

📅 Calendar Link

Status
BuildGitHub Actions Workflow Status Dependencies GitHub release (latest by date)
HealthLicense Coverage
CommunityNPM type definitions NPM GitHub contributors

JavaScript library to generate an event link for Google Calendar, Yahoo! Calendar, Microsoft Outlook, etc.

NPM

Usage

// Usage with Node.js
const { google, outlook, office365, yahoo, ics } = require("calendar-link");

// Usage with TypeScript or ES6
import { google, outlook, office365, yahoo, ics } from "calendar-link";

// Set event as an object
const event = {
  title: "My birthday party",
  description: "Be there!",
  start: "2019-12-29 18:00:00 +0100",
  duration: [3, "hour"],
};

// Then fetch the link
google(event); // https://calendar.google.com/calendar/render...
outlook(event); // https://outlook.live.com/owa/...
office365(event); // https://outlook.office.com/owa/...
yahoo(event); // https://calendar.yahoo.com/?v=60&title=...
ics(event); // standard ICS file based on https://icalendar.org

Options

PropertyDescriptionAllowed values
title (required)Event titleString
start (required)Start timeJS Date / ISO 8601 string / Unix Timestamp
endEnd timeJS Date / ISO 8601 string / Unix Timestamp
durationEvent durationArray with value (Number) and unit (String)
allDayAll day eventBoolean
rRuleRecurring eventiCal recurrence rule string NOTE: Only supported by google and ics
descriptionInformation about the eventString
locationEvent location in wordsString
busyMark on calendar as busy?Boolean
guestsEmails of other guestsArray of emails (String)
urlCalendar document URLString

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)

Compatibility

This package uses URLSearchParams (Node.js >= 10, 97%+ browsers), but if you need to include a polyfill, you can include url-search-params-polyfill first.

License

MIT © Anand Chowdhary

2.8.0

6 months ago

2.7.0

11 months ago

2.6.1

11 months ago

2.5.0

2 years ago

2.6.0

2 years ago

2.5.1

2 years ago

2.3.0

3 years ago

2.4.0

3 years ago

2.3.1

3 years ago

2.2.0

3 years ago

2.1.1

4 years ago

2.1.0

4 years ago

2.0.16

4 years ago

2.0.15

4 years ago

2.0.14

4 years ago

2.0.13

4 years ago

2.0.12

4 years ago

2.0.11

4 years ago

2.0.10

4 years ago

2.0.9

4 years ago

2.0.8

4 years ago

2.0.7

4 years ago

2.0.6

5 years ago

2.0.5

5 years ago

2.0.4

5 years ago

2.0.3

5 years ago

2.0.2

5 years ago

2.0.1

5 years ago

2.0.0

5 years ago

1.3.1

5 years ago

1.3.0

5 years ago

1.2.5

5 years ago

1.2.4

6 years ago

1.2.3

6 years ago

1.2.2

6 years ago

1.2.1

6 years ago

1.2.0

6 years ago

1.1.0

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago

0.9.0

6 years ago

0.0.0

6 years ago