@kadconsulting/dry
Version:
KAD Reusable Component Library
13 lines • 1.13 kB
JavaScript
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
import './Label.scss';
import classnames from 'classnames';
import { forwardRef, useMemo } from 'react';
import { TextSm } from '../../../Typography/TextSm';
const Label = forwardRef(({ className, children, labelColor, required, ...props }, ref) => {
const LabelChildren = useMemo(() =>
/** Use the default label if the user has passed a simple string */
typeof children === 'string' ? (_jsxs(TextSm, { weight: 'medium', verticalRhythm: false, className: 'dry-textInput__label__default-text', children: [children, required && (_jsx("span", { className: 'dry-textInput__label__required-asterisk', children: "*" }))] })) : (_jsxs(_Fragment, { children: [children, required && (_jsx("span", { className: 'dry-textInput__label__required-asterisk', children: "*" }))] })), [children, required]);
return (_jsx("label", { ref: ref, className: classnames('dry-textInput__label', className), ...props, style: labelColor ? { color: labelColor } : {}, children: LabelChildren }));
});
export default Label;
//# sourceMappingURL=Label.js.map