hensei-web/components/uncap/TranscendenceFragment/index.tsx
Justin Edmund bed7d0d408
Update transcendence components to work with CSS modules (#350)
* Update transcendence components to use CSS modules

* Fix summon transcendence

Summon transcendence was doing something wonky. This adapts the updateUncap endpoint method to make it a little bit clearer whats going on.
2023-07-06 15:56:23 -07:00

49 lines
1,001 B
TypeScript

import React from 'react'
import classNames from 'classnames'
import styles from './index.module.scss'
interface Props {
stage: number
interactive: boolean
visible: boolean
onClick?: (index: number) => void
onHover?: (index: number) => void
}
const TranscendenceFragment = ({
interactive,
stage,
visible,
onClick,
onHover,
}: Props) => {
const classes = classNames({
[styles.fragment]: true,
[styles.visible]: visible,
[styles.stage1]: stage === 1,
[styles.stage2]: stage === 2,
[styles.stage3]: stage === 3,
[styles.stage4]: stage === 4,
[styles.stage5]: stage === 5,
})
function handleClick() {
if (interactive && onClick) onClick(stage)
}
function handleHover() {
if (interactive && onHover) onHover(stage)
}
return (
<i className={classes} onClick={handleClick} onMouseOver={handleHover} />
)
}
TranscendenceFragment.defaultProps = {
interactive: false,
visible: false,
}
export default TranscendenceFragment