mirror of
https://github.com/kennethnym/aris.git
synced 2026-03-20 09:01:19 +00:00
feat(core): add sourceId to FeedItem
Each FeedSource implementation now sets sourceId on items it produces, allowing consumers to trace items back to their originating source. Co-authored-by: Ona <no-reply@ona.com>
This commit is contained in:
@@ -133,7 +133,7 @@ export class CalDavSource implements FeedSource<CalDavFeedItem> {
|
||||
async fetchItems(context: Context): Promise<CalDavFeedItem[]> {
|
||||
const now = context.time
|
||||
const events = await this.fetchEvents(context)
|
||||
return events.map((event) => createFeedItem(event, now, this.timeZone))
|
||||
return events.map((event) => createFeedItem(event, now, this.id, this.timeZone))
|
||||
}
|
||||
|
||||
private fetchEvents(context: Context): Promise<CalDavEventData[]> {
|
||||
@@ -351,9 +351,15 @@ function createEventSlots(): Record<string, Slot> {
|
||||
}
|
||||
}
|
||||
|
||||
function createFeedItem(event: CalDavEventData, now: Date, timeZone?: string): CalDavFeedItem {
|
||||
function createFeedItem(
|
||||
event: CalDavEventData,
|
||||
now: Date,
|
||||
sourceId: string,
|
||||
timeZone?: string,
|
||||
): CalDavFeedItem {
|
||||
return {
|
||||
id: `caldav-event-${event.uid}${event.recurrenceId ? `-${event.recurrenceId}` : ""}`,
|
||||
sourceId,
|
||||
type: CalDavFeedItemType.Event,
|
||||
timestamp: now,
|
||||
data: event,
|
||||
|
||||
Reference in New Issue
Block a user