ovdashboard/ui/src/components/calendar/EventModel.ts

31 lines
No EOL
729 B
TypeScript

import { Model } from "@/assets/Model";
import { DateTime, Duration } from "luxon";
export type EventData = {
summary: string;
description: string;
dtstart: string;
dtend: string;
};
export class EventModel extends Model {
public summary: string;
public description: string;
public start: DateTime;
public duration: Duration;
public constructor(json_data: EventData) {
super();
this.summary = json_data.summary;
this.description = json_data.description;
this.start = DateTime
.fromISO(json_data.dtstart)
.setLocale(navigator.language);
const end = DateTime
.fromISO(json_data.dtend)
.setLocale(navigator.language);
this.duration = end.diff(this.start);
}
}