validate type of attributionDomains.

This commit is contained in:
piuvas 2025-06-03 12:24:42 -03:00
parent 1120ad19ae
commit fe91db1219
No known key found for this signature in database

View file

@ -445,7 +445,7 @@ export class ApPersonService implements OnModuleInit, OnApplicationShutdown {
makeNotesFollowersOnlyBefore: (person as any).makeNotesFollowersOnlyBefore ?? null,
makeNotesHiddenBefore: (person as any).makeNotesHiddenBefore ?? null,
emojis,
attributionDomains: person.attributionDomains ?? [],
attributionDomains: person.attributionDomains?.every(x => typeof x === 'string') ? person.attributionDomains : [],
})) as MiRemoteUser;
let _description: string | null = null;
@ -629,7 +629,7 @@ export class ApPersonService implements OnModuleInit, OnApplicationShutdown {
// We use "!== false" to handle incorrect types, missing / null values, and "default to true" logic.
hideOnlineStatus: person.hideOnlineStatus !== false,
isExplorable: person.discoverable !== false,
attributionDomains: person.attributionDomains ?? [],
attributionDomains: person.attributionDomains?.every(x => typeof x === 'string') ? person.attributionDomains : [],
...(await this.resolveAvatarAndBanner(exist, person.icon, person.image, person.backgroundUrl).catch(() => ({}))),
} as Partial<MiRemoteUser> & Pick<MiRemoteUser, 'isBot' | 'isCat' | 'speakAsCat' | 'isLocked' | 'movedToUri' | 'alsoKnownAs' | 'isExplorable'>;