@ozen-ui/kit
Version:
React component library
30 lines (29 loc) • 2.56 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.Chip = exports.chipColorVariant = exports.chipSizeVariant = exports.cnChip = void 0;
var tslib_1 = require("tslib");
require("./Chip.css");
var react_1 = tslib_1.__importStar(require("react"));
var useDeprecated_1 = require("../../hooks/useDeprecated");
var useThemeProps_1 = require("../../hooks/useThemeProps");
var classname_1 = require("../../utils/classname");
var getIconSizeToFormElement_1 = require("../../utils/getIconSizeToFormElement");
var constants_1 = require("./constants");
exports.cnChip = (0, classname_1.cn)('Chip');
exports.chipSizeVariant = ['xs', 's', 'm', 'l'];
exports.chipColorVariant = ['primary', 'secondary'];
/**
* @deprecated Компонент устарел. Для замены используйте компонент ChipNext
*/
exports.Chip = (0, react_1.forwardRef)(function (inProps, ref) {
var _a = (0, useThemeProps_1.useThemeProps)({ name: 'Chip', props: inProps }), _b = _a.size, size = _b === void 0 ? constants_1.CHIP_DEFAULT_SIZE : _b, _c = _a.color, color = _c === void 0 ? constants_1.CHIP_DEFAULT_VARIANT : _c, _d = _a.disabled, disabled = _d === void 0 ? constants_1.CHIP_DEFAULT_DISABLED : _d, IconLeft = _a.iconLeft, IconRight = _a.iconRight, labelProps = _a.labelProps, inputRef = _a.inputRef, className = _a.className, children = _a.children, dataTestId = _a["data-testid"], other = tslib_1.__rest(_a, ["size", "color", "disabled", "iconLeft", "iconRight", "labelProps", "inputRef", "className", "children", 'data-testid']);
var iconSize = (0, react_1.useMemo)(function () { return (0, getIconSizeToFormElement_1.getIconSizeToFormElement)(size); }, [size]);
(0, useDeprecated_1.useDeprecatedComponent)('Chip');
return (react_1.default.createElement("label", tslib_1.__assign({ ref: ref, className: (0, exports.cnChip)('', { size: size, disabled: disabled, color: color }, [className]), "data-testid": dataTestId }, labelProps),
react_1.default.createElement("input", tslib_1.__assign({ ref: inputRef, className: (0, exports.cnChip)('Input'), disabled: disabled, type: "checkbox" }, other)),
react_1.default.createElement("span", { className: (0, exports.cnChip)('Content') },
IconLeft && react_1.default.createElement(IconLeft, { size: iconSize, className: (0, exports.cnChip)('Icon') }),
children,
IconRight && react_1.default.createElement(IconRight, { size: iconSize, className: (0, exports.cnChip)('Icon') }))));
});
exports.Chip.displayName = 'Chip';