import React from "react"; import { useCreateButton } from "@refinedev/core"; import { RefineButtonClassNames, RefineButtonTestIds, } from "@refinedev/ui-types"; import { ActionIcon, Anchor, Button } from "@mantine/core"; import { IconSquarePlus } from "@tabler/icons-react"; import { mapButtonVariantToActionIconVariant } from "@definitions/button"; import type { CreateButtonProps } from "../types"; export const CreateButton: React.FC = ({ resource: resourceNameFromProps, hideText = false, accessControl, svgIconProps, meta, children, onClick, ...rest }) => { const { to, label, title, disabled, hidden, LinkComponent } = useCreateButton( { resource: resourceNameFromProps, accessControl, meta, }, ); const isDisabled = disabled || rest.disabled; const isHidden = hidden || rest.hidden; if (isHidden) return null; const { variant, styles, ...commonProps } = rest; return ( ) => { if (isDisabled) { e.preventDefault(); return; } if (onClick) { e.preventDefault(); onClick(e); } }} > {hideText ? ( ) : ( )} ); };