Newer
Older
import { Backdrop, Box, Button, CircularProgress, TextField, List, ListItem, ListItemButton, ListItemText, ListItemIcon, Select, MenuItem } from '@mui/material';
import { dbGetCollection, dbGetItems, dbUpdateCollectionGlob, dbUpdateCollectionSummary, dbUpdateCollectionSummaryNLTK, dbUpdateCollectionSummaryBERT } from './database_util';
const [summarizer, setSummarizer] = useState('');
const updateGlob = (event) => {
// console.log();
let copy = JSON.parse(JSON.stringify(props.collection))
copy["collection_data"]["glob"] = event.target.value
props.onCollectionUpdate(copy)
// console.log(copy);
}
const summary_array = () => {
return [["T5",props.collection["t5_summary"]], ["NLTK", props.collection["nltk_summary"]], ["BERT",props.collection["bert_summary"]]]
}
const generateSummary = async () => {
if (summarizer === '') {
return;
}
setOpen(true);
let id = props.collection["collection_id"]
await dbUpdateCollectionSummary(id, summarizer);
props.onCollectionUpdate(await dbGetCollection(id));
setOpen(false);
<h1>{props.collection["collection_name"]}</h1>
<h3>Loaded Files</h3>
<List sx={{boxShadow:1}}>
{
props.loadedRawFiles.map((f) => {
return (
<ListItem>
<ListItemButton>
<ListItemText>
</ListItemText>
</ListItemButton>
</ListItem>
);
})
}
</List>
<List sx={{boxShadow:1}}>
<ListItem>
<ListItemText>
Please select which summarizer you would like to use to generate the summary
</ListItemText>
<Select
value={summarizer}
onChange={(e) => setSummarizer(e.target.value)}
sx={{ width: "300px" }}
>
<MenuItem value="t5">T5 Summarizer</MenuItem>
<MenuItem value="nltk">NLTK Summarizer</MenuItem>
<MenuItem value="bert">BERT Summarizer</MenuItem>
</Select>
</ListItem>
</List>
<Button onClick={generateSummary}>Generate Summary</Button>
{
summary_array().map((f) => {
return (
<div>
<h3>{f[0]}</h3>
<TextField disabled multiline maxRows={20} fullWidth label="Summary:" value={f[1]} />
</div>
);
})
}
{/* {summaries.map((summary) => summary)} */}
<Backdrop
open={open}
>
<CircularProgress/>
</Backdrop>
</Box>
);
}
export default CollectionEditor;