mango-v4-ui/components/account/HealthHeart.tsx

72 lines
1.6 KiB
TypeScript
Raw Normal View History

2022-09-11 17:22:37 -07:00
const HealthHeart = ({
health,
size,
}: {
health: number | undefined
size: number
}) => {
2022-07-14 20:38:02 -07:00
const styles = {
height: `${size}px`,
width: `${size}px`,
}
return (
<svg
2022-09-22 21:00:42 -07:00
id="account-step-eleven"
2022-07-14 20:38:02 -07:00
xmlns="http://www.w3.org/2000/svg"
className={
2022-09-11 17:22:37 -07:00
health
? health > 15 && health < 50
2022-11-30 19:32:32 -08:00
? 'text-th-warning'
2022-09-11 17:22:37 -07:00
: health >= 50
2022-11-30 19:46:37 -08:00
? 'text-th-success'
: 'text-th-error'
2022-09-11 17:22:37 -07:00
: 'text-th-fgd-4'
2022-07-14 20:38:02 -07:00
}
style={styles}
viewBox="0 0 20 20"
fill="currentColor"
>
<g transform-origin="center">
<path
fillRule="evenodd"
d="M3.172 5.172a4 4 0 015.656 0L10 6.343l1.172-1.171a4 4 0 115.656 5.656L10 17.657l-6.828-6.829a4 4 0 010-5.656z"
clipRule="evenodd"
/>
<animateTransform
attributeName="transform"
type="scale"
keyTimes="0;0.5;1"
values="1;1.1;1"
2022-08-02 19:15:17 -07:00
dur={
2022-09-11 17:22:37 -07:00
health
? health > 15 && health < 50
? '1s'
: health >= 50
? '2s'
: '0.33s'
: '0s'
2022-08-02 19:15:17 -07:00
}
2022-07-14 20:38:02 -07:00
repeatCount="indefinite"
/>
<animate
attributeName="opacity"
values="0.8;1;0.8"
2022-08-02 19:15:17 -07:00
dur={
2022-09-11 17:22:37 -07:00
health
? health > 15 && health < 50
? '1s'
: health >= 50
? '2s'
: '0.33s'
: '0s'
2022-08-02 19:15:17 -07:00
}
2022-07-14 20:38:02 -07:00
repeatCount="indefinite"
/>
</g>
</svg>
)
}
export default HealthHeart