diff --git a/scm-ui/src/repos/components/DeleteNavAction.js b/scm-ui/src/repos/components/DeleteRepo.js similarity index 88% rename from scm-ui/src/repos/components/DeleteNavAction.js rename to scm-ui/src/repos/components/DeleteRepo.js index a81cb17f66..512ec9a2f2 100644 --- a/scm-ui/src/repos/components/DeleteNavAction.js +++ b/scm-ui/src/repos/components/DeleteRepo.js @@ -7,19 +7,18 @@ import type { Repository } from "@scm-manager/ui-types"; type Props = { repository: Repository, confirmDialog?: boolean, - delete: Repository => void, // context props t: string => string }; -class DeleteNavAction extends React.Component { +class DeleteRepo extends React.Component { static defaultProps = { confirmDialog: true }; delete = () => { - this.props.delete(this.props.repository); + //this.props.delete(this.props.repository); }; confirmDelete = () => { @@ -68,4 +67,4 @@ class DeleteNavAction extends React.Component { } } -export default translate("repos")(DeleteNavAction); +export default translate("repos")(DeleteRepo); diff --git a/scm-ui/src/repos/components/DeleteNavAction.test.js b/scm-ui/src/repos/components/DeleteRepo.test.js similarity index 83% rename from scm-ui/src/repos/components/DeleteNavAction.test.js rename to scm-ui/src/repos/components/DeleteRepo.test.js index 7c2191864a..7985e02ef2 100644 --- a/scm-ui/src/repos/components/DeleteNavAction.test.js +++ b/scm-ui/src/repos/components/DeleteRepo.test.js @@ -2,7 +2,7 @@ import React from "react"; import { mount, shallow } from "enzyme"; import "../../tests/enzyme"; import "../../tests/i18n"; -import DeleteNavAction from "./DeleteNavAction"; +import DeleteRepo from "./DeleteRepo"; import { confirmAlert } from "@scm-manager/ui-components"; jest.mock("@scm-manager/ui-components", () => ({ @@ -10,14 +10,14 @@ jest.mock("@scm-manager/ui-components", () => ({ NavAction: require.requireActual("@scm-manager/ui-components").NavAction })); -describe("DeleteNavAction", () => { +describe("DeleteRepo", () => { it("should render nothing, if the delete link is missing", () => { const repository = { _links: {} }; const navLink = shallow( - {}} /> + {}} /> ); expect(navLink.text()).toBe(""); }); @@ -32,7 +32,7 @@ describe("DeleteNavAction", () => { }; const navLink = mount( - {}} /> + {}} /> ); expect(navLink.text()).not.toBe(""); }); @@ -47,7 +47,7 @@ describe("DeleteNavAction", () => { }; const navLink = mount( - {}} /> + {}} /> ); navLink.find("a").simulate("click"); @@ -69,7 +69,7 @@ describe("DeleteNavAction", () => { } const navLink = mount( - void) => void, - modifyRepoReset: Repository => void, loading: boolean, error: Error, + modifyRepo: (Repository, () => void) => void, + modifyRepoReset: Repository => void, + // context props - t: string => string, + repository: Repository, history: History }; -class Edit extends React.Component { +class GeneralRepo extends React.Component { componentDidMount() { const { modifyRepoReset, repository } = this.props; modifyRepoReset(repository); @@ -37,7 +37,7 @@ class Edit extends React.Component { }; render() { - const { loading, error } = this.props; + const { loading, error, repository } = this.props; return (
@@ -49,7 +49,7 @@ class Edit extends React.Component { }} />
-

TODO: DeleteRepo hier einbinden. Aktuell heißt es noch DeleteNavAction

+
); } @@ -79,4 +79,4 @@ const mapDispatchToProps = dispatch => { export default connect( mapStateToProps, mapDispatchToProps -)(translate("repos")(withRouter(Edit))); +)(withRouter(GeneralRepo)); diff --git a/scm-ui/src/repos/containers/RepositoryRoot.js b/scm-ui/src/repos/containers/RepositoryRoot.js index 1a7ca7eaea..1de1a9dd89 100644 --- a/scm-ui/src/repos/containers/RepositoryRoot.js +++ b/scm-ui/src/repos/containers/RepositoryRoot.js @@ -9,12 +9,10 @@ import type {Repository} from "@scm-manager/ui-types"; import {ErrorPage, Loading, Navigation, SubNavigation, NavLink, Page, Section} from "@scm-manager/ui-components"; import {translate} from "react-i18next"; import RepositoryDetails from "../components/RepositoryDetails"; -import DeleteNavAction from "../components/DeleteNavAction"; -import Edit from "../containers/Edit"; +import GeneralRepo from "./GeneralRepo"; import Permissions from "../permissions/containers/Permissions"; import type {History} from "history"; -import EditNavLink from "../components/EditNavLink"; import BranchRoot from "./ChangesetsRoot"; import ChangesetView from "./ChangesetView"; @@ -110,7 +108,7 @@ class RepositoryRoot extends React.Component { /> } + component={() => } /> { to={`${url}/settings/general`} label={t("repository-root.menu.settingsNavLink")} > - + { + static defaultProps = { + confirmDialog: true + }; + userDeleted = () => { this.props.history.push("/users"); }; @@ -39,10 +31,6 @@ class DeleteUser extends React.Component { this.props.deleteUser(user, this.userDeleted); }; - static defaultProps = { - confirmDialog: true - }; - deleteUser = () => { this.props.deleteUser(this.props.user); }; diff --git a/scm-ui/src/users/containers/GeneralUser.js b/scm-ui/src/users/containers/GeneralUser.js index ac94b10148..f386994460 100644 --- a/scm-ui/src/users/containers/GeneralUser.js +++ b/scm-ui/src/users/containers/GeneralUser.js @@ -2,8 +2,8 @@ import React from "react"; import { connect } from "react-redux"; import { withRouter } from "react-router-dom"; -import UserForm from "./../components/UserForm"; -import DeleteUser from "./../components/DeleteUser"; +import UserForm from "../components/UserForm"; +import DeleteUser from "../components/DeleteUser"; import type { User } from "@scm-manager/ui-types"; import { modifyUser, @@ -57,6 +57,15 @@ class GeneralUser extends React.Component { } } +const mapStateToProps = (state, ownProps) => { + const loading = isModifyUserPending(state, ownProps.user.name); + const error = getModifyUserFailure(state, ownProps.user.name); + return { + loading, + error + }; +}; + const mapDispatchToProps = dispatch => { return { modifyUser: (user: User, callback?: () => void) => { @@ -68,15 +77,6 @@ const mapDispatchToProps = dispatch => { }; }; -const mapStateToProps = (state, ownProps) => { - const loading = isModifyUserPending(state, ownProps.user.name); - const error = getModifyUserFailure(state, ownProps.user.name); - return { - loading, - error - }; -}; - export default connect( mapStateToProps, mapDispatchToProps