button.tsx 598 B

1234567891011121314151617181920212223242526
  1. import * as React from "react";
  2. import styles from "./button.module.css";
  3. export function IconButton(props: {
  4. onClick?: () => void;
  5. icon: JSX.Element;
  6. text?: string;
  7. bordered?: boolean;
  8. className?: string;
  9. }) {
  10. return (
  11. <div
  12. className={
  13. styles["icon-button"] +
  14. ` ${props.bordered && styles.border} ${props.className ?? ""}`
  15. }
  16. onClick={props.onClick}
  17. >
  18. <div className={styles["icon-button-icon"]}>{props.icon}</div>
  19. {props.text && (
  20. <div className={styles["icon-button-text"]}>{props.text}</div>
  21. )}
  22. </div>
  23. );
  24. }