@zohodesk/dot
Version:
In this Library, we Provide Some Basic Components to Build Your Application
53 lines (50 loc) • 1.34 kB
JavaScript
import React from 'react';
import { defaultProps } from "./props/defaultProps";
import { propTypes } from "./props/propTypes";
import Link from "../../../Link/Link";
import style from "./TableText.module.css";
export default class Text extends React.Component {
render() {
let {
text,
url,
onClick,
type,
palette,
className,
size,
dataId,
title = null,
target
} = this.props;
title = title || text;
let textComponent;
let classNameCheck = `${type ? style[type] : ''} ${style[`${palette}Color`]} ${style[size]} ${className} ${onClick ? style.isClickable : ''}`;
if (url) {
textComponent = /*#__PURE__*/React.createElement(Link, {
title: title,
dataId: dataId,
href: url,
target: target,
className: classNameCheck,
onClick: onClick
}, text);
} else {
textComponent = /*#__PURE__*/React.createElement("div", {
"data-title": title,
"data-id": dataId,
"data-test-id": dataId,
className: classNameCheck,
onClick: onClick
}, text);
}
return textComponent;
}
}
Text.defaultProps = defaultProps;
Text.propTypes = propTypes; // if (__DOCS__) {
// Text.docs = {
// componentGroup: 'Text',
// folderName: 'Setup'
// };
// }