File size: 1,416 Bytes
38c5e89 945c6bb 5786921 d378496 a447b30 30f44e6 38c5e89 30f44e6 a447b30 31d949e 30f44e6 a447b30 31d949e 38c5e89 945c6bb 38c5e89 945c6bb 5786921 30f44e6 5786921 945c6bb 38c5e89 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
import Head from "next/head";
import Container from "@mui/material/Container";
import { Stack } from "@mui/material";
import { DividerBox } from "@/components/base/boxes";
import { useCallback, useEffect, useState } from "react";
import { HF_FileEntry, HFRes } from "@/types";
import { basename } from "path";
export default function Home() {
const [repo, setRepo] = useState('https://huggingface.co/datasets/banned-historical-archives/wenhuibao_disk/tree/main');
const [entries, setEntries] = useState<HF_FileEntry[]>([])
const [next, setNext] = useState('')
const update = useCallback(
(async () => {
const res = (await ((await fetch('/api/get_file_list')).json())) as HFRes;
setEntries(res.entries);
setNext(res.nextURL!);
}), []
)
useEffect(() => {
update()
}, [])
return (
<>
<Head>
<title>nextjs-docker-starter</title>
<link rel="icon" href="/favicon.ico" />
<meta name="description" content="Next.js in Docker on 🤗 Spaces" />
</Head>
<Container component="main" sx={{ minHeight: "90vh" }}>
<Stack spacing={4} useFlexGap>
<input value={repo} onChange={e => setRepo(e.target.value)}/>
{entries.map(i => <div key={i.path}>
{basename(i.path)}
</div>)}
<button onClick={() => {
}}>more</button>
</Stack>
</Container>
</>
);
}
|