Skip to content
Snippets Groups Projects
Commit a075d863 authored by Guilhem CARRON's avatar Guilhem CARRON
Browse files

Move link to ecogesture card

parent 2a3b9838
Branches
Tags
3 merge requests!549chore(release): 1.7.1,!5211.7.0,!504feat/649-new-ecogestures-categorization
...@@ -6,22 +6,17 @@ import { importIconbyId } from 'utils/utils' ...@@ -6,22 +6,17 @@ import { importIconbyId } from 'utils/utils'
import './ecogestureCard.scss' import './ecogestureCard.scss'
import EfficientyRating from './EfficientyRating' import EfficientyRating from './EfficientyRating'
import defaultIcon from 'assets/icons/visu/ecogesture/default.svg' import defaultIcon from 'assets/icons/visu/ecogesture/default.svg'
import { Link as RouterLink } from 'react-router-dom'
import { Link } from '@material-ui/core/'
interface EcogestureCardProps { interface EcogestureCardProps {
ecogesture: Ecogesture ecogesture: Ecogesture
handleClick?: (ecogesture: Ecogesture) => void
challengeEcogesture?: number
} }
const EcogestureCard: React.FC<EcogestureCardProps> = ({ const EcogestureCard: React.FC<EcogestureCardProps> = ({
ecogesture, ecogesture,
handleClick,
}: EcogestureCardProps) => { }: EcogestureCardProps) => {
const handleCardclick = () => {
handleClick && ecogesture && handleClick(ecogesture)
}
const [ecogestureIcon, setEcogestureIcon] = useState<string>('') const [ecogestureIcon, setEcogestureIcon] = useState<string>('')
useEffect(() => { useEffect(() => {
async function handleEcogestureIcon() { async function handleEcogestureIcon() {
const icon = await importIconbyId(ecogesture.id, 'ecogesture') const icon = await importIconbyId(ecogesture.id, 'ecogesture')
...@@ -37,8 +32,12 @@ const EcogestureCard: React.FC<EcogestureCardProps> = ({ ...@@ -37,8 +32,12 @@ const EcogestureCard: React.FC<EcogestureCardProps> = ({
}, [ecogesture]) }, [ecogesture])
return ( return (
<> <Link
<StyledEcogestureCard onClick={handleCardclick}> to={`/ecogestures/${ecogesture.id}`}
component={RouterLink}
className="ecogesture-list-item"
>
<StyledEcogestureCard>
<div className="ec"> <div className="ec">
<div className={`ec-content `}> <div className={`ec-content `}>
<div className="ec-content-icon"> <div className="ec-content-icon">
...@@ -53,7 +52,7 @@ const EcogestureCard: React.FC<EcogestureCardProps> = ({ ...@@ -53,7 +52,7 @@ const EcogestureCard: React.FC<EcogestureCardProps> = ({
</div> </div>
</div> </div>
</StyledEcogestureCard> </StyledEcogestureCard>
</> </Link>
) )
} }
......
...@@ -4,7 +4,7 @@ import { useClient } from 'cozy-client' ...@@ -4,7 +4,7 @@ import { useClient } from 'cozy-client'
import { Ecogesture } from 'models' import { Ecogesture } from 'models'
import EcogestureService from 'services/ecogesture.service' import EcogestureService from 'services/ecogesture.service'
import { Menu, MenuItem, ListItemIcon, Link } from '@material-ui/core/' import { Menu, MenuItem, ListItemIcon } from '@material-ui/core/'
import SortIcon from 'assets/icons/ico/sort.svg' import SortIcon from 'assets/icons/ico/sort.svg'
import CheckIcon from 'assets/icons/ico/check.svg' import CheckIcon from 'assets/icons/ico/check.svg'
...@@ -19,7 +19,6 @@ import { ProfileType } from 'models/profileType.model' ...@@ -19,7 +19,6 @@ import { ProfileType } from 'models/profileType.model'
import { Usage } from 'enum/ecogesture.enum' import { Usage } from 'enum/ecogesture.enum'
import EcogestureInfoModal from './EcogestureInfoModal' import EcogestureInfoModal from './EcogestureInfoModal'
import { getSeason } from 'utils/utils' import { getSeason } from 'utils/utils'
import { Link as RouterLink } from 'react-router-dom'
import { FluidType } from 'enum/fluid.enum' import { FluidType } from 'enum/fluid.enum'
interface EcogestureListProps { interface EcogestureListProps {
...@@ -45,10 +44,6 @@ const EcogestureList: React.FC<EcogestureListProps> = ({ ...@@ -45,10 +44,6 @@ const EcogestureList: React.FC<EcogestureListProps> = ({
const [openDropDown, setopenDropDown] = useState<boolean>(false) const [openDropDown, setopenDropDown] = useState<boolean>(false)
const [openInfoModal, setOpenInfoModal] = useState<boolean>(false) const [openInfoModal, setOpenInfoModal] = useState<boolean>(false)
const handleClick = (ecogesture: Ecogesture) => {
// setSelectedEcogesture(ecogesture)
// setOpenEcogestureModal(true)
}
const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null) const [anchorEl, setAnchorEl] = useState<null | HTMLElement>(null)
const handleCloseClick = useCallback(() => { const handleCloseClick = useCallback(() => {
...@@ -76,7 +71,7 @@ const EcogestureList: React.FC<EcogestureListProps> = ({ ...@@ -76,7 +71,7 @@ const EcogestureList: React.FC<EcogestureListProps> = ({
.filter(ecogesture => Usage[ecogesture.usage] === activeFilter) .filter(ecogesture => Usage[ecogesture.usage] === activeFilter)
.map((ecogesture, index) => ( .map((ecogesture, index) => (
<div key={index} className="ecogesture-list-item"> <div key={index} className="ecogesture-list-item">
<EcogestureCard ecogesture={ecogesture} handleClick={handleClick} /> <EcogestureCard ecogesture={ecogesture} />
</div> </div>
)) ))
if (filtered.length > 0) { if (filtered.length > 0) {
...@@ -212,17 +207,7 @@ const EcogestureList: React.FC<EcogestureListProps> = ({ ...@@ -212,17 +207,7 @@ const EcogestureList: React.FC<EcogestureListProps> = ({
</div> </div>
) : ecogestures && activeFilter === Usage[Usage.ALL] ? ( ) : ecogestures && activeFilter === Usage[Usage.ALL] ? (
ecogestures.map((ecogesture, index) => ( ecogestures.map((ecogesture, index) => (
<Link <EcogestureCard ecogesture={ecogesture} key={index} />
to={`/ecogestures/${ecogesture.id}`}
key={index}
component={RouterLink}
className="ecogesture-list-item"
>
<EcogestureCard
ecogesture={ecogesture}
handleClick={handleClick}
/>
</Link>
)) ))
) : ecogestures && activeFilter !== Usage[Usage.ALL] ? ( ) : ecogestures && activeFilter !== Usage[Usage.ALL] ? (
filterEcogesture(ecogestures) filterEcogesture(ecogestures)
......
...@@ -9,9 +9,7 @@ import { importIconbyId } from 'utils/utils' ...@@ -9,9 +9,7 @@ import { importIconbyId } from 'utils/utils'
import EcogestureService from 'services/ecogesture.service' import EcogestureService from 'services/ecogesture.service'
import IconButton from '@material-ui/core/IconButton' import IconButton from '@material-ui/core/IconButton'
import Icon from 'cozy-ui/transpiled/react/Icon' import Icon from 'cozy-ui/transpiled/react/Icon'
import { Ecogesture } from 'models' import { Ecogesture } from 'models'
import Button from '@material-ui/core/Button'
import StyledIcon from 'components/CommonKit/Icon/StyledIcon' import StyledIcon from 'components/CommonKit/Icon/StyledIcon'
import EfficientyRating from './EfficientyRating' import EfficientyRating from './EfficientyRating'
import defaultIcon from 'assets/icons/visu/ecogesture/default.svg' import defaultIcon from 'assets/icons/visu/ecogesture/default.svg'
...@@ -57,6 +55,7 @@ const SingleEcogesture: React.FC<SingleEcogestureProps> = ({ ...@@ -57,6 +55,7 @@ const SingleEcogesture: React.FC<SingleEcogestureProps> = ({
const toggleDoing = useCallback(() => { const toggleDoing = useCallback(() => {
setIsDoing(prev => !prev) setIsDoing(prev => !prev)
}, []) }, [])
useEffect(() => { useEffect(() => {
async function getSingleEcogesture() { async function getSingleEcogesture() {
const ecogestureService = new EcogestureService(client) const ecogestureService = new EcogestureService(client)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment