iamcal 2.0.0 → 2.1.1
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 +46 -9
- package/lib/component.d.ts.map +1 -1
- package/lib/component.js +105 -17
- package/lib/components/Calendar.d.ts +35 -14
- package/lib/components/Calendar.d.ts.map +1 -1
- package/lib/components/Calendar.js +43 -15
- package/lib/components/CalendarEvent.d.ts +84 -22
- package/lib/components/CalendarEvent.d.ts.map +1 -1
- package/lib/components/CalendarEvent.js +142 -67
- package/lib/components/TimeZone.d.ts +62 -39
- package/lib/components/TimeZone.d.ts.map +1 -1
- package/lib/components/TimeZone.js +81 -86
- 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 +1 -0
- package/lib/components/index.d.ts.map +1 -1
- package/lib/components/index.js +2 -1
- 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 +3 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +4 -2
- package/lib/io.d.ts +9 -7
- package/lib/io.d.ts.map +1 -1
- package/lib/io.js +16 -11
- package/lib/parse.d.ts +32 -15
- package/lib/parse.d.ts.map +1 -1
- package/lib/parse.js +55 -53
- 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 +50 -38
- package/src/component.ts +132 -23
- package/src/components/Calendar.ts +58 -20
- package/src/components/CalendarEvent.ts +170 -66
- package/src/components/TimeZone.ts +86 -96
- package/src/components/TimeZoneOffset.ts +187 -0
- package/src/components/index.ts +2 -1
- package/src/date.ts +395 -0
- package/src/index.ts +3 -1
- package/src/io.ts +16 -11
- package/src/parse.ts +71 -51
- package/src/patterns.ts +69 -0
- package/src/property.ts +492 -0
|
@@ -1,47 +1,109 @@
|
|
|
1
|
-
import { Component } from
|
|
1
|
+
import { Component } from '../component';
|
|
2
|
+
import { CalendarDateTime, CalendarDateOrTime } from '../date';
|
|
2
3
|
/**
|
|
3
4
|
* Represents a VEVENT component, representing an event in a calendar.
|
|
4
5
|
*/
|
|
5
6
|
export declare class CalendarEvent extends Component {
|
|
6
7
|
name: string;
|
|
7
|
-
constructor(uid: string, dtstamp: Date);
|
|
8
|
+
constructor(uid: string, dtstamp: CalendarDateTime | Date, dtstart: CalendarDateOrTime | Date);
|
|
8
9
|
constructor(component: Component);
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
10
|
+
serialize(): string;
|
|
11
|
+
validate(): void;
|
|
12
|
+
getStamp(): CalendarDateTime;
|
|
13
|
+
setStamp(value: CalendarDateTime | Date): this;
|
|
14
|
+
getUid(): string;
|
|
12
15
|
setUid(value: string): this;
|
|
13
|
-
|
|
16
|
+
getSummary(): string | undefined;
|
|
14
17
|
setSummary(value: string): this;
|
|
15
18
|
removeSummary(): void;
|
|
16
|
-
|
|
19
|
+
getDescription(): string | undefined;
|
|
17
20
|
setDescription(value: string): this;
|
|
18
21
|
removeDescription(): void;
|
|
19
|
-
|
|
22
|
+
getLocation(): string | undefined;
|
|
20
23
|
setLocation(value: string): this;
|
|
21
24
|
removeLocation(): void;
|
|
22
25
|
/**
|
|
23
|
-
* Get the start of the event.
|
|
24
|
-
*
|
|
26
|
+
* Get the start date or time of the event.
|
|
27
|
+
* @returns The start date or time of the event as a {@link CalendarDateOrTime}.
|
|
25
28
|
*/
|
|
26
|
-
|
|
27
|
-
/**
|
|
28
|
-
|
|
29
|
-
|
|
29
|
+
getStart(): CalendarDateOrTime;
|
|
30
|
+
/**
|
|
31
|
+
* Set the start date or time of the event.
|
|
32
|
+
* @param value The start date of the event as a {@link CalendarDateOrTime} or `Date`.
|
|
33
|
+
* @returns The CalendarEvent instance for chaining.
|
|
34
|
+
*/
|
|
35
|
+
setStart(value: CalendarDateOrTime | Date): this;
|
|
30
36
|
/**
|
|
31
37
|
* Get the non-inclusive end of the event.
|
|
32
|
-
*
|
|
38
|
+
* @returns The end date of the event as a {@link CalendarDateOrTime} or `undefined` if not set.
|
|
33
39
|
*/
|
|
34
|
-
|
|
40
|
+
getEnd(): CalendarDateOrTime | undefined;
|
|
35
41
|
/**
|
|
36
|
-
* Set the
|
|
42
|
+
* Set the exclusive end of the event.
|
|
43
|
+
*
|
|
44
|
+
* Will remove 'duration' if present.
|
|
45
|
+
* @param value The end date of the event as a {@link CalendarDateOrTime} or `Date`.
|
|
46
|
+
* @returns The CalendarEvent instance for chaining.
|
|
47
|
+
* @throws If the end date is a full day date and the start date is a date-time, or vice versa.
|
|
48
|
+
*/
|
|
49
|
+
setEnd(value: CalendarDateOrTime | Date): this;
|
|
50
|
+
/**
|
|
51
|
+
* Remove the end of the event.
|
|
52
|
+
*
|
|
53
|
+
* NOTE: An event must have either an end or a duration set.
|
|
37
54
|
*/
|
|
38
|
-
setEnd(value: Date, fullDay?: boolean): this;
|
|
39
55
|
removeEnd(): void;
|
|
40
|
-
|
|
56
|
+
/**
|
|
57
|
+
* Get the duration of the event as a string formatted according to the iCalendar specification.
|
|
58
|
+
* @returns The duration of the event, or `undefined` if not set.
|
|
59
|
+
*/
|
|
60
|
+
getDuration(): string | undefined;
|
|
61
|
+
/**
|
|
62
|
+
* Set the duration of the event.
|
|
63
|
+
*
|
|
64
|
+
* Will remove 'end' if present.
|
|
65
|
+
* @param value The duration of the event as a string in the format defined by RFC5545.
|
|
66
|
+
* @returns The CalendarEvent instance for chaining.
|
|
67
|
+
* @example
|
|
68
|
+
* // Set duration to 1 hour and 30 minutes.
|
|
69
|
+
* event.setDuration(`PT1H30M`)
|
|
70
|
+
*/
|
|
71
|
+
setDuration(value: string): this;
|
|
72
|
+
/**
|
|
73
|
+
* Remove the duration of the event.
|
|
74
|
+
*
|
|
75
|
+
* NOTE: An event must have either an end or a duration set.
|
|
76
|
+
*/
|
|
77
|
+
removeDuration(): void;
|
|
78
|
+
getCreated(): CalendarDateOrTime | undefined;
|
|
41
79
|
setCreated(value: Date): this;
|
|
42
80
|
removeCreated(): void;
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
81
|
+
getGeographicPosition(): [number, number] | undefined;
|
|
82
|
+
setGeographicPosition(latitude: number, longitude: number): this;
|
|
83
|
+
removeGeographicLocation(): void;
|
|
84
|
+
/** @deprecated use {@link getStamp} instead */
|
|
85
|
+
stamp: () => CalendarDateTime;
|
|
86
|
+
/** @deprecated use {@link getUid} instead */
|
|
87
|
+
uid: () => string;
|
|
88
|
+
/** @deprecated use {@link getSummary} instead */
|
|
89
|
+
summary: () => string | undefined;
|
|
90
|
+
/** @deprecated use {@link getDescription} instead */
|
|
91
|
+
description: () => string | undefined;
|
|
92
|
+
/** @deprecated use {@link getLocation} instead */
|
|
93
|
+
location: () => string | undefined;
|
|
94
|
+
/** @deprecated use {@link getStart} instead */
|
|
95
|
+
start: () => CalendarDateOrTime;
|
|
96
|
+
/** @deprecated use {@link getEnd} instead */
|
|
97
|
+
end: () => CalendarDateOrTime | undefined;
|
|
98
|
+
/** @deprecated use {@link getDuration} instead */
|
|
99
|
+
duration: () => string | undefined;
|
|
100
|
+
/** @deprecated use {@link getCreated} instead */
|
|
101
|
+
created: () => CalendarDateOrTime | undefined;
|
|
102
|
+
/** @deprecated use {@link getGeographicPosition} instead */
|
|
103
|
+
geo: () => [number, number] | undefined;
|
|
104
|
+
/** @deprecated use {@link setGeographicPosition} instead */
|
|
105
|
+
setGeo: (latitude: number, longitude: number) => this;
|
|
106
|
+
/** @deprecated use {@link removeGeographicLocation} instead */
|
|
107
|
+
removeGeo: () => void;
|
|
46
108
|
}
|
|
47
109
|
//# sourceMappingURL=CalendarEvent.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CalendarEvent.d.ts","sourceRoot":"","sources":["../../src/components/CalendarEvent.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"CalendarEvent.d.ts","sourceRoot":"","sources":["../../src/components/CalendarEvent.ts"],"names":[],"mappings":"AACA,OAAO,EAA4B,SAAS,EAAE,MAAM,cAAc,CAAA;AAClE,OAAO,EACH,gBAAgB,EAEhB,kBAAkB,EAGrB,MAAM,SAAS,CAAA;AAEhB;;GAEG;AACH,qBAAa,aAAc,SAAQ,SAAS;IACxC,IAAI,SAAW;gBAGX,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,gBAAgB,GAAG,IAAI,EAChC,OAAO,EAAE,kBAAkB,GAAG,IAAI;gBAE1B,SAAS,EAAE,SAAS;IAsBhC,SAAS,IAAI,MAAM;IASnB,QAAQ;IAWR,QAAQ,IAAI,gBAAgB;IAM5B,QAAQ,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI,GAAG,IAAI;IAQ9C,MAAM,IAAI,MAAM;IAIhB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI3B,UAAU,IAAI,MAAM,GAAG,SAAS;IAIhC,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI/B,aAAa;IAIb,cAAc,IAAI,MAAM,GAAG,SAAS;IAIpC,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAInC,iBAAiB;IAIjB,WAAW,IAAI,MAAM,GAAG,SAAS;IAIjC,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIhC,cAAc;IAId;;;OAGG;IACH,QAAQ,IAAI,kBAAkB;IAI9B;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI,GAAG,IAAI;IAIhD;;;OAGG;IACH,MAAM,IAAI,kBAAkB,GAAG,SAAS;IAMxC;;;;;;;OAOG;IACH,MAAM,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI,GAAG,IAAI;IAa9C;;;;OAIG;IACH,SAAS;IAIT;;;OAGG;IACH,WAAW,IAAI,MAAM,GAAG,SAAS;IAIjC;;;;;;;;;OASG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAKhC;;;;OAIG;IACH,cAAc;IAId,UAAU,IAAI,kBAAkB,GAAG,SAAS;IAM5C,UAAU,CAAC,KAAK,EAAE,IAAI,GAAG,IAAI;IAI7B,aAAa;IAIb,qBAAqB,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS;IAUrD,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAKhE,wBAAwB;IAMxB,+CAA+C;IAC/C,KAAK,QAvLO,gBAAgB,CAuLP;IACrB,6CAA6C;IAC7C,GAAG,QA3KO,MAAM,CA2KC;IACjB,iDAAiD;IACjD,OAAO,QArKO,MAAM,GAAG,SAAS,CAqKP;IACzB,qDAAqD;IACrD,WAAW,QA3JO,MAAM,GAAG,SAAS,CA2JH;IACjC,kDAAkD;IAClD,QAAQ,QAjJO,MAAM,GAAG,SAAS,CAiJN;IAC3B,+CAA+C;IAC/C,KAAK,QAnIO,kBAAkB,CAmIT;IACrB,6CAA6C;IAC7C,GAAG,QApHO,kBAAkB,GAAG,SAAS,CAoHvB;IACjB,kDAAkD;IAClD,QAAQ,QA9EO,MAAM,GAAG,SAAS,CA8EN;IAC3B,iDAAiD;IACjD,OAAO,QApDO,kBAAkB,GAAG,SAAS,CAoDnB;IACzB,4DAA4D;IAC5D,GAAG,QAxCsB,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAwCrB;IAChC,4DAA4D;IAC5D,MAAM,aAhC0B,MAAM,aAAa,MAAM,KAAG,IAAI,CAgC7B;IACnC,+DAA+D;IAC/D,SAAS,aAAgC;CAC5C"}
|
|
@@ -1,48 +1,65 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.CalendarEvent = void 0;
|
|
4
|
+
const property_1 = require("../property");
|
|
4
5
|
const component_1 = require("../component");
|
|
5
|
-
const
|
|
6
|
+
const date_1 = require("../date");
|
|
6
7
|
/**
|
|
7
8
|
* Represents a VEVENT component, representing an event in a calendar.
|
|
8
9
|
*/
|
|
9
10
|
class CalendarEvent extends component_1.Component {
|
|
10
11
|
name = 'VEVENT';
|
|
11
|
-
constructor(a, b) {
|
|
12
|
-
|
|
13
|
-
if (
|
|
12
|
+
constructor(a, b, c) {
|
|
13
|
+
let component;
|
|
14
|
+
if (a instanceof component_1.Component) {
|
|
15
|
+
component = a;
|
|
16
|
+
CalendarEvent.prototype.validate.call(component);
|
|
17
|
+
}
|
|
18
|
+
else {
|
|
14
19
|
const uid = a;
|
|
15
|
-
const dtstamp = b;
|
|
20
|
+
const dtstamp = (0, date_1.convertDate)(b, false);
|
|
21
|
+
const dtstart = (0, date_1.convertDate)(c);
|
|
16
22
|
component = new component_1.Component('VEVENT');
|
|
17
23
|
component.setProperty('UID', uid);
|
|
18
|
-
component.setProperty('DTSTAMP',
|
|
19
|
-
|
|
20
|
-
else {
|
|
21
|
-
component = a;
|
|
24
|
+
component.setProperty('DTSTAMP', dtstamp);
|
|
25
|
+
component.setProperty('DTSTART', dtstart);
|
|
22
26
|
}
|
|
23
27
|
super(component.name, component.properties, component.components);
|
|
24
28
|
}
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
setStamp(value, fullDay = false) {
|
|
29
|
-
if (fullDay) {
|
|
30
|
-
this.setProperty('DTSTAMP', (0, parse_1.toDateString)(value));
|
|
31
|
-
this.setPropertyParams('DTSTAMP', ['VALUE=DATE']);
|
|
29
|
+
serialize() {
|
|
30
|
+
if (!this.getEnd() && !this.duration()) {
|
|
31
|
+
throw new Error('Failed to serialize calendar event, end or duration must be set');
|
|
32
32
|
}
|
|
33
|
-
|
|
34
|
-
|
|
33
|
+
return super.serialize();
|
|
34
|
+
}
|
|
35
|
+
validate() {
|
|
36
|
+
if (this.name !== 'VEVENT')
|
|
37
|
+
throw new component_1.ComponentValidationError('Component name must be VEVENT');
|
|
38
|
+
const requiredProperties = [
|
|
39
|
+
'UID',
|
|
40
|
+
'DTSTAMP',
|
|
41
|
+
'DTSTART',
|
|
42
|
+
];
|
|
43
|
+
this.validateAllProperties(requiredProperties);
|
|
44
|
+
}
|
|
45
|
+
getStamp() {
|
|
46
|
+
return (0, date_1.parseDateProperty)(this.getProperty('DTSTAMP'));
|
|
47
|
+
}
|
|
48
|
+
setStamp(value) {
|
|
49
|
+
const converted = (0, date_1.convertDate)(value, false);
|
|
50
|
+
if (converted.isFullDay()) {
|
|
51
|
+
throw new property_1.PropertyValidationError('DTSTAMP cannot be of type DATE');
|
|
35
52
|
}
|
|
36
|
-
return this;
|
|
53
|
+
return this.setProperty('DTSTAMP', converted);
|
|
37
54
|
}
|
|
38
|
-
|
|
55
|
+
getUid() {
|
|
39
56
|
return this.getProperty('UID').value;
|
|
40
57
|
}
|
|
41
58
|
setUid(value) {
|
|
42
59
|
return this.setProperty('UID', value);
|
|
43
60
|
}
|
|
44
|
-
|
|
45
|
-
return this.getProperty('SUMMARY')
|
|
61
|
+
getSummary() {
|
|
62
|
+
return this.getProperty('SUMMARY')?.value;
|
|
46
63
|
}
|
|
47
64
|
setSummary(value) {
|
|
48
65
|
return this.setProperty('SUMMARY', value);
|
|
@@ -50,8 +67,8 @@ class CalendarEvent extends component_1.Component {
|
|
|
50
67
|
removeSummary() {
|
|
51
68
|
this.removePropertiesWithName('SUMMARY');
|
|
52
69
|
}
|
|
53
|
-
|
|
54
|
-
return this.getProperty('DESCRIPTION')
|
|
70
|
+
getDescription() {
|
|
71
|
+
return this.getProperty('DESCRIPTION')?.value;
|
|
55
72
|
}
|
|
56
73
|
setDescription(value) {
|
|
57
74
|
return this.setProperty('DESCRIPTION', value);
|
|
@@ -59,7 +76,7 @@ class CalendarEvent extends component_1.Component {
|
|
|
59
76
|
removeDescription() {
|
|
60
77
|
this.removePropertiesWithName('DESCRIPTION');
|
|
61
78
|
}
|
|
62
|
-
|
|
79
|
+
getLocation() {
|
|
63
80
|
return this.getProperty('LOCATION')?.value;
|
|
64
81
|
}
|
|
65
82
|
setLocation(value) {
|
|
@@ -69,80 +86,138 @@ class CalendarEvent extends component_1.Component {
|
|
|
69
86
|
this.removePropertiesWithName('LOCATION');
|
|
70
87
|
}
|
|
71
88
|
/**
|
|
72
|
-
* Get the start of the event.
|
|
73
|
-
*
|
|
89
|
+
* Get the start date or time of the event.
|
|
90
|
+
* @returns The start date or time of the event as a {@link CalendarDateOrTime}.
|
|
74
91
|
*/
|
|
75
|
-
|
|
76
|
-
return (0,
|
|
77
|
-
}
|
|
78
|
-
/** Set the start of the event. */
|
|
79
|
-
setStart(value, fullDay = false) {
|
|
80
|
-
if (fullDay) {
|
|
81
|
-
this.setProperty('DTSTART', (0, parse_1.toDateString)(value));
|
|
82
|
-
this.setPropertyParams('DTSTART', ['VALUE=DATE']);
|
|
83
|
-
}
|
|
84
|
-
else {
|
|
85
|
-
this.setProperty('DTSTART', (0, parse_1.toDateTimeString)(value));
|
|
86
|
-
}
|
|
87
|
-
return this;
|
|
92
|
+
getStart() {
|
|
93
|
+
return (0, date_1.parseDateProperty)(this.getProperty('DTSTART'));
|
|
88
94
|
}
|
|
89
|
-
|
|
90
|
-
|
|
95
|
+
/**
|
|
96
|
+
* Set the start date or time of the event.
|
|
97
|
+
* @param value The start date of the event as a {@link CalendarDateOrTime} or `Date`.
|
|
98
|
+
* @returns The CalendarEvent instance for chaining.
|
|
99
|
+
*/
|
|
100
|
+
setStart(value) {
|
|
101
|
+
return this.setProperty('DTSTART', (0, date_1.convertDate)(value));
|
|
91
102
|
}
|
|
92
103
|
/**
|
|
93
104
|
* Get the non-inclusive end of the event.
|
|
94
|
-
*
|
|
105
|
+
* @returns The end date of the event as a {@link CalendarDateOrTime} or `undefined` if not set.
|
|
95
106
|
*/
|
|
96
|
-
|
|
97
|
-
|
|
107
|
+
getEnd() {
|
|
108
|
+
const property = this.getProperty('DTEND');
|
|
109
|
+
if (!property)
|
|
110
|
+
return;
|
|
111
|
+
return (0, date_1.parseDateProperty)(property);
|
|
98
112
|
}
|
|
99
113
|
/**
|
|
100
|
-
* Set the
|
|
114
|
+
* Set the exclusive end of the event.
|
|
115
|
+
*
|
|
116
|
+
* Will remove 'duration' if present.
|
|
117
|
+
* @param value The end date of the event as a {@link CalendarDateOrTime} or `Date`.
|
|
118
|
+
* @returns The CalendarEvent instance for chaining.
|
|
119
|
+
* @throws If the end date is a full day date and the start date is a date-time, or vice versa.
|
|
101
120
|
*/
|
|
102
|
-
setEnd(value
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
else {
|
|
108
|
-
this.setProperty('DTEND', (0, parse_1.toDateTimeString)(value));
|
|
121
|
+
setEnd(value) {
|
|
122
|
+
const date = (0, date_1.convertDate)(value);
|
|
123
|
+
const start = this.getStart();
|
|
124
|
+
if (date.isFullDay() !== start.isFullDay()) {
|
|
125
|
+
throw new Error(`End must be same date type as start. Start is ${start.isFullDay() ? 'date' : 'datetime'} but new end value is ${date.isFullDay() ? 'date' : 'datetime'}`);
|
|
109
126
|
}
|
|
110
|
-
|
|
127
|
+
this.removeDuration();
|
|
128
|
+
return this.setProperty('DTEND', date);
|
|
111
129
|
}
|
|
130
|
+
/**
|
|
131
|
+
* Remove the end of the event.
|
|
132
|
+
*
|
|
133
|
+
* NOTE: An event must have either an end or a duration set.
|
|
134
|
+
*/
|
|
112
135
|
removeEnd() {
|
|
113
136
|
this.removePropertiesWithName('DTEND');
|
|
114
137
|
}
|
|
115
|
-
|
|
138
|
+
/**
|
|
139
|
+
* Get the duration of the event as a string formatted according to the iCalendar specification.
|
|
140
|
+
* @returns The duration of the event, or `undefined` if not set.
|
|
141
|
+
*/
|
|
142
|
+
getDuration() {
|
|
143
|
+
return this.getProperty('DURATION')?.value;
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Set the duration of the event.
|
|
147
|
+
*
|
|
148
|
+
* Will remove 'end' if present.
|
|
149
|
+
* @param value The duration of the event as a string in the format defined by RFC5545.
|
|
150
|
+
* @returns The CalendarEvent instance for chaining.
|
|
151
|
+
* @example
|
|
152
|
+
* // Set duration to 1 hour and 30 minutes.
|
|
153
|
+
* event.setDuration(`PT1H30M`)
|
|
154
|
+
*/
|
|
155
|
+
setDuration(value) {
|
|
156
|
+
this.removeEnd();
|
|
157
|
+
return this.setProperty('DURATION', value);
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* Remove the duration of the event.
|
|
161
|
+
*
|
|
162
|
+
* NOTE: An event must have either an end or a duration set.
|
|
163
|
+
*/
|
|
164
|
+
removeDuration() {
|
|
165
|
+
this.removePropertiesWithName('DURATION');
|
|
166
|
+
}
|
|
167
|
+
getCreated() {
|
|
116
168
|
const property = this.getProperty('CREATED');
|
|
117
169
|
if (!property)
|
|
118
170
|
return;
|
|
119
|
-
return (0,
|
|
171
|
+
return (0, date_1.parseDateProperty)(property);
|
|
120
172
|
}
|
|
121
173
|
setCreated(value) {
|
|
122
|
-
return this.setProperty('CREATED', (0,
|
|
174
|
+
return this.setProperty('CREATED', (0, date_1.toDateTimeString)(value));
|
|
123
175
|
}
|
|
124
176
|
removeCreated() {
|
|
125
177
|
this.removePropertiesWithName('CREATED');
|
|
126
178
|
}
|
|
127
|
-
|
|
179
|
+
getGeographicPosition() {
|
|
128
180
|
const text = this.getProperty('GEO')?.value;
|
|
129
181
|
if (!text)
|
|
130
182
|
return;
|
|
131
|
-
const
|
|
132
|
-
if (!
|
|
183
|
+
const validGeoPattern = /^[+-]?\d+(\.\d+)?;[+-]?\d+(\.\d+)?$/;
|
|
184
|
+
if (!validGeoPattern.test(text))
|
|
133
185
|
throw new Error(`Failed to parse GEO property: ${text}`);
|
|
134
186
|
const [longitude, latitude] = text.split(',');
|
|
135
187
|
return [parseFloat(longitude), parseFloat(latitude)];
|
|
136
188
|
}
|
|
137
|
-
|
|
138
|
-
const text = `${latitude}
|
|
139
|
-
return this;
|
|
189
|
+
setGeographicPosition(latitude, longitude) {
|
|
190
|
+
const text = `${latitude};${longitude}`;
|
|
191
|
+
return this.setProperty('GEO', text);
|
|
140
192
|
}
|
|
141
|
-
|
|
193
|
+
removeGeographicLocation() {
|
|
142
194
|
this.removePropertiesWithName('GEO');
|
|
143
195
|
}
|
|
196
|
+
/* eslint-disable */
|
|
197
|
+
/** @deprecated use {@link getStamp} instead */
|
|
198
|
+
stamp = this.getStamp;
|
|
199
|
+
/** @deprecated use {@link getUid} instead */
|
|
200
|
+
uid = this.getUid;
|
|
201
|
+
/** @deprecated use {@link getSummary} instead */
|
|
202
|
+
summary = this.getSummary;
|
|
203
|
+
/** @deprecated use {@link getDescription} instead */
|
|
204
|
+
description = this.getDescription;
|
|
205
|
+
/** @deprecated use {@link getLocation} instead */
|
|
206
|
+
location = this.getLocation;
|
|
207
|
+
/** @deprecated use {@link getStart} instead */
|
|
208
|
+
start = this.getStart;
|
|
209
|
+
/** @deprecated use {@link getEnd} instead */
|
|
210
|
+
end = this.getEnd;
|
|
211
|
+
/** @deprecated use {@link getDuration} instead */
|
|
212
|
+
duration = this.getDuration;
|
|
213
|
+
/** @deprecated use {@link getCreated} instead */
|
|
214
|
+
created = this.getCreated;
|
|
215
|
+
/** @deprecated use {@link getGeographicPosition} instead */
|
|
216
|
+
geo = this.getGeographicPosition;
|
|
217
|
+
/** @deprecated use {@link setGeographicPosition} instead */
|
|
218
|
+
setGeo = this.setGeographicPosition;
|
|
219
|
+
/** @deprecated use {@link removeGeographicLocation} instead */
|
|
220
|
+
removeGeo = this.removeGeographicLocation;
|
|
144
221
|
}
|
|
145
222
|
exports.CalendarEvent = CalendarEvent;
|
|
146
|
-
|
|
147
|
-
event.getPropertyParams('DTEND')?.includes('VALUE=DATE');
|
|
148
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FsZW5kYXJFdmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL0NhbGVuZGFyRXZlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNENBQXdDO0FBQ3hDLG9DQUFvRTtBQUVwRTs7R0FFRztBQUNILE1BQWEsYUFBYyxTQUFRLHFCQUFTO0lBQ3hDLElBQUksR0FBRyxRQUFRLENBQUM7SUFJaEIsWUFBWSxDQUFxQixFQUFFLENBQVE7UUFDdkMsSUFBSSxTQUFvQixDQUFBO1FBQ3hCLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDSixNQUFNLEdBQUcsR0FBRyxDQUFXLENBQUE7WUFDdkIsTUFBTSxPQUFPLEdBQUcsQ0FBUyxDQUFBO1lBQ3pCLFNBQVMsR0FBRyxJQUFJLHFCQUFTLENBQUMsUUFBUSxDQUFDLENBQUE7WUFDbkMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUE7WUFDakMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsSUFBQSx3QkFBZ0IsRUFBQyxPQUFPLENBQUMsQ0FBQyxDQUFBO1FBQy9ELENBQUM7YUFBTSxDQUFDO1lBQ0osU0FBUyxHQUFHLENBQWMsQ0FBQTtRQUM5QixDQUFDO1FBQ0QsS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLFVBQVUsRUFBRSxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUE7SUFDckUsQ0FBQztJQUVELEtBQUs7UUFDRCxPQUFPLElBQUEsaUJBQVMsRUFBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBRSxDQUFDLENBQUE7SUFDbEQsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFXLEVBQUUsVUFBbUIsS0FBSztRQUMxQyxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsSUFBQSxvQkFBWSxFQUFDLEtBQUssQ0FBQyxDQUFDLENBQUE7WUFD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
|
|
223
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FsZW5kYXJFdmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL0NhbGVuZGFyRXZlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsMENBQXdFO0FBQ3hFLDRDQUFrRTtBQUNsRSxrQ0FNZ0I7QUFFaEI7O0dBRUc7QUFDSCxNQUFhLGFBQWMsU0FBUSxxQkFBUztJQUN4QyxJQUFJLEdBQUcsUUFBUSxDQUFBO0lBUWYsWUFDSSxDQUFxQixFQUNyQixDQUEyQixFQUMzQixDQUE2QjtRQUU3QixJQUFJLFNBQW9CLENBQUE7UUFDeEIsSUFBSSxDQUFDLFlBQVkscUJBQVMsRUFBRSxDQUFDO1lBQ3pCLFNBQVMsR0FBRyxDQUFjLENBQUE7WUFDMUIsYUFBYSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBQ3BELENBQUM7YUFBTSxDQUFDO1lBQ0osTUFBTSxHQUFHLEdBQUcsQ0FBVyxDQUFBO1lBQ3ZCLE1BQU0sT0FBTyxHQUFHLElBQUEsa0JBQVcsRUFBQyxDQUFFLEVBQUUsS0FBSyxDQUFDLENBQUE7WUFDdEMsTUFBTSxPQUFPLEdBQUcsSUFBQSxrQkFBVyxFQUFDLENBQUUsQ0FBQyxDQUFBO1lBQy9CLFNBQVMsR0FBRyxJQUFJLHFCQUFTLENBQUMsUUFBUSxDQUFDLENBQUE7WUFDbkMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUE7WUFDakMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUE7WUFDekMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUE7UUFDN0MsQ0FBQztRQUNELEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxVQUFVLEVBQUUsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFBO0lBQ3JFLENBQUM7SUFFRCxTQUFTO1FB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
|
|
@@ -1,51 +1,74 @@
|
|
|
1
1
|
import { Component } from '../component';
|
|
2
|
+
import { CalendarDateOrTime } from '../date';
|
|
3
|
+
import { TimeZoneOffset } from './TimeZoneOffset';
|
|
2
4
|
/**
|
|
3
5
|
* Represents a VTIMEZONE component, containing time zone definitions.
|
|
4
6
|
*/
|
|
5
7
|
export declare class TimeZone extends Component {
|
|
8
|
+
name: string;
|
|
6
9
|
constructor(id: string);
|
|
7
10
|
constructor(component: Component);
|
|
8
|
-
|
|
11
|
+
validate(): void;
|
|
12
|
+
getId(): string;
|
|
9
13
|
setId(value: string): this;
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
+
getLastModified(): CalendarDateOrTime | undefined;
|
|
15
|
+
setLastModified(value: Date): this;
|
|
16
|
+
removeLastModified(): void;
|
|
17
|
+
getUrl(): string | undefined;
|
|
14
18
|
setUrl(value: string): this;
|
|
15
19
|
removeUrl(): void;
|
|
16
|
-
/**
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
/**
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
* @
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
20
|
+
/**
|
|
21
|
+
* Get all time offsets.
|
|
22
|
+
* @returns An array of time zone offsets defined in this time zone.
|
|
23
|
+
*/
|
|
24
|
+
getOffsets(): TimeZoneOffset[];
|
|
25
|
+
/**
|
|
26
|
+
* Get standard/winter time offsets.
|
|
27
|
+
* @returns An array of time zone offsets defined in this time zone that are of type STANDARD.
|
|
28
|
+
*/
|
|
29
|
+
getStandardOffsets(): TimeZoneOffset[];
|
|
30
|
+
/**
|
|
31
|
+
* Get daylight savings time offsets.
|
|
32
|
+
* @returns An array of time zone offsets defined in this time zone that are of type DAYLIGHT.
|
|
33
|
+
*/
|
|
34
|
+
getDaylightOffsets(): TimeZoneOffset[];
|
|
35
|
+
/**
|
|
36
|
+
* @deprecated Use {@link getId} instead.
|
|
37
|
+
*/
|
|
38
|
+
id: () => string;
|
|
39
|
+
/**
|
|
40
|
+
* @deprecated Use {@link getLastModified} instead.
|
|
41
|
+
*/
|
|
42
|
+
lastMod: () => CalendarDateOrTime | undefined;
|
|
43
|
+
/**
|
|
44
|
+
* @deprecated Use {@link setLastModified} instead.
|
|
45
|
+
*/
|
|
46
|
+
setLastMod: (value: Date) => this;
|
|
47
|
+
/**
|
|
48
|
+
* @deprecated Use {@link removeLastModified} instead.
|
|
49
|
+
*/
|
|
50
|
+
removeLastMod: () => void;
|
|
51
|
+
/**
|
|
52
|
+
* @deprecated Use {@link getUrl} instead.
|
|
53
|
+
*/
|
|
54
|
+
url: () => string | undefined;
|
|
55
|
+
/**
|
|
56
|
+
* Get all time offsets.
|
|
57
|
+
* @returns An array of time zone offsets defined in this time zone.
|
|
58
|
+
* @deprecated Use {@link getOffsets} instead.
|
|
59
|
+
*/
|
|
60
|
+
offsets: () => TimeZoneOffset[];
|
|
61
|
+
/**
|
|
62
|
+
* Get standard/winter time offsets.
|
|
63
|
+
* @returns An array of time zone offsets defined in this time zone that are of type STANDARD.
|
|
64
|
+
* @deprecated Use {@link getStandardOffsets} instead.
|
|
65
|
+
*/
|
|
66
|
+
standardOffsets: () => TimeZoneOffset[];
|
|
67
|
+
/**
|
|
68
|
+
* Get daylight savings time offsets.
|
|
69
|
+
* @returns An array of time zone offsets defined in this time zone that are of type DAYLIGHT.
|
|
70
|
+
* @deprecated Use {@link getDaylightOffsets} instead.
|
|
71
|
+
*/
|
|
72
|
+
daylightOffsets: () => TimeZoneOffset[];
|
|
49
73
|
}
|
|
50
|
-
export {};
|
|
51
74
|
//# sourceMappingURL=TimeZone.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TimeZone.d.ts","sourceRoot":"","sources":["../../src/components/TimeZone.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"TimeZone.d.ts","sourceRoot":"","sources":["../../src/components/TimeZone.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAA4B,MAAM,cAAc,CAAA;AAClE,OAAO,EAAE,kBAAkB,EAAqB,MAAM,SAAS,CAAA;AAE/D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD;;GAEG;AACH,qBAAa,QAAS,SAAQ,SAAS;IACnC,IAAI,SAAc;gBAEN,EAAE,EAAE,MAAM;gBACV,SAAS,EAAE,SAAS;IAchC,QAAQ;IAOR,KAAK,IAAI,MAAM;IAIf,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI1B,eAAe,IAAI,kBAAkB,GAAG,SAAS;IAMjD,eAAe,CAAC,KAAK,EAAE,IAAI,GAAG,IAAI;IAIlC,kBAAkB;IAIlB,MAAM,IAAI,MAAM,GAAG,SAAS;IAI5B,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI3B,SAAS;IAIT;;;OAGG;IACH,UAAU,IAAI,cAAc,EAAE;IAa9B;;;OAGG;IACH,kBAAkB,IAAI,cAAc,EAAE;IAMtC;;;OAGG;IACH,kBAAkB,IAAI,cAAc,EAAE;IAQtC;;OAEG;IACH,EAAE,QA5EO,MAAM,CA4EA;IAEf;;OAEG;IACH,OAAO,QAzEY,kBAAkB,GAAG,SAAS,CAyEnB;IAE9B;;OAEG;IACH,UAAU,UAxEa,IAAI,KAAG,IAAI,CAwED;IAEjC;;OAEG;IACH,aAAa,aAA0B;IAEvC;;OAEG;IACH,GAAG,QA1EO,MAAM,GAAG,SAAS,CA0EX;IAEjB;;;;OAIG;IACH,OAAO,QAjEO,cAAc,EAAE,CAiEL;IAEzB;;;;OAIG;IACH,eAAe,QAvDO,cAAc,EAAE,CAuDG;IAEzC;;;;OAIG;IACH,eAAe,QApDO,cAAc,EAAE,CAoDG;CAC5C"}
|