aboutsummaryrefslogtreecommitdiffstats
path: root/openecomp-ui/src/nfvo-components/table/SelectActionTable.jsx
blob: 3f8dbba53add92236b8b804fe7063868f602788a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import React from 'react';
import i18n from 'nfvo-utils/i18n/i18n.js';
import SVGIcon from 'sdc-ui/lib/react/SVGIcon.js';
import Button from 'sdc-ui/lib/react/Button.js';
import uuid from 'uuid-js';

export default class SelectActionTable extends React.Component {

	render() {
		let {columns, onAdd, isReadOnlyMode, children, onAddItem, numOfIcons} = this.props;
		return (
			<div className={`select-action-table-view ${isReadOnlyMode ? 'disabled' : ''}`}>
				<div className='select-action-table-controllers'>
					{onAdd && onAddItem &&
					<Button btnType='link' disabled={isReadOnlyMode === true} color='primary' iconName='plus' data-test-id='select-action-table-add' onClick={onAdd}>{onAddItem}</Button>}
					<SVGIcon name='trashO' className='dummy-icon' />
				</div>
				<div className='select-action-table'>
					<div className='select-action-table-headers'>
						{columns.map(column => <div key={uuid.create()} className='select-action-table-header'>{i18n(column)}</div>)}
						{Array(numOfIcons).fill().map((e, i) => <SVGIcon name='trash-o' key={i} className='dummy-icon' />)}
					</div>
					<div className='select-action-table-body'>
						{children}
					</div>
				</div>
			</div>
		);
	}
}