From bd95e8a555e2fcb8b72ae4fbe496495af28fc8b3 Mon Sep 17 00:00:00 2001 From: Hazelnoot Date: Fri, 31 Jan 2025 11:14:21 -0500 Subject: fix relationship data for Mastodon API (resolves #714) --- packages/megalodon/src/entities/relationship.ts | 1 + packages/megalodon/src/mastodon/entities/relationship.ts | 1 + packages/megalodon/src/misskey.ts | 4 ++-- packages/megalodon/src/misskey/api_client.ts | 11 ++++++----- packages/megalodon/src/misskey/entities/relation.ts | 3 +++ 5 files changed, 13 insertions(+), 7 deletions(-) (limited to 'packages/megalodon') diff --git a/packages/megalodon/src/entities/relationship.ts b/packages/megalodon/src/entities/relationship.ts index 283a1158c6..eb8daf9c7b 100644 --- a/packages/megalodon/src/entities/relationship.ts +++ b/packages/megalodon/src/entities/relationship.ts @@ -8,6 +8,7 @@ namespace Entity { muting: boolean muting_notifications: boolean requested: boolean + requested_by?: boolean domain_blocking: boolean showing_reblogs: boolean endorsed: boolean diff --git a/packages/megalodon/src/mastodon/entities/relationship.ts b/packages/megalodon/src/mastodon/entities/relationship.ts index 8e02df5769..f868a64063 100644 --- a/packages/megalodon/src/mastodon/entities/relationship.ts +++ b/packages/megalodon/src/mastodon/entities/relationship.ts @@ -8,6 +8,7 @@ namespace MastodonEntity { muting: boolean muting_notifications: boolean requested: boolean + requested_by: boolean domain_blocking: boolean showing_reblogs: boolean endorsed: boolean diff --git a/packages/megalodon/src/misskey.ts b/packages/megalodon/src/misskey.ts index 7d68d4eddf..7e493d8fb7 100644 --- a/packages/megalodon/src/misskey.ts +++ b/packages/megalodon/src/misskey.ts @@ -604,7 +604,7 @@ export default class Misskey implements MegalodonInterface { /** * POST /api/users/relation * - * @param id Array of account ID, for example `['1sdfag', 'ds12aa']`. + * @param ids Array of account ID, for example `['1sdfag', 'ds12aa']`. */ public async getRelationships(ids: Array): Promise>> { return Promise.all(ids.map(id => this.getRelationship(id))).then(results => ({ @@ -2232,7 +2232,7 @@ export default class Misskey implements MegalodonInterface { hashtags: [], }, })); - + if (result.status !== 200) { result.status = 200; result.statusText = "OK"; diff --git a/packages/megalodon/src/misskey/api_client.ts b/packages/megalodon/src/misskey/api_client.ts index 8996b802c8..a4352613eb 100644 --- a/packages/megalodon/src/misskey/api_client.ts +++ b/packages/megalodon/src/misskey/api_client.ts @@ -227,13 +227,14 @@ namespace MisskeyAPI { blocking: r.isBlocking, blocked_by: r.isBlocked, muting: r.isMuted, - muting_notifications: false, + muting_notifications: r.isMuted, requested: r.hasPendingFollowRequestFromYou, - domain_blocking: false, - showing_reblogs: true, + requested_by: r.hasPendingFollowRequestToYou, + domain_blocking: r.isInstanceMuted ?? false, + showing_reblogs: !r.isRenoteMuted, endorsed: false, - notifying: false, - note: null + notifying: !r.isMuted, + note: r.memo ?? '', } } diff --git a/packages/megalodon/src/misskey/entities/relation.ts b/packages/megalodon/src/misskey/entities/relation.ts index 07653b4865..a43dfbab4e 100644 --- a/packages/megalodon/src/misskey/entities/relation.ts +++ b/packages/megalodon/src/misskey/entities/relation.ts @@ -8,5 +8,8 @@ namespace MisskeyEntity { isBlocking: boolean isBlocked: boolean isMuted: boolean + isRenoteMuted: boolean + isInstanceMuted?: boolean + memo?: string | null } } -- cgit v1.2.3-freya