File "cell.js"
Full path: /home/webcknlt/admissiontell.com/wp-content/plugins/generateblocks/src/components/alignment-matrix/components/cell.js
File
size: 1.04 B
MIME-type: text/x-java
Charset: utf-8
Download Open Edit Advanced Editor &nnbsp; Back
import classNames from 'classnames';
import { Tooltip } from '@wordpress/components';
function CellContent( { cell, isActive, isCompact, onClick } ) {
return (
<div
tabIndex={ ! isCompact ? '0' : null }
className={ classNames( 'gb-matrix-cell', { active: isActive } ) }
onClick={ !! onClick ? () => onClick( cell ) : undefined }
onKeyDown={ ( e ) => {
if ( onClick && ( 'Enter' === e.key || ' ' === e.key ) ) {
onClick( cell );
}
} }
role={ ! isCompact ? 'button' : 'presentation' }
>
<span className="gb-matrix-cell-state" />
</div>
);
}
export default function Cell( { cell, label, isActive, isCompact, onClick } ) {
return (
<>
{ isCompact &&
<CellContent
cell={ cell }
isActive={ isActive }
isCompact={ isCompact }
onClick={ onClick }
/>
}
{ ! isCompact &&
<Tooltip text={ label }>
<div>
<CellContent
cell={ cell }
isActive={ isActive }
isCompact={ isCompact }
onClick={ onClick }
/>
</div>
</Tooltip>
}
</>
);
}