- ({ label, link, value, children, classes, classLabel,
- classValue, lowercaseValue, onValueClick, linkToUuid,
- localCluster, remoteHostsConfig, sessions }: DetailsAttributeProps) => {
- let insertLink: React.ReactNode;
- if (linkToUuid) {
- const linkUrl = getNavUrl(linkToUuid || "", { localCluster, remoteHostsConfig, sessions });
- if (linkUrl[0] === '/') {
- insertLink = <Link to={linkUrl} className={classes.link}>{value}</Link>;
+ class extends React.Component<DetailsAttributeProps> {
+
+ onCopy = (message: string) => {
+ this.props.dispatch(snackbarActions.OPEN_SNACKBAR({
+ message,
+ hideDuration: 2000,
+ kind: SnackbarKind.SUCCESS
+ }));
+ }
+
+ render() {
+ const { label, link, value, children, classes, classLabel,
+ classValue, lowercaseValue, onValueClick, linkToUuid,
+ localCluster, remoteHostsConfig, sessions } = this.props;
+ let valueNode: React.ReactNode;
+
+ if (linkToUuid) {
+ const linkUrl = getNavUrl(linkToUuid || "", { localCluster, remoteHostsConfig, sessions });
+ if (linkUrl[0] === '/') {
+ valueNode = <Link to={linkUrl} className={classes.link}>{linkToUuid}</Link>;
+ } else {
+ valueNode = <a href={linkUrl} className={classes.link} target='_blank'>{linkToUuid}</a>;
+ }
+ } else if (link) {
+ valueNode = <a href={link} className={classes.link} target='_blank'>{value}</a>;