Files
bigcapital/src/components/Forms/InputPrependButton.js
2021-09-21 17:13:53 +02:00

27 lines
691 B
JavaScript

import React, { useMemo } from 'react';
import classNames from 'classnames';
import { Button, Tooltip, Classes } from '@blueprintjs/core';
export default function InputPrependButton({
buttonProps = {},
tooltip = false,
tooltipProps = {},
}) {
const appendButton = useMemo(() => (
<Button
className={classNames('input-prepend__button', Classes.SMALL)}
{...buttonProps}
/>
), [buttonProps]);
const appendButtonWithTooltip = useMemo(
() => (<Tooltip {...tooltipProps}>{ appendButton }</Tooltip>),
[tooltipProps, appendButton],
);
return (
<div class="input-prepend">
{ tooltip ? appendButtonWithTooltip : appendButton }
</div>
);
}