Merge remote-tracking branch 'origin/renovate/node-ical-0-x' into renovate/node-ical-0-x

This commit is contained in:
Manuel committed 2026-03-31 22:22:57 +02:00
commit 5501757bd5
3 files changed
+15 -11

No files matched your search

+1 -1
View File
@@ -38,7 +38,7 @@
"@homarr/redis": "workspace:^0.1.0",
"@homarr/translation": "workspace:^0.1.0",
"@homarr/validation": "workspace:^0.1.0",
"@immich/sdk": "^2.6.2",
"@immich/sdk": "^2.6.3",
"@jellyfin/sdk": "^0.13.0",
"@octokit/auth-app": "^8.2.0",
"ical.js": "^2.2.1",
@@ -68,15 +68,19 @@ export class NextcloudIntegration extends Integration implements ICalendarIntegr
return calendarEvents
.map((event) => {
// @ts-expect-error the typescript definitions for this package are wrong
// @ts-expect-error the TypeScript definitions for this package are wrong
// eslint-disable-next-line @typescript-eslint/no-unsafe-call,@typescript-eslint/no-unsafe-member-access
const icalData = ical.default.parseICS(event.data) as ical.CalendarResponse;
const veventObject = Object.values(icalData).find((data) => data.type === "VEVENT");
const veventObject = Object.values(icalData).find((data) => data?.type === "VEVENT");
if (!veventObject) {
throw new Error(`Invalid event data object: ${JSON.stringify(event.data)}. Unable to process the calendar.`);
}
if (!veventObject.end) {
throw new Error(`Event had no end date: ${JSON.stringify(event.data)}. Unable to process the calendar.`);
}
logger.debug(`Converting VEVENT event to ${event.etag} from Nextcloud: ${JSON.stringify(veventObject)}`);
const eventUrlWithoutHost = new URL(event.url).pathname;
@@ -92,13 +96,13 @@ export class NextcloudIntegration extends Integration implements ICalendarIntegr
const dateInMillis = utcStartDate.valueOf();
return {
title: veventObject.summary,
title: veventObject.summary as string,
subTitle: null,
description: veventObject.description,
description: veventObject.description as string,
startDate: utcStartDate,
endDate,
image: null,
location: veventObject.location || null,
location: (veventObject.location as string | undefined) ?? null,
indicatorColor:
"color" in veventObject && typeof veventObject.color === "string" ? veventObject.color : "#ff8600",
links: [
+5 -5
View File
@@ -1466,8 +1466,8 @@ importers:
specifier: workspace:^0.1.0
version: link:../validation
'@immich/sdk':
specifier: ^2.6.2
version: 2.6.2
specifier: ^2.6.3
version: 2.6.3
'@jellyfin/sdk':
specifier: ^0.13.0
version: 0.13.0(axios@1.12.2)
@@ -3490,8 +3490,8 @@ packages:
cpu: [x64]
os: [win32]
'@immich/sdk@2.6.2':
resolution: {integrity: sha512-GDUOOyP4q6HDF8X9J/cHUX2sSrlWKKvMntvLgC8J1+vExGKx7FKxZnUybTHDzjefs6c0G8kpVN3UwgCEQXJNDA==}
'@immich/sdk@2.6.3':
resolution: {integrity: sha512-LPQPgmnzRl01aaTpaM3Ts26MM/8swVKKWhDG4DvWHosV2GW+d7+8v7fAEsP8u7z2kvT1h7PKvgLcxpBNGzS3cA==}
'@inquirer/ansi@1.0.2':
resolution: {integrity: sha512-S8qNSZiYzFd0wAcyG5AXCvUHC5Sr7xpZ9wZ2py9XR88jUz8wooStVx5M6dRzczbBWjic9NP7+rY0Xi7qqK/aMQ==}
@@ -11939,7 +11939,7 @@ snapshots:
'@img/sharp-win32-x64@0.34.5':
optional: true
'@immich/sdk@2.6.2':
'@immich/sdk@2.6.3':
dependencies:
'@oazapfts/runtime': 1.2.0