diff --git a/console/src/components/operation-items/ViewAppStoreOperationItem.vue b/console/src/components/operation-items/ViewAppStoreOperationItem.vue new file mode 100644 index 0000000..5fd160a --- /dev/null +++ b/console/src/components/operation-items/ViewAppStoreOperationItem.vue @@ -0,0 +1,48 @@ + + + diff --git a/console/src/index.ts b/console/src/index.ts index aae4ab0..fc56842 100644 --- a/console/src/index.ts +++ b/console/src/index.ts @@ -9,6 +9,8 @@ import AppStore from "./views/AppStore.vue"; import type { Plugin, Theme } from "@halo-dev/api-client"; import PluginVersionCheckField from "./components/entity-fields/PluginVersionCheckField.vue"; import ThemeVersionCheckOperationItem from "./components/operation-items/ThemeVersionCheckOperationItem.vue"; +import ViewAppStoreOperationItem from "./components/operation-items/ViewAppStoreOperationItem.vue"; +import { STORE_APP_ID } from "./constant"; export default definePlugin({ routes: [ @@ -81,5 +83,17 @@ export default definePlugin({ }, ]; }, + "plugin:list-item:operation:create": (plugin: Ref) => { + return [ + { + priority: 11, + component: markRaw(ViewAppStoreOperationItem), + props: { + appId: plugin.value.metadata.annotations?.[STORE_APP_ID], + }, + hidden: !plugin.value.metadata.annotations?.[STORE_APP_ID], + }, + ]; + }, }, });