diff --git a/frontend/src/components/discovery/TagCard.vue b/frontend/src/components/discovery/TagCard.vue index 9eb27ad..db7b3df 100644 --- a/frontend/src/components/discovery/TagCard.vue +++ b/frontend/src/components/discovery/TagCard.vue @@ -55,6 +55,12 @@ /> + + + Fandom for “{{ tag.name }}” + + + + + + + + + + + + + + diff --git a/frontend/src/components/modal/TagPanel.vue b/frontend/src/components/modal/TagPanel.vue index 9453592..f1f83dd 100644 --- a/frontend/src/components/modal/TagPanel.vue +++ b/frontend/src/components/modal/TagPanel.vue @@ -28,6 +28,11 @@ Rename… + + Set fandom… + @@ -57,6 +62,13 @@ @renamed="onRenamed" @cancel="renameDialog = false" /> + + + + @@ -67,6 +79,7 @@ import { useTagStore } from '../../stores/tags.js' import TagAutocomplete from './TagAutocomplete.vue' import SuggestionsPanel from './SuggestionsPanel.vue' import TagRenameDialog from './TagRenameDialog.vue' +import FandomSetDialog from './FandomSetDialog.vue' const modal = useModalStore() const store = useTagStore() @@ -107,6 +120,18 @@ async function onRenamed() { // Reflect the new name in the modal's current tag list without a full reload. await modal.reloadTags() } + +const fandomDialog = ref(false) +const fandomTarget = ref(null) +function openSetFandom(tag) { + fandomTarget.value = tag + fandomDialog.value = true +} +async function onFandomUpdated() { + fandomDialog.value = false + // A fandom change can merge the tag away; reload to reflect the new state. + await modal.reloadTags() +}