mirror of
https://github.com/Buriburizaem0n/admin-frontend-domain.git
synced 2026-09-19 09:40:13 +00:00
25 lines
727 B
TypeScript
25 lines
727 B
TypeScript
import { createTerminal } from "@/api/terminal"
|
|
import { ModelCreateTerminalResponse } from "@/types"
|
|
import { useEffect, useState } from "react"
|
|
|
|
export default function useTerminal(serverId?: number) {
|
|
const [terminal, setTerminal] = useState<ModelCreateTerminalResponse | null>(null)
|
|
|
|
useEffect(() => {
|
|
if (!serverId) return
|
|
let cancelled = false
|
|
createTerminal(serverId)
|
|
.then((response) => {
|
|
if (!cancelled) setTerminal(response)
|
|
})
|
|
.catch((error) => {
|
|
console.error("Failed to fetch terminal:", error)
|
|
})
|
|
return () => {
|
|
cancelled = true
|
|
}
|
|
}, [serverId])
|
|
|
|
return terminal
|
|
}
|