UNPKG

repeating-interval

Version:

IS0 8601 repeating interval parsing and manipulation

40 lines 2.23 kB
"use strict"; var moment = require('moment'); var index_1 = require('../index'); console.log("Start test"); var bensInterval = new index_1.Interval('R/2016-06-03T19:14:29.674Z/PT30S'); var recurWithBegin = new index_1.Interval("R/" + new Date().toISOString() + "/PT1H"); var recurWithEnd = new index_1.Interval("R3/PT1M/" + new Date().toISOString()); var recurBeginEnd = new index_1.Interval("R/" + new Date(Date.now() - 10000).toISOString() + "/" + new Date().toISOString()); var recur3TimesWithBegin = new index_1.Interval("R3/" + new Date().toISOString() + "/PT1M"); var intervalOnly = new index_1.Interval(new Date(Date.now() - 10000).toISOString() + "/" + new Date().toISOString()); printInterval(index_1.Interval.extents([bensInterval])); printInterval(recurWithBegin); printInterval(recurWithEnd); printInterval(recurBeginEnd); printInterval(recur3TimesWithBegin); printInterval(intervalOnly); function printInterval(intervalInstance) { var current = moment(); var dayAgo = current.clone().subtract(1, 'day'); var tomorrow = current.clone().add(1, 'day'); console.log("Output for Interval: " + intervalInstance.toISOString()); console.log("Start: " + intervalInstance.start.toString()); console.log("End: " + intervalInstance.end.toString()); console.log("Recurs: " + intervalInstance.recurs); console.log("Infinite: " + intervalInstance.infinite); console.log("Repititions: " + intervalInstance.repetitions); console.log("First: " + intervalInstance.first); console.log("Last: " + intervalInstance.last); if (intervalInstance.recurs) { var thisMany = intervalInstance.infinite ? 5 : intervalInstance.repetitions; var occurrences = intervalInstance.slice(0, thisMany); console.log("Occurrences: [" + occurrences + "]"); } console.log("0 Occurrence: " + intervalInstance.occurrence(0)); console.log("-3 Occurrence: " + intervalInstance.occurrence(-3)); console.log("Duration: " + intervalInstance.duration); console.log("Next Index: " + intervalInstance.indexAfter(current)); console.log("Next Occurrence: " + intervalInstance.occurrenceAfter(tomorrow)); } //# sourceMappingURL=runTests.js.map