Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

cozy-ical

Package Overview
Dependencies
Maintainers
2
Versions
52
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

cozy-ical

Cozy-Ical provides ICal Parser, generators and helpers

  • 1.1.4
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
319
increased by15.58%
Maintainers
2
Weekly downloads
 
Created
Source

cozy-ical

Build
Status

Description

cozy-ical is a simple library to deal with the iCal format. It makes life easier to parse iCal files and to build them.

Warning: API backward-compatibilty breaks with the 1.0.0 version

With 1.0.0 version every component of Cozy-Ical parameters of components construction must be given through an option object. See example below for details.

Usage

Build a calendar

var VCalendar = require('cozy-ical').VCalendar;
var VEvent = require('cozy-ical').VEvent;
var VTodo = require('cozy-ical').VTodo;

var cal = new VCalendar({
  organization: 'Cozy Cloud',
  title: 'Cozy Calendar'
});

var date = new Date(2013, 5, 9, 15, 0, 0);
var vtodo = new VTodo({
  startDate: date,
  summary: 'jhon',
  description: 'my description'
});

var startDate = new Date(2013, 5, 9, 15, 0, 0);
var endDate = new Date(2013, 5, 10, 15, 0, 0);
var vevent = new VEvent({
  startDate: startDate,
  endDate: endDate,
  description: "desc",
  location: "loc",
  uid: "3615"
});

vtodo.addAlarm(date);
cal.add(vtodo);
cal.add(vevent);

cal.toString();

output:

BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//Cozy Cloud//NONSGML Cozy Agenda//EN
BEGIN:VTODO
DTSTAMP:20130609T150000Z
SUMMARY:my description
UID:jhon
BEGIN:VALARM
ACTION:DISPLAY
REPEAT:1
TRIGGER:20130609T150000Z
END:VALARM
END:VTODO
BEGIN:VEVENT
DESCRIPTION:desc
DTSTART:20130609T150000Z
DTEND:20130610T150000Z
LOCATION:loc
UID:3615
END:VEVENT
END:VCALENDAR

Parsing

var calString = "BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//Cozy Cloud//NONSGML Cozy Agenda//EN
BEGIN:VTODO
DTSTAMP:20130609T150000Z
SUMMARY:my description
UID:john
BEGIN:VALARM
ACTION:DISPLAY
REPEAT:1
TRIGGER:20130609T150000Z
END:VALARM
END:VTODO
END:VCALENDAR";

parser = new ICalParser();
parser.parseString(calString, function(err, cal) {
  console.log(cal.name);
  console.log(cal.fields.PRODID);
  console.log(cal.fields.subCompontents[0].name);
  console.log(cal.fields.subCompontents[0].fields.SUMMARY);
});

output:

VCALENDAR
-//Cozy Cloud//NONSGML Cozy Agenda//EN
VTODO
my description

Notes on iCal support

This library is meant to support all iCal features as defined in RFC 5545. Thus it's not fully supporting everything yet, here is the list of unsupported fields:

vEvent

  • ATTACH
  • CLASS
  • COMMENT
  • CONTACT
  • CREATED
  • EXDATE
  • GEO
  • LAST-MOD
  • PRIORITY
  • RECURRENCE-ID
  • RELATED-TO
  • RESOURCES
  • RDATE
  • RS-STATUS
  • SEQ
  • STATUS
  • TRANSPARENCY
  • URL

vTodo

  • ATTACH
  • ATTENDEE
  • CATEGORIES
  • CLASS
  • COMMENT
  • CONTACT
  • COMPLETED
  • CREATED
  • DESCRIPTION
  • EXDATE
  • GEO
  • LAST-MOD
  • LOCATION
  • ORGANIZER
  • PRECENT
  • PRIORITY
  • RDATE
  • RECURID
  • RELATED
  • RESOURCES
  • RRULE
  • RSTATUS
  • SEQ
  • STATUS
  • URL

vAlarm

  • TRIGGER related to END

vJournal

  • not supported at all

vFreeBusy

  • not supported at all

vTimezone

  • not supported at all

What is Cozy?

Cozy Logo

Cozy is a platform that brings all your web services in the same private space. With it, your web apps and your devices can share data easily, providing you with a new experience. You can install Cozy on your own hardware where no one profiles you. You install only the applications you want. You can build your own one too.

Community

You can reach the Cozy community via various support:

Keywords

FAQs

Package last updated on 11 Dec 2014

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc