From aad06a0e8ba6e16c08c91ef9ff8dc0669ca77f2d Mon Sep 17 00:00:00 2001 From: dakkar Date: Sun, 24 Mar 2024 12:02:58 +0000 Subject: copy MkNote* changes to SkNote* --- .../frontend/src/components/SkNoteDetailed.vue | 30 ++++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) (limited to 'packages/frontend/src/components/SkNoteDetailed.vue') diff --git a/packages/frontend/src/components/SkNoteDetailed.vue b/packages/frontend/src/components/SkNoteDetailed.vue index 3ae4eae956..29b70d2391 100644 --- a/packages/frontend/src/components/SkNoteDetailed.vue +++ b/packages/frontend/src/components/SkNoteDetailed.vue @@ -107,7 +107,9 @@ SPDX-License-Identifier: AGPL-3.0-only - +
+ +
{{ appearNote.channel.name }} @@ -234,6 +236,7 @@ import * as Misskey from 'misskey-js'; import SkNoteSub from '@/components/SkNoteSub.vue'; import SkNoteSimple from '@/components/SkNoteSimple.vue'; import MkReactionsViewer from '@/components/MkReactionsViewer.vue'; +import MkReactionsViewerDetails from '@/components/MkReactionsViewer.details.vue'; import MkMediaList from '@/components/MkMediaList.vue'; import MkCwButton from '@/components/MkCwButton.vue'; import MkPoll from '@/components/MkPoll.vue'; @@ -246,7 +249,7 @@ import { userPage } from '@/filters/user.js'; import number from '@/filters/number.js'; import { notePage } from '@/filters/note.js'; import * as os from '@/os.js'; -import { misskeyApi } from '@/scripts/misskey-api.js'; +import { misskeyApi, misskeyApiGet } from '@/scripts/misskey-api.js'; import * as sound from '@/scripts/sound.js'; import { defaultStore, noteViewInterruptors } from '@/store.js'; import { reactionPicker } from '@/scripts/reaction-picker.js'; @@ -267,6 +270,7 @@ import MkPagination, { type Paging } from '@/components/MkPagination.vue'; import MkReactionIcon from '@/components/MkReactionIcon.vue'; import MkButton from '@/components/MkButton.vue'; import { boostMenuItems, type Visibility } from '@/scripts/boost-quote.js'; +import { isEnabledUrlPreview } from '@/instance.js'; const props = defineProps<{ note: Misskey.entities.Note; @@ -448,6 +452,28 @@ function boostVisibility() { } } +if (appearNote.value.reactionAcceptance === 'likeOnly') { + useTooltip(reactButton, async (showing) => { + const reactions = await misskeyApiGet('notes/reactions', { + noteId: appearNote.value.id, + limit: 10, + _cacheKey_: appearNote.value.reactionCount, + }); + + const users = reactions.map(x => x.user); + + if (users.length < 1) return; + + os.popup(MkReactionsViewerDetails, { + showing, + reaction: '❤️', + users, + count: appearNote.value.reactionCount, + targetElement: reactButton.value!, + }, {}, 'closed'); + }); +} + function renote(visibility: Visibility, localOnly: boolean = false) { pleaseLogin(); showMovedDialog(); -- cgit v1.2.3-freya