@ozen-ui/kit
Version:
React component library
37 lines (36 loc) • 1.79 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.FieldHint = exports.cnFieldHint = exports.FIELD_HINT_DEFAULT_TAG = void 0;
var tslib_1 = require("tslib");
require("./FieldHint.css");
var react_1 = tslib_1.__importStar(require("react"));
var classname_1 = require("../../utils/classname");
var FieldControl_1 = require("../FieldControl");
exports.FIELD_HINT_DEFAULT_TAG = 'div';
exports.cnFieldHint = (0, classname_1.cn)('FieldHint');
exports.FieldHint = (0, react_1.forwardRef)(function (_a, ref) {
var children = _a.children, errorProp = _a.error, disabledProp = _a.disabled, sizeProp = _a.size, className = _a.className, other = tslib_1.__rest(_a, ["children", "error", "disabled", "size", "className"]);
var context = (0, FieldControl_1.useFieldControl)();
var _b = tslib_1.__read(context, 1), fieldControl = _b[0];
var Tag = exports.FIELD_HINT_DEFAULT_TAG;
var size = sizeProp;
var error = errorProp;
var disabled = disabledProp;
var childrenCount = react_1.Children.toArray(children).filter(function (element) { return element !== undefined; }).length;
if (!childrenCount) {
return null;
}
if (fieldControl) {
if (size === undefined && fieldControl.size) {
size = fieldControl.size;
}
if (error === undefined && fieldControl.error) {
error = fieldControl.error;
}
if (disabled === undefined && fieldControl.disabled) {
disabled = fieldControl.disabled;
}
}
return (react_1.default.createElement(Tag, tslib_1.__assign({ className: (0, exports.cnFieldHint)({ error: error, disabled: disabled, size: size }, [className]) }, other, { ref: ref }), children));
});
exports.FieldHint.displayName = 'FieldHint';
;