diff --git a/dashboard/src/components/extension/PinnedPluginItem.vue b/dashboard/src/components/extension/PinnedPluginItem.vue index 8fbb7dfd0b..f836b1134d 100644 --- a/dashboard/src/components/extension/PinnedPluginItem.vue +++ b/dashboard/src/components/extension/PinnedPluginItem.vue @@ -39,6 +39,16 @@ const emit = defineEmits([ const handlePinnedImgError = (e) => { e.target.src = defaultPluginIcon; }; + +const authorDisplay = computed(() => { + const p = props.plugin || {}; + if (typeof p.author === 'string' && p.author.trim()) return p.author; + if (Array.isArray(p.authors) && p.authors.length) return p.authors.join(', '); + if (typeof p.author_name === 'string' && p.author_name.trim()) return p.author_name; + if (typeof p.owner === 'string' && p.owner.trim()) return p.owner; + if (p.author && typeof p.author === 'object' && p.author.name) return p.author.name; + return ''; +}); + +
+ + + +
+
{{ plugin.display_name || plugin.name }}
+
{{ authorDisplay || (plugin.author || '') }}
+
+
+
+