import React from 'react'; import PropTypes from 'prop-types'; import { Tooltip, TooltipButton, TooltipDivider } from 'joyent-ui-toolkit'; const ServicesQuickActions = ({ show, position, service, url, onBlur, onRestartClick, onStopClick, onStartClick, onScaleClick, onDeleteClick }) => { if (!show) { return null; } const p = Object.keys(position).reduce((p, key) => { if (typeof position[key] === 'number') { p[key] = `${position[key]}px`; } else { p[key] = position[key]; } return p; }, {}); const handleRestartClick = evt => { onRestartClick(evt, service); }; const handleStartClick = evt => { onStartClick(evt, service); }; const handleStopClick = evt => { onStopClick(evt, service); }; const handleScaleClick = evt => { onScaleClick(evt, service); }; const handleDeleteClick = evt => { onDeleteClick(evt, service); }; const status = service.instances.reduce((status, instance) => { return status ? instance.status === status ? status : 'MIXED' : instance.status; }, null); const startService = status === 'RUNNING' ? null : Start; const stopService = status === 'STOPPED' ? null : Stop; return ( Scale Restart {startService} {stopService} Delete ); }; ServicesQuickActions.propTypes = { service: PropTypes.object.isRequired, position: PropTypes.object, show: PropTypes.bool, onBlur: PropTypes.func, onRestartClick: PropTypes.func, onStopClick: PropTypes.func, onStartClick: PropTypes.func, onScaleClick: PropTypes.func, onDeleteClick: PropTypes.func }; export default ServicesQuickActions;