3ef1ad9574
* feat: add website and folder upload and download * feat: download-share-upload navigation * fix: check for files length in hasIndexDocument * fix: change router dependency * refactor: switch to @ethersphere/manfest-js * fix: hide previews on dropzone, fix spinner align, hide 0 size display * feat: add upload and download history * refactor: change drag and drop text * feat: make history ux better * refactor: improve code based on review * build: add missing react-router dependency * ci: remove beeload * revert(ci): remove beeload This reverts commit 4ce6cb0045a2d9aea3047ab395d214d8d368c532.
42 lines
1.1 KiB
TypeScript
42 lines
1.1 KiB
TypeScript
import { createStyles, makeStyles, Tab, Tabs, Theme } from '@material-ui/core'
|
|
import { ReactElement } from 'react'
|
|
import { useHistory } from 'react-router-dom'
|
|
import { ROUTES } from '../../routes'
|
|
|
|
interface Props {
|
|
active: 'UPLOAD' | 'DOWNLOAD'
|
|
}
|
|
|
|
const useStyles = makeStyles((theme: Theme) =>
|
|
createStyles({
|
|
root: {
|
|
flexGrow: 1,
|
|
marginBottom: theme.spacing(4),
|
|
},
|
|
leftTab: {
|
|
marginRight: theme.spacing(0.5),
|
|
},
|
|
rightTab: {
|
|
marginLeft: theme.spacing(0.5),
|
|
},
|
|
}),
|
|
)
|
|
|
|
export function FileNavigation({ active }: Props): ReactElement {
|
|
const classes = useStyles()
|
|
const history = useHistory()
|
|
|
|
function onChange(event: React.ChangeEvent<Record<string, never>>, newValue: number) {
|
|
history.push(newValue === 1 ? ROUTES.DOWNLOAD : ROUTES.UPLOAD)
|
|
}
|
|
|
|
return (
|
|
<div className={classes.root}>
|
|
<Tabs value={active === 'UPLOAD' ? 0 : 1} onChange={onChange} variant="fullWidth">
|
|
<Tab className={classes.leftTab} key="UPLOAD" label="Upload" />
|
|
<Tab className={classes.rightTab} key="DOWNLOAD" label="Download" />
|
|
</Tabs>
|
|
</div>
|
|
)
|
|
}
|