From 21a2fbe6200752ea311f1c2433cf4a74ae91d226 Mon Sep 17 00:00:00 2001 From: Ryan Wang Date: Thu, 7 Jul 2022 17:05:46 +0800 Subject: [PATCH] refactor: plugin enable/disable api Signed-off-by: Ryan Wang --- src/modules/system/plugins/PluginDetail.vue | 12 +++++------- src/modules/system/plugins/PluginList.vue | 6 +++--- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/src/modules/system/plugins/PluginDetail.vue b/src/modules/system/plugins/PluginDetail.vue index f573f6d69..2aadac6af 100644 --- a/src/modules/system/plugins/PluginDetail.vue +++ b/src/modules/system/plugins/PluginDetail.vue @@ -14,7 +14,7 @@ import type { Plugin } from "@/types/extension"; import { axiosInstance } from "@halo-dev/admin-shared"; const pluginActiveId = ref("detail"); -const plugin = ref(); +const plugin = ref({} as Plugin); const { params } = useRoute(); @@ -30,17 +30,15 @@ const handleFetchPlugin = async () => { }; const isStarted = computed(() => { - return ( - plugin.value?.status?.phase === "STARTED" && plugin.value?.spec.enabled - ); + return plugin.value.status?.phase === "STARTED" && plugin.value.spec.enabled; }); const handleChangePluginStatus = async () => { try { + plugin.value.spec.enabled = !plugin.value.spec.enabled; await axiosInstance.put( - `/apis/plugin.halo.run/v1alpha1/plugins/${plugin.value?.metadata.name}/${ - isStarted.value ? "stop" : "startup" - }` + `/apis/plugin.halo.run/v1alpha1/plugins/${plugin.value.metadata.name}`, + plugin.value ); } catch (e) { console.error(e); diff --git a/src/modules/system/plugins/PluginList.vue b/src/modules/system/plugins/PluginList.vue index 079a2ddab..501585d87 100644 --- a/src/modules/system/plugins/PluginList.vue +++ b/src/modules/system/plugins/PluginList.vue @@ -45,10 +45,10 @@ const handleFetchPlugins = async () => { const handleChangePluginStatus = async (plugin: Plugin) => { try { + plugin.spec.enabled = !plugin.spec.enabled; await axiosInstance.put( - `/apis/plugin.halo.run/v1alpha1/plugins/${plugin.metadata.name}/${ - isStarted(plugin) ? "stop" : "startup" - }` + `/apis/plugin.halo.run/v1alpha1/plugins/${plugin.metadata.name}`, + plugin ); } catch (e) { console.error(e);