diff --git a/apps/frontend/src/components/ui/moderation/ProjectC2paScanModal.vue b/apps/frontend/src/components/ui/moderation/ProjectC2paScanModal.vue new file mode 100644 index 0000000000..100968c3f1 --- /dev/null +++ b/apps/frontend/src/components/ui/moderation/ProjectC2paScanModal.vue @@ -0,0 +1,113 @@ + + + + + + C2PA Scan Info + + + + + Scanning {{ checkedFiles }}/{{ totalFiles }} files. + + + + No AI-generated files found. + + + + AI-generated files ({{ aiFiles.length }}) + + {{ file }} + + Open + + + + + + + diff --git a/apps/frontend/src/pages/[type]/[project]/versions.vue b/apps/frontend/src/pages/[type]/[project]/versions.vue index adefb0711f..f7447f1a24 100644 --- a/apps/frontend/src/pages/[type]/[project]/versions.vue +++ b/apps/frontend/src/pages/[type]/[project]/versions.vue @@ -12,6 +12,8 @@ ref="create-project-version-modal" > + + projectC2paScanModal.openC2paModal(createDownloadUrl(version)), + shown: isStaff(auth.user), + }, { type: 'divider', shown: currentMember || flags.developerMode }, { id: 'copy-id', @@ -243,6 +253,10 @@ Delete + + + View C2PA Info + Copy ID @@ -279,6 +293,7 @@ import { LinkIcon, MoreVerticalIcon, ReportIcon, + ScanEyeIcon, ShareIcon, SpinnerIcon, TrashIcon, @@ -297,6 +312,7 @@ import { isStaff } from '@modrinth/utils' import { onMounted, useTemplateRef, watch } from 'vue' import CreateProjectVersionModal from '~/components/ui/create-project-version/CreateProjectVersionModal.vue' +import ProjectC2paScanModal from '~/components/ui/moderation/ProjectC2paScanModal.vue' import { getSignInRouteObj } from '~/composables/auth.ts' import { reportVersion } from '~/utils/report-helpers.ts' @@ -337,6 +353,7 @@ onMounted(() => { const deleteVersionModal = ref() const selectedVersion = ref(null) const createProjectVersionModal = useTemplateRef('create-project-version-modal') +const projectC2paScanModal = useTemplateRef('project-c2pa-scan-modal') const handleOpenCreateVersionModal = () => { if (!currentMember.value) return diff --git a/packages/ui/src/components/user/account-choice.ts b/packages/ui/src/components/user/account-choice.ts new file mode 100644 index 0000000000..59072682f3 --- /dev/null +++ b/packages/ui/src/components/user/account-choice.ts @@ -0,0 +1,8 @@ +import type { Labrinth } from '@modrinth/api-client' + +export type AccountChoice = { + id: string + username: string + avatarUrl?: string | null + role?: Labrinth.Users.v2.Role | null +}