Rev 1508 | Rev 1528 | Ir a la última revisión | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |
import React from 'react'import { useHistory } from 'react-router-dom'import { Avatar, Box, styled } from '@mui/material'export const WidgetWrapper = styled(Box)(({ theme }) => ({backgroundColor: theme.palette.background.default,boxShadow: theme.shadows[1], // 0px 0px 0px 1px rgba(0, 0, 0, 0.08);height: 'fit-content',width: '100%',boxSizing: 'border-box',overflow: 'hidden',position: 'relative',span: {fontSize: '0.9rem'},p: {color: 'var(--font-color)',fontSize: '14px',textAlign: 'justify',marginBottom: '0.5rem'},h2: {fontSize: '1rem'},[theme.breakpoints.up('sm')]: {borderRadius: theme.shape.borderRadius}}))WidgetWrapper.Body = styled(Box)({padding: '10px 1rem',display: 'flex',flexDirection: 'column'})WidgetWrapper.Actions = styled(Box)(({ theme }) => ({display: 'flex',justifyContent: 'space-around',borderTop: '1px solid rgb(211, 211, 211)',padding: '5px',gap: '0.5rem','> button, > a': {alignItems: 'center',borderRadius: 'var(--border-radius)',cursor: 'pointer',display: 'inline-flex',flexDirection: 'column',fontSize: '0.9rem',padding: '5px',position: 'relative','&:hover': {backgroundColor: 'whitesmoke'}},[theme.breakpoints.up('sm')]: {flexDirection: 'row',gap: '0.5rem',fontSize: '1rem'}}))const LayoutHeader = styled(Box)`display: flex;gap: 0.5rem;padding: 10px 1rem;align-items: center;justify-content: space-between;position: relative;`const HeaderInfo = styled(Box)`align-items: center;display: inline-flex;gap: 0.5rem;width: fit-content;`const HeaderContent = styled(Box)`display: flex;flex-direction: column;`const Header = ({image = '',title = '',url = '',timeElapsed = '',children,...rest}) => {const history = useHistory()const goToProfile = () => {if (!url) returnhistory.replace(url)}return (<LayoutHeader {...rest}><HeaderInfo>{image && (<Avatarsrc={image}alt={`${title} profile image`}sx={{ width: '50px', height: '50px' }}/>)}<HeaderContent><h2 onClick={goToProfile}>{title}</h2>{timeElapsed && <span>{timeElapsed}</span>}</HeaderContent></HeaderInfo>{children}</LayoutHeader>)}WidgetWrapper.Header = Headerexport default WidgetWrapper