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( ({ ...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