diff --git a/package.json b/package.json index 2abb6642..db8f5cc0 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "moviepilot", - "version": "1.6.4-2", + "version": "1.6.5", "private": true, "bin": "dist/service.js", "scripts": { diff --git a/src/views/plugin/PluginCardListView.vue b/src/views/plugin/PluginCardListView.vue index c0a7378a..89b61780 100644 --- a/src/views/plugin/PluginCardListView.vue +++ b/src/views/plugin/PluginCardListView.vue @@ -5,25 +5,21 @@ import NoDataFound from '@/components/NoDataFound.vue' import PluginAppCard from '@/components/cards/PluginAppCard.vue' import PluginCard from '@/components/cards/PluginCard.vue' -// 数据列表 +// 已安装插件列表 const dataList = ref([]) +// 未安装插件列表 +const uninstalledList = ref([]) + // 是否刷新过 const isRefreshed = ref(false) +// APP市场是否加载完成 +const isAppMarketLoaded = ref(false) + // APP市场窗口 const PluginAppDialog = ref(false) -// 获取已安装的插件列表 -const getInstalledPluginList = computed(() => { - return dataList.value.filter(item => item.installed) -}) - -// 获取未安装或者有更新的插件列表 -const getUninstalledPluginList = computed(() => { - return dataList.value.filter(item => !item.installed || item.has_update) -}) - // 关闭插件市场窗口 function pluginDialogClose() { PluginAppDialog.value = false @@ -31,14 +27,19 @@ function pluginDialogClose() { // 新安装了插件 function pluginInstalled() { - fetchData() + fetchInstalledPlugins() pluginDialogClose() + fetchUninstalledPlugins() } // 获取插件列表数据 -async function fetchData() { +async function fetchInstalledPlugins() { try { - dataList.value = await api.get('plugin/') + dataList.value = await api.get('plugin/', { + params: { + state: 'installed', + }, + }) isRefreshed.value = true } catch (error) { @@ -46,8 +47,26 @@ async function fetchData() { } } +// 获取未安装插件列表数据 +async function fetchUninstalledPlugins() { + try { + uninstalledList.value = await api.get('plugin/', { + params: { + state: 'market', + }, + }) + isAppMarketLoaded.value = true + } + catch (error) { + console.error(error) + } +} + // 加载时获取数据 -onBeforeMount(fetchData) +onBeforeMount(() => { + fetchInstalledPlugins() + fetchUninstalledPlugins() +})