iamcal 3.1.0 → 4.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/lib/component.d.ts +2 -1
- package/lib/component.d.ts.map +1 -1
- package/lib/component.js +14 -16
- package/lib/components/CalendarEvent.d.ts +34 -8
- package/lib/components/CalendarEvent.d.ts.map +1 -1
- package/lib/components/CalendarEvent.js +67 -8
- package/lib/components/TimeZone.d.ts +1 -0
- package/lib/components/TimeZone.d.ts.map +1 -1
- package/lib/components/TimeZone.js +10 -1
- package/lib/date.d.ts +48 -4
- package/lib/date.d.ts.map +1 -1
- package/lib/date.js +98 -8
- package/lib/duration.d.ts +106 -0
- package/lib/duration.d.ts.map +1 -0
- package/lib/duration.js +277 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +2 -1
- package/lib/property/Property.d.ts +24 -2
- package/lib/property/Property.d.ts.map +1 -1
- package/lib/property/Property.js +71 -4
- package/lib/property/validate.js +2 -2
- package/package.json +4 -1
- package/src/component.ts +15 -23
- package/src/components/CalendarEvent.ts +73 -9
- package/src/components/TimeZone.ts +12 -0
- package/src/date.ts +122 -15
- package/src/duration.ts +329 -0
- package/src/index.ts +1 -0
- package/src/property/Property.ts +80 -5
- package/src/property/validate.ts +1 -1
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { CalendarDateOrTime } from '
|
|
1
|
+
import { CalendarDateOrTime } from '../date';
|
|
2
|
+
import { CalendarDuration } from '../duration';
|
|
2
3
|
import { AlarmTriggerRelationship, CalendarUserType, Encoding, FreeBusyTimeType, ParticipationRole, ParticipationStatus, RecurrenceIdentifierRange, RelationshipType, RsvpExpectation } from './parameter';
|
|
3
|
-
import { AllowedValueType } from './valueType';
|
|
4
|
+
import { AllowedValueType, KnownValueType } from './valueType';
|
|
4
5
|
/**
|
|
5
6
|
* Represents a property of a calendar component as described by RFC 5545 in
|
|
6
7
|
* Section 3.5.
|
|
@@ -16,6 +17,17 @@ export declare class Property {
|
|
|
16
17
|
[k: string]: string | string[];
|
|
17
18
|
});
|
|
18
19
|
static fromDate(name: string, value: CalendarDateOrTime): Property;
|
|
20
|
+
static fromDuration(name: string, value: CalendarDuration): Property;
|
|
21
|
+
/**
|
|
22
|
+
* Get the value of this property, converted into the appropriate class if possible.
|
|
23
|
+
* @returns The value as a string or appropriate class.
|
|
24
|
+
*/
|
|
25
|
+
getValue(): string | CalendarDateOrTime | CalendarDuration;
|
|
26
|
+
/**
|
|
27
|
+
* Set the value of this property and change the value type if a class is used.
|
|
28
|
+
* @param value The new value as a string or class.
|
|
29
|
+
*/
|
|
30
|
+
setValue(value: string | CalendarDateOrTime | CalendarDuration): void;
|
|
19
31
|
setParameter(name: string, value: string | string[]): void;
|
|
20
32
|
/**
|
|
21
33
|
* Get the values of a parameter on this property.
|
|
@@ -63,6 +75,16 @@ export declare class Property {
|
|
|
63
75
|
* @returns The value type of this property.
|
|
64
76
|
*/
|
|
65
77
|
getValueType(): AllowedValueType;
|
|
78
|
+
/**
|
|
79
|
+
* Get the value type of this property.
|
|
80
|
+
* @returns The value type of this property, or `undefined` if unset.
|
|
81
|
+
*/
|
|
82
|
+
getExplicitValueType(): AllowedValueType | undefined;
|
|
83
|
+
/**
|
|
84
|
+
* Get the default value type for this property.
|
|
85
|
+
* @returns The default value type based on the name of this property.
|
|
86
|
+
*/
|
|
87
|
+
getDefaultValueType(): KnownValueType;
|
|
66
88
|
/**
|
|
67
89
|
* Check whether this property has an explicit value type set.
|
|
68
90
|
* @returns Whether this property has the VALUE parameter.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Property.d.ts","sourceRoot":"","sources":["../../src/property/Property.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"Property.d.ts","sourceRoot":"","sources":["../../src/property/Property.ts"],"names":[],"mappings":"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"}
|
package/lib/property/Property.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Property = void 0;
|
|
4
|
+
const date_1 = require("../date");
|
|
5
|
+
const duration_1 = require("../duration");
|
|
4
6
|
const escape_1 = require("./escape");
|
|
5
7
|
const validate_1 = require("./validate");
|
|
6
8
|
const valueType_1 = require("./valueType");
|
|
@@ -30,7 +32,59 @@ class Property {
|
|
|
30
32
|
}
|
|
31
33
|
}
|
|
32
34
|
static fromDate(name, value) {
|
|
33
|
-
|
|
35
|
+
const valueType = value.isFullDay() ? 'DATE' : 'DATE-TIME';
|
|
36
|
+
let properties = undefined;
|
|
37
|
+
if ((0, valueType_1.getDefaultValueType)(name) !== valueType) {
|
|
38
|
+
properties = { VALUE: valueType };
|
|
39
|
+
}
|
|
40
|
+
return new Property(name, value.getValue(), properties);
|
|
41
|
+
}
|
|
42
|
+
static fromDuration(name, value) {
|
|
43
|
+
return new Property(name, value.getValue(), { VALUE: 'CALENDARDATE' });
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Get the value of this property, converted into the appropriate class if possible.
|
|
47
|
+
* @returns The value as a string or appropriate class.
|
|
48
|
+
*/
|
|
49
|
+
getValue() {
|
|
50
|
+
const valueType = this.getValueType();
|
|
51
|
+
switch (valueType) {
|
|
52
|
+
case 'DATE':
|
|
53
|
+
return new date_1.CalendarDate(this.value);
|
|
54
|
+
case 'DATE-TIME':
|
|
55
|
+
return new date_1.CalendarDateTime(this.value);
|
|
56
|
+
case 'DURATION':
|
|
57
|
+
return new duration_1.CalendarDuration(this.value);
|
|
58
|
+
default:
|
|
59
|
+
return this.value;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Set the value of this property and change the value type if a class is used.
|
|
64
|
+
* @param value The new value as a string or class.
|
|
65
|
+
*/
|
|
66
|
+
setValue(value) {
|
|
67
|
+
const valueTypeBefore = this.getExplicitValueType();
|
|
68
|
+
if (typeof value === 'string') {
|
|
69
|
+
// Set string
|
|
70
|
+
this.value = value;
|
|
71
|
+
}
|
|
72
|
+
else if ((0, date_1.isCalendarDateOrTime)(value)) {
|
|
73
|
+
// Set date
|
|
74
|
+
this.value = value.getValue();
|
|
75
|
+
this.setValueType(value.isFullDay() ? 'DATE' : 'DATE-TIME');
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
// Set duration
|
|
79
|
+
this.value = value.getValue();
|
|
80
|
+
this.setValueType('DURATION');
|
|
81
|
+
}
|
|
82
|
+
// Remove value type if set to default, unless it was already set
|
|
83
|
+
const valueType = this.getExplicitValueType();
|
|
84
|
+
const defaultValueType = this.getDefaultValueType();
|
|
85
|
+
if (valueType === defaultValueType && valueType !== valueTypeBefore) {
|
|
86
|
+
this.removeValueType();
|
|
87
|
+
}
|
|
34
88
|
}
|
|
35
89
|
setParameter(name, value) {
|
|
36
90
|
this._parameters.set(name.toUpperCase(), typeof value === 'string' ? [value] : value);
|
|
@@ -106,8 +160,21 @@ class Property {
|
|
|
106
160
|
* @returns The value type of this property.
|
|
107
161
|
*/
|
|
108
162
|
getValueType() {
|
|
109
|
-
|
|
110
|
-
|
|
163
|
+
return this.getExplicitValueType() ?? this.getDefaultValueType();
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* Get the value type of this property.
|
|
167
|
+
* @returns The value type of this property, or `undefined` if unset.
|
|
168
|
+
*/
|
|
169
|
+
getExplicitValueType() {
|
|
170
|
+
return this.getParameter('VALUE')?.[0].toUpperCase();
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* Get the default value type for this property.
|
|
174
|
+
* @returns The default value type based on the name of this property.
|
|
175
|
+
*/
|
|
176
|
+
getDefaultValueType() {
|
|
177
|
+
return (0, valueType_1.getDefaultValueType)(this.name);
|
|
111
178
|
}
|
|
112
179
|
/**
|
|
113
180
|
* Check whether this property has an explicit value type set.
|
|
@@ -505,4 +572,4 @@ class Property {
|
|
|
505
572
|
}
|
|
506
573
|
}
|
|
507
574
|
exports.Property = Property;
|
|
508
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJvcGVydHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHJvcGVydHkvUHJvcGVydHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EscUNBSWlCO0FBWWpCLHlDQUE2RTtBQUM3RSwyQ0FBbUU7QUFFbkU7OztHQUdHO0FBQ0gsTUFBYSxRQUFRO0lBQ1QsS0FBSyxDQUFRO0lBQ3JCLElBQVcsSUFBSTtRQUNYLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQTtJQUNyQixDQUFDO0lBQ0QsSUFBVyxJQUFJLENBQUMsS0FBYTtRQUN6QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQTtJQUNwQyxDQUFDO0lBRUQsS0FBSyxDQUFRO0lBRUwsV0FBVyxDQUF1QjtJQUMxQyxJQUFXLFVBQVU7UUFDakIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFBO0lBQzNCLENBQUM7SUFFRCxZQUNJLElBQVksRUFDWixLQUFhLEVBQ2IsU0FBNkMsRUFBRTtRQUUvQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQTtRQUMvQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQTtRQUNsQixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksR0FBRyxFQUFFLENBQUE7UUFDNUIsS0FBSyxNQUFNLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUNoRCxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FDaEIsR0FBRyxDQUFDLFdBQVcsRUFBRSxFQUNqQixPQUFPLEtBQUssS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FDOUMsQ0FBQTtRQUNMLENBQUM7SUFDTCxDQUFDO0lBRUQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFZLEVBQUUsS0FBeUI7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
|
|
575
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJvcGVydHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHJvcGVydHkvUHJvcGVydHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsa0NBQWtHO0FBQ2xHLDBDQUE4QztBQUM5QyxxQ0FJaUI7QUFZakIseUNBQTZFO0FBQzdFLDJDQUFtRjtBQUVuRjs7O0dBR0c7QUFDSCxNQUFhLFFBQVE7SUFDVCxLQUFLLENBQVE7SUFDckIsSUFBVyxJQUFJO1FBQ1gsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFBO0lBQ3JCLENBQUM7SUFDRCxJQUFXLElBQUksQ0FBQyxLQUFhO1FBQ3pCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFBO0lBQ3BDLENBQUM7SUFFRCxLQUFLLENBQVE7SUFFTCxXQUFXLENBQXVCO0lBQzFDLElBQVcsVUFBVTtRQUNqQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUE7SUFDM0IsQ0FBQztJQUVELFlBQ0ksSUFBWSxFQUNaLEtBQWEsRUFDYixTQUE2QyxFQUFFO1FBRS9DLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFBO1FBQy9CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFBO1FBQ2xCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQTtRQUM1QixLQUFLLE1BQU0sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1lBQ2hELElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUNoQixHQUFHLENBQUMsV0FBVyxFQUFFLEVBQ2pCLE9BQU8sS0FBSyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUM5QyxDQUFBO1FBQ0wsQ0FBQztJQUNMLENBQUM7SUFFRCxNQUFNLENBQUMs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
|
package/lib/property/validate.js
CHANGED
|
@@ -126,7 +126,7 @@ function validateDateTime(value) {
|
|
|
126
126
|
(0, date_1.parseDateTimeString)(value);
|
|
127
127
|
}
|
|
128
128
|
catch {
|
|
129
|
-
throw new PropertyValidationError(`${value} does not match pattern for
|
|
129
|
+
throw new PropertyValidationError(`${value} does not match pattern for DATE-TIME`);
|
|
130
130
|
}
|
|
131
131
|
}
|
|
132
132
|
/**
|
|
@@ -314,4 +314,4 @@ function validateProperty(property) {
|
|
|
314
314
|
validateValue(property.value, valueType);
|
|
315
315
|
}
|
|
316
316
|
/* eslint-enable jsdoc/require-description-complete-sentence */
|
|
317
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
317
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHJvcGVydHkvdmFsaWRhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBNEJBLHdDQUtDO0FBT0QsMENBS0M7QUFPRCxrRUFRQztBQU9ELG9DQVFDO0FBT0QsNENBUUM7QUFPRCw0Q0FLQztBQU9ELHNDQUtDO0FBT0QsMENBS0M7QUFPRCx3Q0FLQztBQVFELHdEQUVDO0FBT0Qsb0NBS0M7QUFPRCxvQ0FLQztBQU9ELGtDQVFDO0FBT0QsOENBS0M7QUFRRCxzQ0FnREM7QUFPRCxrREFLQztBQW9CRCw0Q0FzQkM7QUFyVEQsa0NBQThEO0FBQzlELHNEQUF1QztBQUN2QywwQ0FBZ0Q7QUFFaEQsbUNBQXFFO0FBQ3JFLDJDQUF3RTtBQUV4RSw2RUFBNkU7QUFDN0UsTUFBYSx1QkFBd0IsU0FBUSxLQUFLO0lBQzlDLFlBQVksT0FBZTtRQUN2QixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUE7UUFDZCxJQUFJLENBQUMsSUFBSSxHQUFHLHlCQUF5QixDQUFBO0lBQ3pDLENBQUM7Q0FDSjtBQUxELDBEQUtDO0FBRUQsMEVBQTBFO0FBQzFFLE1BQWEsb0JBQXFCLFNBQVEsS0FBSztJQUMzQyxZQUFZLE9BQWU7UUFDdkIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBQ2QsSUFBSSxDQUFDLElBQUksR0FBRyxzQkFBc0IsQ0FBQTtJQUN0QyxDQUFDO0NBQ0o7QUFMRCxvREFLQztBQUVEOzs7O0dBSUc7QUFDSCxTQUFnQixjQUFjLENBQUMsS0FBYTtJQUN4QyxJQUFJLENBQUMsSUFBQSw2QkFBa0IsRUFBQyxRQUFRLENBQUMsZUFBZSxFQUFFLEtBQUssQ0FBQztRQUNwRCxNQUFNLElBQUksdUJBQXVCLENBQzdCLEdBQUcsS0FBSyxvQ0FBb0MsQ0FDL0MsQ0FBQTtBQUNULENBQUM7QUFFRDs7OztHQUlHO0FBQ0gs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
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "iamcal",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "4.1.0",
|
|
4
4
|
"description": "Read and write ICalendar files",
|
|
5
5
|
"files": [
|
|
6
6
|
"/lib",
|
|
@@ -51,5 +51,8 @@
|
|
|
51
51
|
"ts-jest": "^29.4.0",
|
|
52
52
|
"typescript": "^5.7.2",
|
|
53
53
|
"typescript-eslint": "^8.38.0"
|
|
54
|
+
},
|
|
55
|
+
"dependencies": {
|
|
56
|
+
"timezones-ical-library": "^2.1.2"
|
|
54
57
|
}
|
|
55
58
|
}
|
package/src/component.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { CalendarDateOrTime } from './date'
|
|
1
|
+
import { CalendarDateOrTime, isCalendarDateOrTime } from './date'
|
|
2
|
+
import { CalendarDuration } from './duration'
|
|
2
3
|
import { Property } from './property/Property'
|
|
3
4
|
import type { AllowedPropertyName, KnownPropertyName } from './property/names'
|
|
4
5
|
import {
|
|
@@ -83,33 +84,24 @@ export class Component {
|
|
|
83
84
|
return null
|
|
84
85
|
}
|
|
85
86
|
|
|
86
|
-
setProperty(name: string, value: string | CalendarDateOrTime): this {
|
|
87
|
+
setProperty(name: string, value: string | CalendarDateOrTime | CalendarDuration): this {
|
|
87
88
|
for (const property of this.properties) {
|
|
88
89
|
if (property.name !== name) continue
|
|
89
|
-
|
|
90
|
-
if (typeof value === 'string') {
|
|
91
|
-
property.value = value
|
|
92
|
-
return this
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
const dateProperty = Property.fromDate(name, value)
|
|
96
|
-
|
|
97
|
-
// Update value type
|
|
98
|
-
if (dateProperty.getValueType() === 'DATE')
|
|
99
|
-
property.setValueType('DATE')
|
|
100
|
-
else property.removeValueType()
|
|
101
|
-
|
|
102
|
-
// Update value
|
|
103
|
-
property.value = dateProperty.value
|
|
104
|
-
|
|
90
|
+
property.setValue(value)
|
|
105
91
|
return this
|
|
106
92
|
}
|
|
107
93
|
// Property is new
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
)
|
|
94
|
+
let property: Property
|
|
95
|
+
|
|
96
|
+
if (typeof value === 'string') {
|
|
97
|
+
property = new Property(name, value)
|
|
98
|
+
} else if (isCalendarDateOrTime(value)) {
|
|
99
|
+
property = Property.fromDate(name, value)
|
|
100
|
+
} else {
|
|
101
|
+
property = Property.fromDuration(name, value)
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
this.properties.push(property)
|
|
113
105
|
return this
|
|
114
106
|
}
|
|
115
107
|
|
|
@@ -6,9 +6,22 @@ import {
|
|
|
6
6
|
parseDateProperty,
|
|
7
7
|
toDateTimeString,
|
|
8
8
|
} from '../date'
|
|
9
|
+
import { CalendarDuration } from '../duration'
|
|
9
10
|
import { KnownPropertyName } from '../property/names'
|
|
10
11
|
import { PropertyValidationError } from '../property/validate'
|
|
11
12
|
|
|
13
|
+
export const DEFAULT_EVENT_DURATION_DATE_TIME: CalendarDuration = new CalendarDuration('PT0S')
|
|
14
|
+
export const DEFAULT_EVENT_DURATION_DATE: CalendarDuration = new CalendarDuration('P1D')
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* Get the default event duration for an event without an end nor duration.
|
|
18
|
+
* @param isFullDay Whether the event is a full day event.
|
|
19
|
+
* @returns `DEFAULT_EVENT_DURATION_DATE` for full day events, `DEFAULT_EVENT_DURATION_DATE_TIME` for other events.
|
|
20
|
+
*/
|
|
21
|
+
export function getDefaultEventDuration(isFullDay: boolean): CalendarDuration {
|
|
22
|
+
return isFullDay ? DEFAULT_EVENT_DURATION_DATE : DEFAULT_EVENT_DURATION_DATE_TIME
|
|
23
|
+
}
|
|
24
|
+
|
|
12
25
|
/**
|
|
13
26
|
* Represents a VEVENT component, representing an event in a calendar.
|
|
14
27
|
*/
|
|
@@ -138,10 +151,36 @@ export class CalendarEvent extends Component {
|
|
|
138
151
|
}
|
|
139
152
|
|
|
140
153
|
/**
|
|
141
|
-
*
|
|
154
|
+
* Check if this event is a full day event.
|
|
155
|
+
* @returns `true` if the event is a full day event, `false` if not.
|
|
156
|
+
*/
|
|
157
|
+
isFullDay(): boolean {
|
|
158
|
+
return this.getStart().isFullDay()
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
/**
|
|
162
|
+
* Get the non-inclusive end of the event, implies value from duration if unset.
|
|
142
163
|
* @returns The end date of the event as a {@link CalendarDateOrTime} or `undefined` if not set.
|
|
143
164
|
*/
|
|
144
|
-
getEnd(): CalendarDateOrTime
|
|
165
|
+
getEnd(): CalendarDateOrTime {
|
|
166
|
+
const explicit = this.getExplicitEnd()
|
|
167
|
+
if (explicit) return explicit
|
|
168
|
+
|
|
169
|
+
// Calculate end from start and duration
|
|
170
|
+
const start = this.getStart()
|
|
171
|
+
let duration = this.getExplicitDuration()
|
|
172
|
+
if (!duration) {
|
|
173
|
+
duration = getDefaultEventDuration(this.isFullDay())
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
return start.offset(duration)
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
/**
|
|
180
|
+
* Get the DTEND property of the event, representing the non-inclusive end of the event.
|
|
181
|
+
* @returns The end date of the event as a {@link CalendarDateOrTime} or `undefined` if not set.
|
|
182
|
+
*/
|
|
183
|
+
getExplicitEnd(): CalendarDateOrTime | undefined {
|
|
145
184
|
const property = this.getProperty('DTEND')
|
|
146
185
|
if (!property) return
|
|
147
186
|
return parseDateProperty(property)
|
|
@@ -178,25 +217,49 @@ export class CalendarEvent extends Component {
|
|
|
178
217
|
}
|
|
179
218
|
|
|
180
219
|
/**
|
|
181
|
-
* Get the duration of the event
|
|
182
|
-
* @returns The duration of the event
|
|
220
|
+
* Get the duration of the event, implies value from end or default if unset.
|
|
221
|
+
* @returns The duration of the event as a {@link CalendarDuration}.
|
|
183
222
|
*/
|
|
184
|
-
getDuration():
|
|
185
|
-
|
|
223
|
+
getDuration(): CalendarDuration {
|
|
224
|
+
const explicit = this.getExplicitDuration()
|
|
225
|
+
if (explicit) return explicit
|
|
226
|
+
|
|
227
|
+
// Calculate duration from start and end
|
|
228
|
+
const start = this.getStart()
|
|
229
|
+
const end = this.getExplicitEnd()
|
|
230
|
+
if (!end) {
|
|
231
|
+
return getDefaultEventDuration(this.isFullDay())
|
|
232
|
+
}
|
|
233
|
+
return CalendarDuration.fromDifference(start, end)
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
/**
|
|
237
|
+
* Get the DURATION property of the event.
|
|
238
|
+
* @returns The duration of the event as a {@link CalendarDuration}, or `undefined` if not set.
|
|
239
|
+
*/
|
|
240
|
+
getExplicitDuration(): CalendarDuration | undefined {
|
|
241
|
+
const property = this.getProperty('DURATION')?.value
|
|
242
|
+
if (property == undefined) return undefined
|
|
186
243
|
}
|
|
187
244
|
|
|
188
245
|
/**
|
|
189
246
|
* Set the duration of the event.
|
|
190
247
|
*
|
|
191
|
-
* Will remove '
|
|
192
|
-
*
|
|
248
|
+
* Will remove 'DTEND' if present.
|
|
249
|
+
*
|
|
250
|
+
* If DTSTART is of type DATE the duration will be floored to the nearest day.
|
|
251
|
+
* @param value The duration of the event as a {@link CalendarDuration} duration string.
|
|
193
252
|
* @returns The CalendarEvent instance for chaining.
|
|
194
253
|
* @example
|
|
195
254
|
* // Set duration to 1 hour and 30 minutes.
|
|
196
255
|
* event.setDuration(`PT1H30M`)
|
|
197
256
|
*/
|
|
198
|
-
setDuration(value: string): this {
|
|
257
|
+
setDuration(value: string | CalendarDuration): this {
|
|
199
258
|
this.removeEnd()
|
|
259
|
+
if (typeof value === 'string')
|
|
260
|
+
value = new CalendarDuration(value)
|
|
261
|
+
if (this.getStart().isFullDay())
|
|
262
|
+
value = value.floor('D')
|
|
200
263
|
return this.setProperty('DURATION', value)
|
|
201
264
|
}
|
|
202
265
|
|
|
@@ -242,3 +305,4 @@ export class CalendarEvent extends Component {
|
|
|
242
305
|
this.removePropertiesWithName('GEO')
|
|
243
306
|
}
|
|
244
307
|
}
|
|
308
|
+
|
|
@@ -2,6 +2,8 @@ import { Component, ComponentValidationError } from '../component'
|
|
|
2
2
|
import { CalendarDateOrTime, parseDateProperty } from '../date'
|
|
3
3
|
import { KnownPropertyName } from '../property/names'
|
|
4
4
|
import { TimeZoneOffset } from './TimeZoneOffset'
|
|
5
|
+
import { deserializeComponentString } from '../parse'
|
|
6
|
+
import { tzlib_get_ical_block } from 'timezones-ical-library'
|
|
5
7
|
|
|
6
8
|
/**
|
|
7
9
|
* Represents a VTIMEZONE component, containing time zone definitions.
|
|
@@ -31,6 +33,16 @@ export class TimeZone extends Component {
|
|
|
31
33
|
this.validateAllProperties(requiredProperties)
|
|
32
34
|
}
|
|
33
35
|
|
|
36
|
+
static fromName(tzName: string): TimeZone {
|
|
37
|
+
const serializedTimezone = tzlib_get_ical_block(tzName)
|
|
38
|
+
const timezone = deserializeComponentString(
|
|
39
|
+
typeof serializedTimezone === 'string'
|
|
40
|
+
? serializedTimezone
|
|
41
|
+
: serializedTimezone[0]
|
|
42
|
+
)
|
|
43
|
+
return new TimeZone(timezone)
|
|
44
|
+
}
|
|
45
|
+
|
|
34
46
|
getId(): string {
|
|
35
47
|
return this.getProperty('TZID')!.value
|
|
36
48
|
}
|