47 lines
1.0 KiB
JavaScript
Raw Normal View History

/**
*
* Controller
*
*/
import React from 'react';
import PropTypes from 'prop-types';
2017-11-15 17:48:30 +01:00
import { get, map } from 'lodash';
2017-11-15 17:48:30 +01:00
import InputCheckbox from 'components/InputCheckbox';
import styles from './styles.scss';
function Controller({ actions, name, inputNamePath }) {
return (
<div className={styles.controller}>
<div className={styles.controllerHeader}>
<span>{name}</span>
</div>
<div className="row">
{map(Object.keys(actions).sort(), (actionKey) => (
2017-11-15 17:48:30 +01:00
<InputCheckbox
key={actionKey}
name={`${inputNamePath}.controllers.${name}.actions.${actionKey}.enabled`}
label={actionKey}
value={get(actions[actionKey], 'enabled')}
/>
))}
</div>
</div>
);
}
Controller.defaultProps = {
actions: {},
inputNamePath: 'permissions.application',
name: '',
};
Controller.propTypes = {
actions: PropTypes.object,
inputNamePath: PropTypes.string,
name: PropTypes.string,
};
export default Controller;