1.0.2 • Published 5 years ago

node-add-to-calendar v1.0.2

Weekly downloads
5
License
MIT
Repository
bitbucket
Last release
5 years ago

node-add-to-calendar

Generate calendar events for:

  • iCal
  • Google
  • Outlook
  • Outlook (online)

Install

npm install node-add-to-calendar

Examples

Generate a link for Google Calendar:

const nodeAddToCal = require('node-add-to-calendar');

const address = 'Google, googleville 123 CA'
const eventData = {
  title: 'Meeting',
  startTime: new Date('7-15-19 12:00'),
  description: `Very important meeting at: \n\n${address}`,
  address
}
nodeAddToCal.googleLink(eventData);
// Returns: https://calendar.google.com/calendar/r/eventedit?dates=20190715T120000/20190715T123000&location=Google, googleville 123 CA&text=Meeting&details=Very important meeting at: %0D%0A%0D%0AGoogle, googleville 123 CA

Generate an ics file (iCal, Outlook etc.) and download it:

const fs = require('fs');
const path = require('path');
const nodeAddToCal = require('node-add-to-calendar');

nodeAddToCal.getIcs(
  {
    title: 'Job Interview',
    startTime: new Date('3-20-20 9:00'),
    duration: 45,
  },
  value => {
    fs.writeFileSync(path.join(path.dirname(process.mainModule.filename), '..', 'events', 'event.ics'), value);
  },
  [err => console.log(err), err => errorHandler(err)],
  () => {
    res.status(200).download(path.join(path.dirname(process.mainModule.filename), '..', 'events', 'event.ics'));
});

const errorHandler = () => {
  // Do magic here
}

API

node-add-to-calendar provides three different functions: Google Calendar

addToCal.googleLink()

Outlook Online

addToCal.outlookLink()

iCal, Outlook, Windows Calendar

addToCal.getIcs()

Google and Outlook both take a javascript object as their only parameter. Keys:

Keydata typedefault
titlestring''
startTimedatenow
durationint (in minutes)30
descriptionstring''
addressstring''

The ics file takes the same object, but it also takes success, error and a callback function:

addToCal.getIcs({}, success, error, cb)

Success and error can be either a function or an array of functions that should be called when it either succeeds or fails. The value/error is passed to these functions.

1.0.2

5 years ago

1.0.1

5 years ago

1.0.0

5 years ago