UNPKG

@re-flex/ui

Version:
13 lines (12 loc) 646 B
import { css, useTheme, useThemingCss, } from "@re-flex/styles"; import clsx from "clsx"; import React from "react"; import Button from "../Button"; const IconButton = ({ children, className, size = "md", icon, sx, ...rest }) => { const theme = useTheme(); const sxClass = useThemingCss(); return (React.createElement(Button, { role: "button", "aria-roledescription": "Icon Button", className: clsx(`${theme.prefix}-btn ${theme.prefix}-icon-btn`, className, !!sx && sxClass(sx), css({ aspectRatio: "1/1", })), actionRole: "icon", size: size, ...rest, startIcon: children || icon })); }; export default IconButton;