@elacity-js/uikit
Version:
React / Material UI Design kit for Elacity project
20 lines (17 loc) • 1.04 kB
JavaScript
import { jsxs, jsx } from 'react/jsx-runtime';
import React__default from 'react';
import Box from '@mui/material/Box';
import IconButton from '@mui/material/IconButton';
import FavoriteBorderOutlinedIcon from '@mui/icons-material/FavoriteBorderOutlined';
import FavoriteIcon from '@mui/icons-material/Favorite';
var LikeButton = ({ likeCount, isLiked, handlers, sx }) => {
const handleClick = React__default.useCallback((e) => {
var _a;
e.preventDefault();
const index = Number(isLiked || false);
(_a = handlers[index]) === null || _a === void 0 ? void 0 : _a.call(null);
}, [isLiked]);
return (jsxs(Box, Object.assign({ sx: Object.assign({ display: 'flex', alignItems: 'center' }, (sx || {})) }, { children: [jsx(IconButton, Object.assign({ "aria-label": "like", onClick: handleClick }, { children: isLiked ? jsx(FavoriteIcon, { color: "error" }) : jsx(FavoriteBorderOutlinedIcon, {}) })), likeCount || 0] })));
};
export { LikeButton as default };
//# sourceMappingURL=LikeButton.js.map