fix admin-user not working inside the reports ui

This commit is contained in:
Hazelnoot 2025-06-09 13:19:54 -04:00
parent cd92518b59
commit 30679935ce
2 changed files with 17 additions and 10 deletions

View file

@ -118,9 +118,12 @@ import { misskeyApi } from '@/utility/misskey-api';
import AdminUser from '@/pages/admin-user.vue'; import AdminUser from '@/pages/admin-user.vue';
import SkUrlPreviewGroup from '@/components/SkUrlPreviewGroup.vue'; import SkUrlPreviewGroup from '@/components/SkUrlPreviewGroup.vue';
const props = defineProps<{ const props = withDefaults(defineProps<{
report: Misskey.entities.AdminAbuseUserReportsResponse[number]; report: Misskey.entities.AdminAbuseUserReportsResponse[number];
}>(); metaHint?: Misskey.entities.AdminMetaResponse | undefined;
}>(), {
metaHint: undefined,
});
const emit = defineEmits<{ const emit = defineEmits<{
(ev: 'resolved', reportId: string): void; (ev: 'resolved', reportId: string): void;
@ -134,7 +137,6 @@ reporterRouter.init();
*/ */
const parsedComment = computed(() => mfm.parse(props.report.comment)); const parsedComment = computed(() => mfm.parse(props.report.comment));
const metaHint = ref<Misskey.entities.AdminMetaResponse | undefined>(undefined);
const targetInstanceIcon = computed(() => props.report.targetInstance?.faviconUrl const targetInstanceIcon = computed(() => props.report.targetInstance?.faviconUrl
? getProxiedImageUrlNullable(props.report.targetInstance.faviconUrl, 'preview') ? getProxiedImageUrlNullable(props.report.targetInstance.faviconUrl, 'preview')
@ -142,12 +144,6 @@ const targetInstanceIcon = computed(() => props.report.targetInstance?.faviconUr
? getProxiedImageUrlNullable(props.report.targetInstance.iconUrl, 'preview') ? getProxiedImageUrlNullable(props.report.targetInstance.iconUrl, 'preview')
: null); : null);
if (iAmAdmin) {
misskeyApi('admin/meta')
.then(meta => metaHint.value = meta)
.catch(err => console.error('[MkAbuseReport] Error fetching meta:', err));
}
const moderationNote = ref(props.report.moderationNote ?? ''); const moderationNote = ref(props.report.moderationNote ?? '');
watch(moderationNote, async () => { watch(moderationNote, async () => {

View file

@ -49,7 +49,7 @@ SPDX-License-Identifier: AGPL-3.0-only
<MkPagination v-slot="{items}" ref="reports" :pagination="pagination" :displayLimit="50"> <MkPagination v-slot="{items}" ref="reports" :pagination="pagination" :displayLimit="50">
<SkDateSeparatedList v-slot="{ item: report }" :items="items"> <SkDateSeparatedList v-slot="{ item: report }" :items="items">
<XAbuseReport :report="report" @resolved="resolved"/> <XAbuseReport :report="report" :metaHint="metaHint" @resolved="resolved"/>
</SkDateSeparatedList> </SkDateSeparatedList>
</MkPagination> </MkPagination>
</div> </div>
@ -59,6 +59,7 @@ SPDX-License-Identifier: AGPL-3.0-only
<script lang="ts" setup> <script lang="ts" setup>
import { computed, useTemplateRef, ref } from 'vue'; import { computed, useTemplateRef, ref } from 'vue';
import * as Misskey from 'misskey-js';
import MkSelect from '@/components/MkSelect.vue'; import MkSelect from '@/components/MkSelect.vue';
import MkPagination from '@/components/MkPagination.vue'; import MkPagination from '@/components/MkPagination.vue';
import XAbuseReport from '@/components/MkAbuseReport.vue'; import XAbuseReport from '@/components/MkAbuseReport.vue';
@ -68,6 +69,8 @@ import MkButton from '@/components/MkButton.vue';
import MkInfo from '@/components/MkInfo.vue'; import MkInfo from '@/components/MkInfo.vue';
import { store } from '@/store.js'; import { store } from '@/store.js';
import SkDateSeparatedList from '@/components/SkDateSeparatedList.vue'; import SkDateSeparatedList from '@/components/SkDateSeparatedList.vue';
import { iAmAdmin } from '@/i';
import { misskeyApi } from '@/utility/misskey-api';
const reports = useTemplateRef('reports'); const reports = useTemplateRef('reports');
@ -77,6 +80,14 @@ const targetUserOrigin = ref('combined');
const searchUsername = ref(''); const searchUsername = ref('');
const searchHost = ref(''); const searchHost = ref('');
const metaHint = ref<Misskey.entities.AdminMetaResponse | undefined>(undefined);
if (iAmAdmin) {
misskeyApi('admin/meta')
.then(meta => metaHint.value = meta)
.catch(err => console.error('[MkAbuseReport] Error fetching meta:', err));
}
const pagination = { const pagination = {
endpoint: 'admin/abuse-user-reports' as const, endpoint: 'admin/abuse-user-reports' as const,
limit: 10, limit: 10,