From ffd2f802bb777f13eac1ee45e1b5f0ca2b596672 Mon Sep 17 00:00:00 2001 From: Kaotic3 <80522225+Kaotic3@users.noreply.github.com> Date: Fri, 6 Jun 2025 19:00:22 +0100 Subject: [PATCH] =?UTF-8?q?fix(nextcloud):=20correct=20calendar=20event=20?= =?UTF-8?q?date=20mapping=20and=20support=20showU=E2=80=A6=20(#3330)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Meier Lukas --- .../src/nextcloud/nextcloud.integration.ts | 19 +++---------------- 1 file changed, 3 insertions(+), 16 deletions(-) diff --git a/packages/integrations/src/nextcloud/nextcloud.integration.ts b/packages/integrations/src/nextcloud/nextcloud.integration.ts index 858f37848..f6c1919dc 100644 --- a/packages/integrations/src/nextcloud/nextcloud.integration.ts +++ b/packages/integrations/src/nextcloud/nextcloud.integration.ts @@ -1,6 +1,3 @@ -import dayjs from "dayjs"; -import objectSupport from "dayjs/plugin/objectSupport"; -import utc from "dayjs/plugin/utc"; import * as ical from "node-ical"; import { DAVClient } from "tsdav"; import type { Dispatcher, RequestInit as UndiciFetchRequestInit } from "undici"; @@ -15,9 +12,6 @@ import { Integration } from "../base/integration"; import type { TestingResult } from "../base/test-connection/test-connection-service"; import type { CalendarEvent } from "../calendar-types"; -dayjs.extend(utc); -dayjs.extend(objectSupport); - @HandleIntegrationErrors([integrationTsdavHttpErrorHandler]) export class NextcloudIntegration extends Integration { protected async testingAsync(input: IntegrationTestingInput): Promise { @@ -27,7 +21,7 @@ export class NextcloudIntegration extends Integration { return { success: true }; } - public async getCalendarEventsAsync(start: Date, end: Date): Promise { + public async getCalendarEventsAsync(start: Date, end: Date, _showUnmonitored?: boolean): Promise { const client = await this.createCalendarClientAsync(); await client.login(); @@ -57,14 +51,7 @@ export class NextcloudIntegration extends Integration { logger.debug(`Converting VEVENT event to ${event.etag} from Nextcloud: ${JSON.stringify(veventObject)}`); - const date = dayjs.utc({ - days: veventObject.start.getDay(), - month: veventObject.start.getMonth(), - year: veventObject.start.getFullYear(), - hours: veventObject.start.getHours(), - minutes: veventObject.start.getMinutes(), - seconds: veventObject.start.getSeconds(), - }); + const date = veventObject.start; const eventUrlWithoutHost = new URL(event.url).pathname; const dateInMillis = veventObject.start.valueOf(); @@ -75,7 +62,7 @@ export class NextcloudIntegration extends Integration { return { name: veventObject.summary, - date: date.toDate(), + date, subName: "", description: veventObject.description, links: [