Существуют ли какие-либо нодальные считыватели, которые могут обрабатывать повторяющиеся (RRULE) события? - PullRequest
0 голосов
/ 09 октября 2018

Использование этого демонстрационного календаря :

Для считывателей календаря вывод выглядит следующим образом:

screenclip 215

Но из другого узла-icical проекты на npm и их различные форки, все, что я получаю, это:

On 2018-10-09, Event repeating monthly on 2nd tuesday at 10am
On 2018-10-10, Event repeating weekly on a Wednesday at 11am
On 2018-10-11, Single event on 11th October

Код такой, как показано ниже - несколько дополнений, так как меня интересуют только будущие даты, и приятно иметь вещи впорядок даты, а не случайный

const ical = require('ical');
var dateNow = new Date();

const url = "https://calendar.google.com/calendar/ical/ssjqjrg27h9mqqctfnr5kscmrk%40group.calendar.google.com/public/basic.ics";

  ical.fromURL(url, {}, function (err, data) {
    var ttsorted = [];
    for (const k in data) {
      const ev = data[k];
      const eventStart = new Date(ev.start);
      if (data.hasOwnProperty(k)) {
      if (eventStart.getTime() >= dateNow.getTime()) {
          const tts = `On ${ev.start.toISOString().slice(0,10)}, ${ev.summary} `;
          ttsorted.push(tts);
        }
     }
    }
    ttsorted.sort();
    for (const events of ttsorted) {
      console.log(events);
    }
  });
...