//@flow import React from "react"; import { compose } from "redux"; import { translate } from "react-i18next"; import injectSheet from "react-jss"; import type { Plugin } from "@scm-manager/ui-types"; import { Button, ButtonGroup, Checkbox, Modal, SubmitButton } from "@scm-manager/ui-components"; import classNames from "classnames"; type Props = { plugin: Plugin, onSubmit: () => void, onClose: () => void, // context props classes: any, t: string => string }; const styles = { titleVersion: { marginLeft: "0.75rem" }, userLabelAlignment: { textAlign: "left", marginRight: 0, minWidth: "5.5em" }, userFieldFlex: { flexGrow: 4 }, listSpacing: { marginTop: "0 !important" } }; class PluginModal extends React.Component { renderDependencies() { const { plugin, classes, t } = this.props; let dependencies = null; if (plugin.dependencies && plugin.dependencies.length > 0) { dependencies = ( <> {t("plugins.modal.dependencyNotification")}
{t("plugins.modal.dependencies")}:
    {plugin.dependencies.map((dependency, index) => { return
  • {dependency}
  • ; })}
); } return dependencies; } render() { const { plugin, onSubmit, onClose, classes, t } = this.props; const body = ( <>

{plugin.description && plugin.description}

{t("plugins.modal.author")}:
{plugin.author}
{t("plugins.modal.version")}:
{plugin.version}
{this.renderDependencies()}
); const footer = (