switch endpoint service state

This commit is contained in:
JzoNg 2024-10-19 15:38:03 +08:00
parent b1771194cc
commit 37f55098fe

View File

@ -6,6 +6,10 @@ import ActionButton from '@/app/components/base/action-button'
import CopyBtn from '@/app/components/base/copy-btn'
import Indicator from '@/app/components/header/indicator'
import Switch from '@/app/components/base/switch'
import {
disableEndpoint,
enableEndpoint,
} from '@/service/plugins'
type Props = {
data: EndpointListItem
@ -16,9 +20,37 @@ const EndpointCard = ({
}: Props) => {
const { t } = useTranslation()
const [active, setActive] = useState(data.enabled)
const endpointID = data.id
const handleSwitch = () => {
setActive(!active)
const activeEndpoint = async () => {
try {
await enableEndpoint({
url: '/workspaces/current/endpoints/enable',
endpointID,
})
}
catch (error) {
console.error(error)
setActive(true)
}
}
const inactiveEndpoint = async () => {
try {
await disableEndpoint({
url: '/workspaces/current/endpoints/disable',
endpointID,
})
}
catch (error) {
console.error(error)
setActive(false)
}
}
const handleSwitch = (state: boolean) => {
if (state)
activeEndpoint()
else
inactiveEndpoint()
}
return (