admin/plugins: ask confirmation to start a plugin that was just downloaded

Massimo Melina committed Sep 10, 2023 at 20:20 UTC e3f76da591abf8e6337d59396171d02ac47ef258
1 file changed +4 -3
admin/src/OnlinePlugins.ts
+4 -3
@@ -9,12 +9,12 @@ import { StringField } from '@hfs/mui-grid-form'
9 import { useDebounce } from 'usehooks-ts'
10 import { renderName, showError, startPlugin } from './InstalledPlugins'
11 import { state, useSnapState } from './state'
12 -import { alertDialog } from './dialog'
12 +import { alertDialog, confirmDialog } from './dialog'
13
14 export default function OnlinePlugins() {
15 const [search, setSearch] = useState('')
16 const debouncedSearch = useDebounce(search, 1000)
17 - const { list, error, initializing, updateList } = useApiList('get_online_plugins', { text: debouncedSearch })
17 + const { list, error, initializing } = useApiList('get_online_plugins', { text: debouncedSearch })
18 const snap = useSnapState()
19 if (error)
20 return showError(error)
@@ -78,7 +78,8 @@ export default function OnlinePlugins() {
78 const branch = row.branch || row.default_branch
79 try {
80 const res = await apiCall('download_plugin', { id, branch }, { timeout: false })
81 - await startPlugin(res.id)
81 + if (await confirmDialog(`Plugin ${id} downloaded`, { confirmText: "Start" }))
82 + await startPlugin(res.id)
83 }
84 catch(e: any) {
85 if (e.code !== 424) throw e