UNPKG

@gravity-ui/uikit

Version:

Gravity UI base styling and components

41 lines (40 loc) 1.31 kB
'use client'; import { jsx as _jsx } from "react/jsx-runtime"; import { Xmark } from '@gravity-ui/icons'; import { Button } from "../../../Button/index.js"; import { Icon } from "../../../Icon/index.js"; import { block } from "../../../utils/cn.js"; import i18n from "./i18n/index.js"; import "./ClearButton.css"; const b = block('clear-button'); const ICON_SIZE = 16; export const mapTextInputSizeToButtonSize = (textInputSize) => { switch (textInputSize) { case 's': { return 'xs'; } case 'm': { return 's'; } case 'l': { return 'm'; } case 'xl': { return 'l'; } default: { throw new Error(`Unknown text input size "${textInputSize}"`); } } }; export const ClearButton = (props) => { const { size, className, onClick } = props; /** * Turn off event onBlur on input when use clear button */ const preventDefaultHandler = (event) => { event.preventDefault(); }; return (_jsx(Button, { size: size, className: b(null, className), onClick: onClick, onMouseDown: preventDefaultHandler, "aria-label": i18n('label_clear-button'), children: _jsx(Icon, { data: Xmark, size: ICON_SIZE }) })); }; //# sourceMappingURL=ClearButton.js.map