@talend/react-components
Version:
Set of react components.
52 lines • 1.46 kB
JavaScript
import PropTypes from 'prop-types';
import Skeleton from '../../Skeleton';
import { getTheme } from '../../theme';
import TooltipTrigger from '../../TooltipTrigger';
import titleSubHeaderCssModule from './TitleSubHeader.module.scss';
import { jsx as _jsx } from "react/jsx-runtime";
const theme = getTheme(titleSubHeaderCssModule);
function DefaultSubTitle({
subTitle,
subTitleProps
}) {
return /*#__PURE__*/_jsx(TooltipTrigger, {
label: subTitle,
tooltipPlacement: "bottom",
children: /*#__PURE__*/_jsx("small", {
className: theme('tc-subheader-details-text-subtitle'),
...subTitleProps,
children: subTitle
})
});
}
DefaultSubTitle.propTypes = {
subTitle: PropTypes.oneOfType([PropTypes.element, PropTypes.string]),
subTitleProps: PropTypes.object
};
export function SubTitle({
subTitleLoading,
subTitle,
subTitleAs: SubTitleAs = DefaultSubTitle,
...rest
}) {
if (subTitleLoading) {
return /*#__PURE__*/_jsx(Skeleton, {
className: theme('tc-subheader-details-loading-subtitle'),
type: Skeleton.TYPES.text,
size: Skeleton.SIZES.large
});
}
if (subTitle) {
return /*#__PURE__*/_jsx(SubTitleAs, {
subTitle: subTitle,
...rest
});
}
return null;
}
SubTitle.propTypes = {
subTitle: PropTypes.node,
subTitleLoading: PropTypes.bool,
subTitleAs: PropTypes.oneOfType([PropTypes.string, PropTypes.func])
};
//# sourceMappingURL=SubTitle.component.js.map