summaryrefslogtreecommitdiffstats
path: root/openecomp-ui/src/nfvo-components/table/SelectActionTable.jsx
blob: 6c04ad74fd829ac3f3e1b291999cc0cc13ce1754 (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
import React from 'react';
import i18n from 'nfvo-utils/i18n/i18n.js';
import SVGIcon from 'sdc-ui/lib/react/SVGIcon.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 && <div data-test-id='select-action-table-add' onClick={onAdd}>{onAddItem}</div>}
					<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(() => <SVGIcon name='trashO' className='dummy-icon' />)}
					</div>
					<div className='select-action-table-body'>
						{children}
					</div>
				</div>
			</div>
		);
	}
}