iamcal 1.1.1 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +47 -11
- package/lib/component.d.ts +62 -0
- package/lib/component.d.ts.map +1 -0
- package/lib/component.js +208 -0
- package/lib/components/Calendar.d.ts +66 -0
- package/lib/components/Calendar.d.ts.map +1 -0
- package/lib/components/Calendar.js +121 -0
- package/lib/components/CalendarEvent.d.ts +109 -0
- package/lib/components/CalendarEvent.d.ts.map +1 -0
- package/lib/components/CalendarEvent.js +223 -0
- package/lib/components/TimeZone.d.ts +74 -0
- package/lib/components/TimeZone.d.ts.map +1 -0
- package/lib/components/TimeZone.js +127 -0
- package/lib/components/TimeZoneOffset.d.ts +103 -0
- package/lib/components/TimeZoneOffset.d.ts.map +1 -0
- package/lib/components/TimeZoneOffset.js +148 -0
- package/lib/components/index.d.ts +5 -0
- package/lib/components/index.d.ts.map +1 -0
- package/lib/components/index.js +21 -0
- package/lib/date.d.ts +165 -0
- package/lib/date.d.ts.map +1 -0
- package/lib/date.js +373 -0
- package/lib/index.d.ts +6 -153
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +21 -469
- package/lib/io.d.ts +10 -8
- package/lib/io.d.ts.map +1 -1
- package/lib/io.js +18 -13
- package/lib/parse.d.ts +33 -16
- package/lib/parse.d.ts.map +1 -1
- package/lib/parse.js +59 -56
- package/lib/patterns.d.ts +36 -0
- package/lib/patterns.d.ts.map +1 -0
- package/lib/patterns.js +50 -0
- package/lib/property.d.ts +149 -0
- package/lib/property.d.ts.map +1 -0
- package/lib/property.js +450 -0
- package/package.json +48 -43
- package/src/component.ts +248 -0
- package/src/components/Calendar.ts +162 -0
- package/src/components/CalendarEvent.ts +270 -0
- package/src/components/TimeZone.ts +152 -0
- package/src/components/TimeZoneOffset.ts +187 -0
- package/src/components/index.ts +4 -0
- package/src/date.ts +395 -0
- package/src/index.ts +6 -576
- package/src/io.ts +17 -13
- package/src/parse.ts +72 -52
- package/src/patterns.ts +69 -0
- package/src/property.ts +492 -0
- package/lib/types.d.ts +0 -6
- package/lib/types.d.ts.map +0 -1
- package/lib/types.js +0 -3
- package/src/types.ts +0 -5
package/lib/index.js
CHANGED
|
@@ -1,471 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
2
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
components;
|
|
11
|
-
constructor(name, properties, components) {
|
|
12
|
-
this.name = name;
|
|
13
|
-
if (properties) {
|
|
14
|
-
this.properties = properties;
|
|
15
|
-
}
|
|
16
|
-
else {
|
|
17
|
-
this.properties = new Array();
|
|
18
|
-
}
|
|
19
|
-
if (components) {
|
|
20
|
-
this.components = components;
|
|
21
|
-
}
|
|
22
|
-
else {
|
|
23
|
-
this.components = new Array();
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
serialize() {
|
|
27
|
-
// Create lines
|
|
28
|
-
const lines = [`BEGIN:${this.name}`];
|
|
29
|
-
for (let property of this.properties) {
|
|
30
|
-
let line = property['name'] + //
|
|
31
|
-
property.params.map(p => ';' + p).join('') +
|
|
32
|
-
':' +
|
|
33
|
-
property['value'];
|
|
34
|
-
// Wrap lines
|
|
35
|
-
while (line.length > MAX_LINE_LENGTH) {
|
|
36
|
-
lines.push(line.substring(0, MAX_LINE_LENGTH));
|
|
37
|
-
line = ' ' + line.substring(MAX_LINE_LENGTH);
|
|
38
|
-
}
|
|
39
|
-
lines.push(line);
|
|
40
|
-
}
|
|
41
|
-
for (let component of this.components) {
|
|
42
|
-
lines.push(component.serialize());
|
|
43
|
-
}
|
|
44
|
-
lines.push(`END:${this.name}`);
|
|
45
|
-
// Join lines
|
|
46
|
-
const serialized = lines.join('\n');
|
|
47
|
-
return serialized;
|
|
48
|
-
}
|
|
49
|
-
getProperty(name) {
|
|
50
|
-
for (const property of this.properties) {
|
|
51
|
-
if (property.name === name) {
|
|
52
|
-
return property;
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
return null;
|
|
56
|
-
}
|
|
57
|
-
setProperty(name, value) {
|
|
58
|
-
for (const property of this.properties) {
|
|
59
|
-
if (property.name === name) {
|
|
60
|
-
property.value = value;
|
|
61
|
-
return this;
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
this.properties.push({
|
|
65
|
-
name: name,
|
|
66
|
-
params: [],
|
|
67
|
-
value: value,
|
|
68
|
-
});
|
|
69
|
-
return this;
|
|
70
|
-
}
|
|
71
|
-
removePropertiesWithName(name) {
|
|
72
|
-
const index = this.properties.findIndex(p => p.name === name);
|
|
73
|
-
if (index === -1)
|
|
74
|
-
return this;
|
|
75
|
-
// Remove property at index
|
|
76
|
-
this.properties.splice(index, 1);
|
|
77
|
-
}
|
|
78
|
-
getPropertyParams(name) {
|
|
79
|
-
for (const property of this.properties) {
|
|
80
|
-
if (property.name === name) {
|
|
81
|
-
return property.params;
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
return null;
|
|
85
|
-
}
|
|
86
|
-
setPropertyParams(name, params) {
|
|
87
|
-
for (const property of this.properties) {
|
|
88
|
-
if (property.name === name) {
|
|
89
|
-
property.params = params;
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
return this;
|
|
93
|
-
}
|
|
94
|
-
addComponent(component) {
|
|
95
|
-
this.components.push(component);
|
|
96
|
-
return this;
|
|
97
|
-
}
|
|
98
|
-
/**
|
|
99
|
-
* Remove a component from this component
|
|
100
|
-
* @returns `true` if the component was removed. `false` if the component was not present
|
|
101
|
-
*/
|
|
102
|
-
removeComponent(component) {
|
|
103
|
-
const index = this.components.indexOf(component);
|
|
104
|
-
if (index === -1)
|
|
105
|
-
return false;
|
|
106
|
-
// Remove element at index from list
|
|
107
|
-
this.components.splice(index, 1);
|
|
108
|
-
return true;
|
|
109
|
-
}
|
|
110
|
-
getComponents(name) {
|
|
111
|
-
const components = [];
|
|
112
|
-
for (let component of this.components) {
|
|
113
|
-
if (component.name === name) {
|
|
114
|
-
components.push(component);
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
return components;
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
exports.Component = Component;
|
|
121
|
-
/**
|
|
122
|
-
* Represents a VCALENDAR component, the root component of an iCalendar file.
|
|
123
|
-
*/
|
|
124
|
-
class Calendar extends Component {
|
|
125
|
-
name = 'VCALENDAR';
|
|
126
|
-
constructor(a, b) {
|
|
127
|
-
var component;
|
|
128
|
-
if (a instanceof Component) {
|
|
129
|
-
component = a;
|
|
130
|
-
}
|
|
131
|
-
else {
|
|
132
|
-
const prodid = a;
|
|
133
|
-
const version = b ?? '2.0';
|
|
134
|
-
component = new Component('VCALENDAR');
|
|
135
|
-
component.setProperty('PRODID', prodid);
|
|
136
|
-
component.setProperty('VERSION', version);
|
|
137
|
-
}
|
|
138
|
-
super(component.name, component.properties, component.components);
|
|
139
|
-
}
|
|
140
|
-
events() {
|
|
141
|
-
return this.getComponents('VEVENT').map(c => new CalendarEvent(c));
|
|
142
|
-
}
|
|
143
|
-
removeEvent(a) {
|
|
144
|
-
if (a instanceof CalendarEvent) {
|
|
145
|
-
const event = a;
|
|
146
|
-
return this.removeComponent(event);
|
|
147
|
-
}
|
|
148
|
-
else {
|
|
149
|
-
const uid = a;
|
|
150
|
-
for (const event of this.events()) {
|
|
151
|
-
if (event.uid() !== uid)
|
|
152
|
-
continue;
|
|
153
|
-
return this.removeComponent(event);
|
|
154
|
-
}
|
|
155
|
-
}
|
|
156
|
-
return false;
|
|
157
|
-
}
|
|
158
|
-
prodId() {
|
|
159
|
-
return this.getProperty('PRODID').value;
|
|
160
|
-
}
|
|
161
|
-
setProdId(value) {
|
|
162
|
-
return this.setProperty('PRODID', value);
|
|
163
|
-
}
|
|
164
|
-
version() {
|
|
165
|
-
return this.getProperty('VERSION').value;
|
|
166
|
-
}
|
|
167
|
-
setVersion(value) {
|
|
168
|
-
return this.setProperty('VERSION', value);
|
|
169
|
-
}
|
|
170
|
-
calScale() {
|
|
171
|
-
return this.getProperty('CALSCALE')?.value;
|
|
172
|
-
}
|
|
173
|
-
setCalScale(value) {
|
|
174
|
-
return this.setProperty('CALSCALE', value);
|
|
175
|
-
}
|
|
176
|
-
removeCalScale() {
|
|
177
|
-
this.removePropertiesWithName('CALSCALE');
|
|
178
|
-
}
|
|
179
|
-
method() {
|
|
180
|
-
return this.getProperty('METHOD')?.value;
|
|
181
|
-
}
|
|
182
|
-
setMethod(value) {
|
|
183
|
-
this.setProperty('METHOD', value);
|
|
184
|
-
}
|
|
185
|
-
removeMethod() {
|
|
186
|
-
this.removePropertiesWithName('METHOD');
|
|
187
|
-
}
|
|
188
|
-
calendarName() {
|
|
189
|
-
return this.getProperty('X-WR-CALNAME')?.value;
|
|
190
|
-
}
|
|
191
|
-
setCalendarName(value) {
|
|
192
|
-
this.setProperty('X-WR-CALNAME', value);
|
|
193
|
-
}
|
|
194
|
-
removeCalendarName() {
|
|
195
|
-
this.removePropertiesWithName('X-WR-CALNAME');
|
|
196
|
-
}
|
|
197
|
-
calendarDescription() {
|
|
198
|
-
return this.getProperty('X-WR-CALDESC')?.value;
|
|
199
|
-
}
|
|
200
|
-
setCalendarDescription(value) {
|
|
201
|
-
return this.setProperty('X-WR-CALDESC', value);
|
|
202
|
-
}
|
|
203
|
-
removeCalendarDescription() {
|
|
204
|
-
this.removePropertiesWithName('X-WR-CALDESC');
|
|
205
|
-
}
|
|
206
|
-
}
|
|
207
|
-
exports.Calendar = Calendar;
|
|
208
|
-
/**
|
|
209
|
-
* Represents a VTIMEZONE component, containing time zone definitions.
|
|
210
|
-
*/
|
|
211
|
-
class TimeZone extends Component {
|
|
212
|
-
constructor(a) {
|
|
213
|
-
var component;
|
|
214
|
-
if (a instanceof Component) {
|
|
215
|
-
component = a;
|
|
216
|
-
}
|
|
217
|
-
else {
|
|
218
|
-
const tzid = a;
|
|
219
|
-
component = new Component('VTIMEZONE');
|
|
220
|
-
component.setProperty('TZID', tzid);
|
|
221
|
-
}
|
|
222
|
-
super(component.name, component.properties, component.components);
|
|
223
|
-
}
|
|
224
|
-
id() {
|
|
225
|
-
return this.getProperty('TZID').value;
|
|
226
|
-
}
|
|
227
|
-
setId(value) {
|
|
228
|
-
return this.setProperty('TZID', value);
|
|
229
|
-
}
|
|
230
|
-
lastMod() {
|
|
231
|
-
const text = this.getProperty('LAST-MOD');
|
|
232
|
-
if (!text)
|
|
233
|
-
return;
|
|
234
|
-
return (0, parse_1.parseDate)(text);
|
|
235
|
-
}
|
|
236
|
-
setLastMod(value) {
|
|
237
|
-
return this.setProperty('LAST-MOD', value.toISOString());
|
|
238
|
-
}
|
|
239
|
-
removeLastMod() {
|
|
240
|
-
this.removePropertiesWithName('LAST-MOD');
|
|
241
|
-
}
|
|
242
|
-
url() {
|
|
243
|
-
return this.getProperty('TZURL')?.value;
|
|
244
|
-
}
|
|
245
|
-
setUrl(value) {
|
|
246
|
-
return this.setProperty('TZURL', value);
|
|
247
|
-
}
|
|
248
|
-
removeUrl() {
|
|
249
|
-
this.removePropertiesWithName('TZURL');
|
|
250
|
-
}
|
|
251
|
-
/** Get all time offsets. */
|
|
252
|
-
offsets() {
|
|
253
|
-
const offsets = [];
|
|
254
|
-
this.components.forEach(component => {
|
|
255
|
-
if (component.name === 'STANDARD' || component.name === 'DAYLIGHT') {
|
|
256
|
-
offsets.push(new TimeZoneOffset(component));
|
|
257
|
-
}
|
|
258
|
-
});
|
|
259
|
-
return offsets;
|
|
260
|
-
}
|
|
261
|
-
/** Get standard/winter time offsets. */
|
|
262
|
-
standardOffsets() {
|
|
263
|
-
return this.getComponents('STANDARD').map(c => new TimeZoneOffset(c));
|
|
264
|
-
}
|
|
265
|
-
/** Get daylight savings time offsets. */
|
|
266
|
-
daylightOffsets() {
|
|
267
|
-
return this.getComponents('DAYLIGHT').map(c => new TimeZoneOffset(c));
|
|
268
|
-
}
|
|
269
|
-
}
|
|
270
|
-
exports.TimeZone = TimeZone;
|
|
271
|
-
/** Represents a STANDARD or DAYLIGHT component, defining a time zone offset. */
|
|
272
|
-
class TimeZoneOffset extends Component {
|
|
273
|
-
constructor(a, b, c, d) {
|
|
274
|
-
var component;
|
|
275
|
-
if (a instanceof Component) {
|
|
276
|
-
component = a;
|
|
277
|
-
}
|
|
278
|
-
else {
|
|
279
|
-
const name = a;
|
|
280
|
-
const start = b;
|
|
281
|
-
const offsetFrom = c;
|
|
282
|
-
const offsetTo = d;
|
|
283
|
-
component = new Component(name);
|
|
284
|
-
component.setProperty('DTSTART', (0, parse_1.toDateTimeString)(start));
|
|
285
|
-
component.setProperty('TZOFFSETFROM', offsetFrom);
|
|
286
|
-
component.setProperty('TZOFFSETTO', offsetTo);
|
|
287
|
-
}
|
|
288
|
-
super(component.name, component.properties, component.components);
|
|
289
|
-
}
|
|
290
|
-
start() {
|
|
291
|
-
return (0, parse_1.parseDate)(this.getProperty('DTSTART'));
|
|
292
|
-
}
|
|
293
|
-
setStart(value, fullDay = false) {
|
|
294
|
-
if (fullDay) {
|
|
295
|
-
this.setProperty('DTSTART', (0, parse_1.toDateString)(value));
|
|
296
|
-
this.setPropertyParams('DTSTART', ['VALUE=DATE']);
|
|
297
|
-
}
|
|
298
|
-
else {
|
|
299
|
-
this.setProperty('DTSTART', (0, parse_1.toDateTimeString)(value));
|
|
300
|
-
}
|
|
301
|
-
return this;
|
|
302
|
-
}
|
|
303
|
-
offsetFrom() {
|
|
304
|
-
return this.getProperty('TZOFFSETFROM').value;
|
|
305
|
-
}
|
|
306
|
-
setOffsetFrom(value) {
|
|
307
|
-
return this.setProperty('TZOFFSETFROM', value);
|
|
308
|
-
}
|
|
309
|
-
offsetTo() {
|
|
310
|
-
return this.getProperty('TZOFFSETTO').value;
|
|
311
|
-
}
|
|
312
|
-
setOffsetTo(value) {
|
|
313
|
-
return this.setProperty('TZOFFSETTO', value);
|
|
314
|
-
}
|
|
315
|
-
comment() {
|
|
316
|
-
return this.getProperty('COMMENT')?.value;
|
|
317
|
-
}
|
|
318
|
-
setComment(value) {
|
|
319
|
-
return this.setProperty('COMMENT', value);
|
|
320
|
-
}
|
|
321
|
-
removeComment() {
|
|
322
|
-
this.removePropertiesWithName('COMMENT');
|
|
323
|
-
}
|
|
324
|
-
timeZoneName() {
|
|
325
|
-
return this.getProperty('TZNAME')?.value;
|
|
326
|
-
}
|
|
327
|
-
setTimeZoneName(value) {
|
|
328
|
-
return this.setProperty('TZNAME', value);
|
|
329
|
-
}
|
|
330
|
-
removeTimeZoneName() {
|
|
331
|
-
this.removePropertiesWithName('TZNAME');
|
|
332
|
-
}
|
|
333
|
-
}
|
|
334
|
-
class CalendarEvent extends Component {
|
|
335
|
-
name = 'VEVENT';
|
|
336
|
-
constructor(a, b) {
|
|
337
|
-
var component;
|
|
338
|
-
if (b) {
|
|
339
|
-
const uid = a;
|
|
340
|
-
const dtstamp = b;
|
|
341
|
-
component = new Component('VEVENT');
|
|
342
|
-
component.setProperty('UID', uid);
|
|
343
|
-
component.setProperty('DTSTAMP', (0, parse_1.toDateTimeString)(dtstamp));
|
|
344
|
-
}
|
|
345
|
-
else {
|
|
346
|
-
component = a;
|
|
347
|
-
}
|
|
348
|
-
super(component.name, component.properties, component.components);
|
|
349
|
-
}
|
|
350
|
-
stamp() {
|
|
351
|
-
return (0, parse_1.parseDate)(this.getProperty('DTSTAMP'));
|
|
352
|
-
}
|
|
353
|
-
setStamp(value, fullDay = false) {
|
|
354
|
-
if (fullDay) {
|
|
355
|
-
this.setProperty('DTSTAMP', (0, parse_1.toDateString)(value));
|
|
356
|
-
this.setPropertyParams('DTSTAMP', ['VALUE=DATE']);
|
|
357
|
-
}
|
|
358
|
-
else {
|
|
359
|
-
this.setProperty('DTSTAMP', (0, parse_1.toDateTimeString)(value));
|
|
360
|
-
}
|
|
361
|
-
return this;
|
|
362
|
-
}
|
|
363
|
-
uid() {
|
|
364
|
-
return this.getProperty('UID').value;
|
|
365
|
-
}
|
|
366
|
-
setUid(value) {
|
|
367
|
-
return this.setProperty('UID', value);
|
|
368
|
-
}
|
|
369
|
-
summary() {
|
|
370
|
-
return this.getProperty('SUMMARY').value;
|
|
371
|
-
}
|
|
372
|
-
setSummary(value) {
|
|
373
|
-
return this.setProperty('SUMMARY', value);
|
|
374
|
-
}
|
|
375
|
-
removeSummary() {
|
|
376
|
-
this.removePropertiesWithName('SUMMARY');
|
|
377
|
-
}
|
|
378
|
-
description() {
|
|
379
|
-
return this.getProperty('DESCRIPTION').value;
|
|
380
|
-
}
|
|
381
|
-
setDescription(value) {
|
|
382
|
-
return this.setProperty('DESCRIPTION', value);
|
|
383
|
-
}
|
|
384
|
-
removeDescription() {
|
|
385
|
-
this.removePropertiesWithName('DESCRIPTION');
|
|
386
|
-
}
|
|
387
|
-
location() {
|
|
388
|
-
return this.getProperty('LOCATION')?.value;
|
|
389
|
-
}
|
|
390
|
-
setLocation(value) {
|
|
391
|
-
return this.setProperty('LOCATION', value);
|
|
392
|
-
}
|
|
393
|
-
removeLocation() {
|
|
394
|
-
this.removePropertiesWithName('LOCATION');
|
|
395
|
-
}
|
|
396
|
-
/**
|
|
397
|
-
* Get the start of the event.
|
|
398
|
-
* If set as a full day the time will be at the start of the day.
|
|
399
|
-
*/
|
|
400
|
-
start() {
|
|
401
|
-
return (0, parse_1.parseDate)(this.getProperty('DTSTART'));
|
|
402
|
-
}
|
|
403
|
-
/** Set the start of the event. */
|
|
404
|
-
setStart(value, fullDay = false) {
|
|
405
|
-
if (fullDay) {
|
|
406
|
-
this.setProperty('DTSTART', (0, parse_1.toDateString)(value));
|
|
407
|
-
this.setPropertyParams('DTSTART', ['VALUE=DATE']);
|
|
408
|
-
}
|
|
409
|
-
else {
|
|
410
|
-
this.setProperty('DTSTART', (0, parse_1.toDateTimeString)(value));
|
|
411
|
-
}
|
|
412
|
-
return this;
|
|
413
|
-
}
|
|
414
|
-
removeStart() {
|
|
415
|
-
this.removePropertiesWithName('DTSTART');
|
|
416
|
-
}
|
|
417
|
-
/**
|
|
418
|
-
* Get the non-inclusive end of the event.
|
|
419
|
-
* If set as a full day the time will be at the start of the day.
|
|
420
|
-
*/
|
|
421
|
-
end() {
|
|
422
|
-
return (0, parse_1.parseDate)(this.getProperty('DTEND'));
|
|
423
|
-
}
|
|
424
|
-
/**
|
|
425
|
-
* Set the non-inclusive end of the event.
|
|
426
|
-
*/
|
|
427
|
-
setEnd(value, fullDay = false) {
|
|
428
|
-
if (fullDay) {
|
|
429
|
-
this.setProperty('DTEND', (0, parse_1.toDateString)(value));
|
|
430
|
-
this.setPropertyParams('DTEND', ['VALUE=DATE']);
|
|
431
|
-
}
|
|
432
|
-
else {
|
|
433
|
-
this.setProperty('DTEND', (0, parse_1.toDateTimeString)(value));
|
|
434
|
-
}
|
|
435
|
-
return this;
|
|
436
|
-
}
|
|
437
|
-
removeEnd() {
|
|
438
|
-
this.removePropertiesWithName('DTEND');
|
|
439
|
-
}
|
|
440
|
-
created() {
|
|
441
|
-
const property = this.getProperty('CREATED');
|
|
442
|
-
if (!property)
|
|
443
|
-
return;
|
|
444
|
-
return (0, parse_1.parseDate)(property);
|
|
445
|
-
}
|
|
446
|
-
setCreated(value) {
|
|
447
|
-
return this.setProperty('CREATED', (0, parse_1.toDateTimeString)(value));
|
|
448
|
-
}
|
|
449
|
-
removeCreated() {
|
|
450
|
-
this.removePropertiesWithName('CREATED');
|
|
451
|
-
}
|
|
452
|
-
geo() {
|
|
453
|
-
const text = this.getProperty('GEO')?.value;
|
|
454
|
-
if (!text)
|
|
455
|
-
return;
|
|
456
|
-
const pattern = /^[+-]?\d+(\.\d+)?,[+-]?\d+(\.\d+)?$/;
|
|
457
|
-
if (!pattern.test(text))
|
|
458
|
-
throw new Error(`Failed to parse GEO property: ${text}`);
|
|
459
|
-
const [longitude, latitude] = text.split(',');
|
|
460
|
-
return [parseFloat(longitude), parseFloat(latitude)];
|
|
461
|
-
}
|
|
462
|
-
setGeo(latitude, longitude) {
|
|
463
|
-
const text = `${latitude},${longitude}`;
|
|
464
|
-
return this;
|
|
465
|
-
}
|
|
466
|
-
removeGeo() {
|
|
467
|
-
this.removePropertiesWithName('GEO');
|
|
468
|
-
}
|
|
469
|
-
}
|
|
470
|
-
exports.CalendarEvent = CalendarEvent;
|
|
471
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUNBQW1FO0FBR25FLDhDQUE4QztBQUM5QyxNQUFNLGVBQWUsR0FBRyxFQUFFLENBQUE7QUFFMUIsTUFBYSxTQUFTO0lBQ2xCLElBQUksQ0FBUTtJQUNaLFVBQVUsQ0FBWTtJQUN0QixVQUFVLENBQWE7SUFFdkIsWUFBWSxJQUFZLEVBQUUsVUFBdUIsRUFBRSxVQUF3QjtRQUN2RSxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQTtRQUNoQixJQUFJLFVBQVUsRUFBRSxDQUFDO1lBQ2IsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUE7UUFDaEMsQ0FBQzthQUFNLENBQUM7WUFDSixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksS0FBSyxFQUFFLENBQUE7UUFDakMsQ0FBQztRQUNELElBQUksVUFBVSxFQUFFLENBQUM7WUFDYixJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQTtRQUNoQyxDQUFDO2FBQU0sQ0FBQztZQUNKLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxLQUFLLEVBQUUsQ0FBQTtRQUNqQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFNBQVM7UUFDTCxlQUFlO1FBQ2YsTUFBTSxLQUFLLEdBQUcsQ0FBQyxTQUFTLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFBO1FBRXBDLEtBQUssSUFBSSxRQUFRLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ25DLElBQUksSUFBSSxHQUNKLFFBQVEsQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFO2dCQUNyQixRQUFRLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO2dCQUMxQyxHQUFHO2dCQUNILFFBQVEsQ0FBQyxPQUFPLENB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
|
|
17
|
+
__exportStar(require("./component"), exports);
|
|
18
|
+
__exportStar(require("./components"), exports);
|
|
19
|
+
__exportStar(require("./date"), exports);
|
|
20
|
+
__exportStar(require("./io"), exports);
|
|
21
|
+
__exportStar(require("./parse"), exports);
|
|
22
|
+
__exportStar(require("./property"), exports);
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDhDQUEyQjtBQUMzQiwrQ0FBNEI7QUFDNUIseUNBQXNCO0FBQ3RCLHVDQUFvQjtBQUNwQiwwQ0FBdUI7QUFDdkIsNkNBQTBCIn0=
|
package/lib/io.d.ts
CHANGED
|
@@ -1,16 +1,18 @@
|
|
|
1
1
|
import fs from 'fs';
|
|
2
|
-
import { Calendar } from '
|
|
2
|
+
import { Calendar } from './components/Calendar';
|
|
3
3
|
/**
|
|
4
|
-
* Read a calendar from a
|
|
5
|
-
* @param path Path to the file
|
|
6
|
-
* @
|
|
7
|
-
* @throws
|
|
4
|
+
* Read a calendar from a iCalendar file.
|
|
5
|
+
* @param path Path to the file.
|
|
6
|
+
* @returns The calendar deserialized from the file.
|
|
7
|
+
* @throws {DeserializationError} If the file content is not a valid calendar.
|
|
8
8
|
*/
|
|
9
9
|
export declare function load(path: fs.PathLike): Promise<Calendar>;
|
|
10
10
|
/**
|
|
11
|
-
* Write a calendar to a .
|
|
12
|
-
* @param calendar The calendar
|
|
13
|
-
* @param path Path to the file to write
|
|
11
|
+
* Write a calendar to a file.
|
|
12
|
+
* @param calendar The calendar to write to file.
|
|
13
|
+
* @param path Path to the file to write.
|
|
14
|
+
* @example
|
|
15
|
+
* dump(myCalendar, 'calendar.ics')
|
|
14
16
|
*/
|
|
15
17
|
export declare function dump(calendar: Calendar, path: string): Promise<void>;
|
|
16
18
|
//# sourceMappingURL=io.d.ts.map
|
package/lib/io.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"io.d.ts","sourceRoot":"","sources":["../src/io.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAA;AAEnB,OAAO,EAAE,QAAQ,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"io.d.ts","sourceRoot":"","sources":["../src/io.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAA;AAEnB,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAGhD;;;;;GAKG;AACH,wBAAsB,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAc/D;AAED;;;;;;GAMG;AACH,wBAAgB,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAMpE"}
|
package/lib/io.js
CHANGED
|
@@ -7,27 +7,32 @@ exports.load = load;
|
|
|
7
7
|
exports.dump = dump;
|
|
8
8
|
const fs_1 = __importDefault(require("fs"));
|
|
9
9
|
const readline_1 = __importDefault(require("readline"));
|
|
10
|
-
const
|
|
10
|
+
const Calendar_1 = require("./components/Calendar");
|
|
11
11
|
const parse_1 = require("./parse");
|
|
12
12
|
/**
|
|
13
|
-
* Read a calendar from a
|
|
14
|
-
* @param path Path to the file
|
|
15
|
-
* @
|
|
16
|
-
* @throws
|
|
13
|
+
* Read a calendar from a iCalendar file.
|
|
14
|
+
* @param path Path to the file.
|
|
15
|
+
* @returns The calendar deserialized from the file.
|
|
16
|
+
* @throws {DeserializationError} If the file content is not a valid calendar.
|
|
17
17
|
*/
|
|
18
18
|
async function load(path) {
|
|
19
19
|
const stream = fs_1.default.createReadStream(path);
|
|
20
|
-
const lines = readline_1.default.createInterface({
|
|
21
|
-
|
|
20
|
+
const lines = readline_1.default.createInterface({
|
|
21
|
+
input: stream,
|
|
22
|
+
crlfDelay: Infinity,
|
|
23
|
+
});
|
|
24
|
+
const component = await (0, parse_1.deserializeComponent)(lines);
|
|
22
25
|
if (component.name != 'VCALENDAR') {
|
|
23
|
-
throw
|
|
26
|
+
throw new parse_1.DeserializationError('Component must be a VCALENDAR');
|
|
24
27
|
}
|
|
25
|
-
return new
|
|
28
|
+
return new Calendar_1.Calendar(component);
|
|
26
29
|
}
|
|
27
30
|
/**
|
|
28
|
-
* Write a calendar to a .
|
|
29
|
-
* @param calendar The calendar
|
|
30
|
-
* @param path Path to the file to write
|
|
31
|
+
* Write a calendar to a file.
|
|
32
|
+
* @param calendar The calendar to write to file.
|
|
33
|
+
* @param path Path to the file to write.
|
|
34
|
+
* @example
|
|
35
|
+
* dump(myCalendar, 'calendar.ics')
|
|
31
36
|
*/
|
|
32
37
|
function dump(calendar, path) {
|
|
33
38
|
return new Promise(resolve => {
|
|
@@ -36,4 +41,4 @@ function dump(calendar, path) {
|
|
|
36
41
|
});
|
|
37
42
|
});
|
|
38
43
|
}
|
|
39
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFXQSxvQkFjQztBQVNELG9CQU1DO0FBeENELDRDQUFtQjtBQUNuQix3REFBK0I7QUFDL0Isb0RBQWdEO0FBQ2hELG1DQUFvRTtBQUVwRTs7Ozs7R0FLRztBQUNJLEtBQUssVUFBVSxJQUFJLENBQUMsSUFBaUI7SUFDeEMsTUFBTSxNQUFNLEdBQUcsWUFBRSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFBO0lBQ3hDLE1BQU0sS0FBSyxHQUFHLGtCQUFRLENBQUMsZUFBZSxDQUFDO1FBQ25DLEtBQUssRUFBRSxNQUFNO1FBQ2IsU0FBUyxFQUFFLFFBQVE7S0FDdEIsQ0FBQyxDQUFBO0lBRUYsTUFBTSxTQUFTLEdBQUcsTUFBTSxJQUFBLDRCQUFvQixFQUFDLEtBQUssQ0FBQyxDQUFBO0lBRW5ELElBQUksU0FBUyxDQUFDLElBQUksSUFBSSxXQUFXLEVBQUUsQ0FBQztRQUNoQyxNQUFNLElBQUksNEJBQW9CLENBQUMsK0JBQStCLENBQUMsQ0FBQTtJQUNuRSxDQUFDO0lBRUQsT0FBTyxJQUFJLG1CQUFRLENBQUMsU0FBUyxDQUFDLENBQUE7QUFDbEMsQ0FBQztBQUVEOzs7Ozs7R0FNRztBQUNILFNBQWdCLElBQUksQ0FBQyxRQUFrQixFQUFFLElBQVk7SUFDakQsT0FBTyxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRTtRQUN6QixZQUFFLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsU0FBUyxFQUFFLEVBQUUsR0FBRyxFQUFFO1lBQzFDLE9BQU8sRUFBRSxDQUFBO1FBQ2IsQ0FBQyxDQUFDLENBQUE7SUFDTixDQUFDLENBQUMsQ0FBQTtBQUNOLENBQUMifQ==
|
package/lib/parse.d.ts
CHANGED
|
@@ -1,33 +1,50 @@
|
|
|
1
1
|
import readline from 'readline';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { Component } from './component';
|
|
3
|
+
import { Calendar, CalendarEvent } from './components';
|
|
4
|
+
/** Represents an error that occurs when deserializing a calendar component. */
|
|
4
5
|
export declare class DeserializationError extends Error {
|
|
5
6
|
name: string;
|
|
6
7
|
}
|
|
7
8
|
/**
|
|
8
|
-
* Deserialize a calendar component
|
|
9
|
-
* @param lines
|
|
9
|
+
* Deserialize a calendar component.
|
|
10
|
+
* @param lines The serialized component as a **readline** interface.
|
|
11
|
+
* @returns The deserialized calendar component object.
|
|
12
|
+
* @throws {DeserializationError} If the component is invalid.
|
|
13
|
+
*/
|
|
14
|
+
export declare function deserializeComponent(lines: readline.Interface): Promise<Component>;
|
|
15
|
+
/**
|
|
16
|
+
* Deserialize a calendar component.
|
|
17
|
+
* @param lines The serialized component as a **readline** interface.
|
|
18
|
+
* @returns The deserialized calendar component object.
|
|
19
|
+
* @throws {DeserializationError} If the component is invalid.
|
|
20
|
+
* @deprecated Use {@link deserializeComponent} instead.
|
|
10
21
|
*/
|
|
11
22
|
export declare function deserialize(lines: readline.Interface): Promise<Component>;
|
|
12
23
|
/**
|
|
13
|
-
* Deserialize a calendar component
|
|
14
|
-
* @param text
|
|
24
|
+
* Deserialize a calendar component string.
|
|
25
|
+
* @param text The serialized component.
|
|
26
|
+
* @returns The deserialized component object.
|
|
27
|
+
* @throws {DeserializationError} If the component is invalid.
|
|
28
|
+
*/
|
|
29
|
+
export declare function deserializeComponentString(text: string): Promise<Component>;
|
|
30
|
+
/**
|
|
31
|
+
* Deserialize a calendar component string.
|
|
32
|
+
* @param text The serialized component.
|
|
33
|
+
* @returns The deserialized component object.
|
|
34
|
+
* @throws {DeserializationError} If the component is invalid.
|
|
35
|
+
* @deprecated Use {@link deserializeComponentString} instead.
|
|
15
36
|
*/
|
|
16
37
|
export declare function deserializeString(text: string): Promise<Component>;
|
|
17
38
|
/**
|
|
18
|
-
* Parse a calendar
|
|
19
|
-
* @param text
|
|
20
|
-
* @returns
|
|
39
|
+
* Parse a serialized calendar.
|
|
40
|
+
* @param text A serialized calendar as you would see in an iCalendar file.
|
|
41
|
+
* @returns The parsed calendar object.
|
|
21
42
|
*/
|
|
22
43
|
export declare function parseCalendar(text: string): Promise<Calendar>;
|
|
23
44
|
/**
|
|
24
|
-
* Parse
|
|
25
|
-
* @param text
|
|
26
|
-
* @returns
|
|
45
|
+
* Parse a serialized calendar event.
|
|
46
|
+
* @param text A serialized event as you would see in an iCalendar file.
|
|
47
|
+
* @returns The parsed event object.
|
|
27
48
|
*/
|
|
28
49
|
export declare function parseEvent(text: string): Promise<CalendarEvent>;
|
|
29
|
-
export declare function parseDate(dateProperty: Property): Date;
|
|
30
|
-
export declare function toTimeString(date: Date): string;
|
|
31
|
-
export declare function toDateString(date: Date): string;
|
|
32
|
-
export declare function toDateTimeString(date: Date): string;
|
|
33
50
|
//# sourceMappingURL=parse.d.ts.map
|