ghost-portal/packages/ui-app/src/Labelled.tsx
Jaco Greeff 078e2e431a
Support enumerable accounts (#102)
Covert to TypeScript
2018-06-25 18:02:47 +02:00

42 lines
936 B
TypeScript

// Copyright 2017-2018 @polkadot/ui-app authors & contributors
// This software may be modified and distributed under the terms
// of the ISC license. See the LICENSE file for details.
import { BareProps } from './types';
import React from 'react';
import Label from 'semantic-ui-react/dist/commonjs/elements/Label/Label';
import classes from './util/classes';
type Props = BareProps & {
isHidden?: boolean,
label?: any,
children: any, // node?
withLabel?: boolean,
};
const defaultLabel: any = ( // node?
<div>&nbsp;</div>
);
export default function Labelled ({ className, children, isHidden = false, label = defaultLabel, style, withLabel = true }: Props) {
if (isHidden) {
return null;
}
return (
<div
className={classes('ui--Labelled', className)}
style={style}
>
{
withLabel
? <Label>{label}</Label>
: null
}
{children}
</div>
);
}