import { Box, Button, HStack, Table, Tbody, Td, Th, Thead, Tr, VStack, } from "@hope-ui/solid" import { createSignal, For } from "solid-js" import { useFetch, useListFetch, useManageTitle, useRouter, useT, } from "~/hooks" import { handleResp, notify, r } from "~/utils" import { Meta, PageResp } from "~/types" import { DeletePopover } from "../common/DeletePopover" import { Wether } from "~/components" const Metas = () => { const t = useT() useManageTitle("manage.sidemenu.metas") const { to } = useRouter() const [getMetasLoading, getMetas] = useFetch(() => r.get("/admin/meta/list")) const [metas, setMetas] = createSignal([]) const refresh = async () => { const resp: PageResp = await getMetas() handleResp(resp, (data) => setMetas(data.content)) } refresh() const [deleting, deleteMeta] = useListFetch((id: number) => r.post(`/admin/meta/delete?id=${id}`), ) return ( {t("global.refresh")} { to("/@manage/metas/add") }} > {t("global.add")} {(title) => {t(`metas.${title}`)}} {t("global.operations")} {(meta) => ( {meta.path} {meta.password} {/* {meta.hide} */} { to(`/@manage/metas/edit/${meta.id}`) }} > {t("global.edit")} { const resp = await deleteMeta(meta.id) handleResp(resp, () => { notify.success(t("global.delete_success")) refresh() }) }} /> )} ) } export default Metas