17 lines
493 B
TypeScript
17 lines
493 B
TypeScript
|
|
import { DateTime, Duration } from "luxon";
|
||
|
|
|
||
|
|
export default class Event {
|
||
|
|
public summary: string;
|
||
|
|
public description: string;
|
||
|
|
public start: DateTime;
|
||
|
|
public duration: Duration;
|
||
|
|
|
||
|
|
public constructor(json_data: Record<string, string>) {
|
||
|
|
this.summary = json_data["summary"];
|
||
|
|
this.description = json_data["description"];
|
||
|
|
this.start = DateTime.fromISO(json_data["dtstart"]);
|
||
|
|
const end = DateTime.fromISO(json_data["dtend"]);
|
||
|
|
|
||
|
|
this.duration = end.diff(this.start);
|
||
|
|
}
|
||
|
|
}
|