import { ActionIcon, type FloatingPosition, Group, Tooltip } from '@mantine/core'; import type { ReactNode } from 'react'; import { identifierString } from '../functions/Conversion'; export type ActionButtonProps = { icon?: ReactNode; text?: string; color?: string; tooltip?: string; variant?: string; size?: number | string; radius?: number | string; disabled?: boolean; onClick: (event?: any) => void; hidden?: boolean; tooltipAlignment?: FloatingPosition; }; /** * Construct a simple action button with consistent styling */ export function ActionButton(props: ActionButtonProps) { const hidden = props.hidden ?? false; return ( !hidden && ( { props.onClick(event); }} variant={props.variant ?? 'transparent'} > {props.icon} ) ); }