hensei-web/components/common/Token/index.tsx
2023-06-23 19:15:28 -07:00

37 lines
708 B
TypeScript

import classNames from 'classnames'
import React from 'react'
import styles from './index.module.scss'
interface Props
extends React.DetailedHTMLProps<
React.HTMLAttributes<HTMLDivElement>,
HTMLDivElement
> {
active?: boolean
}
const Token = React.forwardRef<HTMLDivElement, Props>(function token(
{ children, className, ...props },
forwardedRef
) {
const classes = classNames(
{
[styles.token]: true,
[styles.on]: props.active,
[styles.off]: !props.active,
},
className && styles[className]
)
return (
<div className={classes} ref={forwardedRef}>
{children}
</div>
)
})
Token.defaultProps = {
active: true,
}
export default Token