diff --git a/packages/backend/src/core/activitypub/ApRendererService.ts b/packages/backend/src/core/activitypub/ApRendererService.ts index 8b0d94247..40d06b3ae 100644 --- a/packages/backend/src/core/activitypub/ApRendererService.ts +++ b/packages/backend/src/core/activitypub/ApRendererService.ts @@ -466,7 +466,7 @@ export class ApRendererService { this.userProfilesRepository.findOneByOrFail({ userId: user.id }), ]); - const attachment = profile.fields.map(field => ({ + const profileFields = profile.fields.map(field => ({ type: 'PropertyValue', name: field.name, value: (field.value.startsWith('http://') || field.value.startsWith('https://')) @@ -474,6 +474,16 @@ export class ApRendererService { : field.value, })); + const mutualLinks = profile.mutualLinkSections.flatMap(section => + section.mutualLinks.map(link => ({ + type: 'PropertyValue', + name: section.name ?? link.description ?? 'Link', + value: `${link.description ?? link.url}`, + })), + ); + + const attachment = mutualLinks.concat(profileFields); + const emojis = await this.getEmojis(user.emojis); const apemojis = emojis.filter(emoji => !emoji.localOnly).map(emoji => this.renderEmoji(emoji));