Sha256: 7ece30def5cb28db55cf43e5ee3fd9820eb2006ba10dc49cc0f777993918a9cd
Contents?: true
Size: 1.62 KB
Versions: 1
Compression:
Stored size: 1.62 KB
Contents
import React from 'react'; import PropTypes from 'prop-types'; import { translate as __ } from 'foremanReact/common/I18n'; import IndexTable from '../../../components/IndexTable'; import withLoading from '../../../components/withLoading'; import withDeleteModal from '../../../components/withDeleteModal'; import { linkCell } from '../../../helpers/tableHelper'; import { ovalPoliciesPath, modelPath } from '../../../helpers/pathsHelper'; const OvalPoliciesTable = props => { const columns = [{ title: __('Name') }, { title: __('OVAL Content') }]; const rows = props.policies.map(policy => ({ cells: [ { title: linkCell(modelPath(ovalPoliciesPath, policy), policy.name) }, { title: policy.ovalContent.name }, ], policy, })); const actionResolver = (rowData, rest) => { const actions = []; if (rowData.policy.meta.canDestroy) { actions.push({ title: __('Delete OVAL Policy'), onClick: (event, rowId, rData, extra) => { props.toggleModal(rData.policy); }, }); } return actions; }; return ( <IndexTable columns={columns} rows={rows} actionResolver={actionResolver} pagination={props.pagination} totalCount={props.totalCount} history={props.history} ariaTableLabel={__('OVAL Policies Table')} /> ); }; OvalPoliciesTable.propTypes = { policies: PropTypes.array.isRequired, pagination: PropTypes.object.isRequired, totalCount: PropTypes.number.isRequired, history: PropTypes.object.isRequired, toggleModal: PropTypes.func.isRequired, }; export default withLoading(withDeleteModal(OvalPoliciesTable));
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
foreman_openscap-5.1.0 | webpack/routes/OvalPolicies/OvalPoliciesIndex/OvalPoliciesTable.js |