import React from 'react'; import PropTypes from 'prop-types'; import { withTranslation } from 'react-i18next'; import { createSubscribedElement } from '../../UnstatedUtils'; import AppContainer from '../../../services/AppContainer'; import AdminHomeContainer from '../../../services/AdminHomeContainer'; class InstalledPluginTable extends React.Component { render() { const { t, adminHomeContainer } = this.props; return ( { adminHomeContainer.state.installedPlugins.map((plugin) => { return ( ); }) }
{ t('admin_top.Package name') } { t('admin_top.Specified version') } { t('admin_top.Installed version') }
{ plugin.name } { plugin.requiredVersion } { plugin.installedVersion }
); } } InstalledPluginTable.propTypes = { t: PropTypes.func.isRequired, // i18next appContainer: PropTypes.instanceOf(AppContainer).isRequired, adminHomeContainer: PropTypes.instanceOf(AdminHomeContainer).isRequired, }; /** * Wrapper component for using unstated */ const InstalledPluginTableWrapper = (props) => { return createSubscribedElement(InstalledPluginTable, props, [AppContainer, AdminHomeContainer]); }; export default withTranslation()(InstalledPluginTableWrapper);