import React from 'react' import { useRouter } from 'next/router' import { useTranslation } from 'next-i18next' import classNames from 'classnames' import PlusIcon from '~public/icons/Add.svg' import './index.scss' // Props interface Props extends React.ComponentPropsWithoutRef<'div'> { skill?: JobSkill editable: boolean hasJob: boolean } const JobSkillItem = React.forwardRef( function useJobSkillItem({ ...props }, forwardedRef) { const router = useRouter() const { t } = useTranslation('common') const locale = router.locale && ['en', 'ja'].includes(router.locale) ? router.locale : 'en' const classes = classNames({ JobSkill: true, editable: props.editable, }) const imageClasses = classNames({ placeholder: !props.skill, editable: props.editable && props.hasJob, }) const skillImage = () => { let jsx: React.ReactNode if (props.skill) { jsx = ( {props.skill.name[locale]} ) } else { jsx = (
{props.editable && props.hasJob ? : ''}
) } return jsx } const label = () => { let jsx: React.ReactNode if (props.skill) { jsx =

{props.skill.name[locale]}

} else if (props.editable && props.hasJob) { jsx =

{t('job_skills.state.selectable')}

} else { jsx =

{t('job_skills.state.no_skill')}

} return jsx } return (
{skillImage()} {label()}
) } ) export default JobSkillItem