pin-on-calendar
Event link generator for all major calendar clients.
Usage:
import { addToCalendar, getClientLink, downloadIcsFile, getIcsData } from "pin-on-calendar";
const event1 = {
title: "Hair cut",
startDate: "2022-11-26T19:02:45.747Z"
}
const event2 = {
title: "College reunion",
startDate: "2022-12-26T19:02:45.747Z"
}
addToCalendar("google", event); // redirects to google calendar with event data
getClientLink("outlook", event); // https://outlook.live.com/calendar/0/deeplink/compose?path=%2Fcalendar%2Faction%2Fcompose&rru=addevent...
downloadIcsFile([event1, event2], "appointments"); // downloads an appointments.ics file
getIcsData([event1, event2]) // gives an ics file data
API
Table of Contents
addToCalendar
Redirects to the specified calendar client.
Parameters
downloadIcsFile
Downloads the ICS file.
Parameters
getClientLink
Generates the proper link for the provided client.
N.B. For an ics
client, this function
will produce a Data URL.
Parameters
getIcsData
Generates the ICS file data.
Parameters
Event
Calendar event data
title
Name of the event.
Type: string
startDate
The starting date for the event.
Type: string
endDate
The closing date for the event.
Type: string
description
Description of the event.
Type: string
allDay
Tells whether the event is all day.
Type: boolean
location
Location of the event.
Type: string
rRule
Recurrence rules for the event.
Type: string
organizer
The organizer of the event.
Type: Organizer
busy
Tells whether the event is available.
Type: boolean
guests
Invited guests' emails.
url
A more dynamic rendition of the event information.
Type: string
Organizer
An event organizer
name
The name of the organizer.
Type: string
The email of the organizer.
Type: string
Client
Client type
Type: ("google"
| "outlook"
| "office365"
| "yahoo"
| "ics"
)