mirror of
https://github.com/scm-manager/scm-manager.git
synced 2025-11-11 07:55:47 +01:00
Reset modify state when mounting the respective component
Repo, Group, User
This commit is contained in:
@@ -2,16 +2,22 @@
|
|||||||
import React from "react";
|
import React from "react";
|
||||||
import { connect } from "react-redux";
|
import { connect } from "react-redux";
|
||||||
import GroupForm from "../components/GroupForm";
|
import GroupForm from "../components/GroupForm";
|
||||||
import { modifyGroup, fetchGroup } from "../modules/groups";
|
import {
|
||||||
|
modifyGroup,
|
||||||
|
modifyGroupReset,
|
||||||
|
fetchGroup,
|
||||||
|
isModifyGroupPending,
|
||||||
|
getModifyGroupFailure
|
||||||
|
} from "../modules/groups";
|
||||||
import type { History } from "history";
|
import type { History } from "history";
|
||||||
import { withRouter } from "react-router-dom";
|
import { withRouter } from "react-router-dom";
|
||||||
import type { Group } from "@scm-manager/ui-types";
|
import type { Group } from "@scm-manager/ui-types";
|
||||||
import { isModifyGroupPending, getModifyGroupFailure } from "../modules/groups";
|
|
||||||
import { ErrorNotification } from "@scm-manager/ui-components";
|
import { ErrorNotification } from "@scm-manager/ui-components";
|
||||||
|
|
||||||
type Props = {
|
type Props = {
|
||||||
group: Group,
|
group: Group,
|
||||||
modifyGroup: (group: Group, callback?: () => void) => void,
|
modifyGroup: (group: Group, callback?: () => void) => void,
|
||||||
|
modifyGroupReset: Group => void,
|
||||||
fetchGroup: (name: string) => void,
|
fetchGroup: (name: string) => void,
|
||||||
history: History,
|
history: History,
|
||||||
loading?: boolean,
|
loading?: boolean,
|
||||||
@@ -19,13 +25,17 @@ type Props = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
class EditGroup extends React.Component<Props> {
|
class EditGroup extends React.Component<Props> {
|
||||||
groupModified = (group: Group) => () => {
|
componentDidMount() {
|
||||||
this.props.fetchGroup(group.name);
|
const { group, modifyGroupReset } = this.props;
|
||||||
this.props.history.push(`/group/${group.name}`);
|
modifyGroupReset(group);
|
||||||
|
}
|
||||||
|
groupModified = () => () => {
|
||||||
|
const { group, history } = this.props;
|
||||||
|
history.push(`/group/${group.name}`);
|
||||||
};
|
};
|
||||||
|
|
||||||
modifyGroup = (group: Group) => {
|
modifyGroup = (group: Group) => {
|
||||||
this.props.modifyGroup(group, this.groupModified(group));
|
this.props.modifyGroup(group, this.groupModified());
|
||||||
};
|
};
|
||||||
|
|
||||||
render() {
|
render() {
|
||||||
@@ -59,8 +69,8 @@ const mapDispatchToProps = dispatch => {
|
|||||||
modifyGroup: (group: Group, callback?: () => void) => {
|
modifyGroup: (group: Group, callback?: () => void) => {
|
||||||
dispatch(modifyGroup(group, callback));
|
dispatch(modifyGroup(group, callback));
|
||||||
},
|
},
|
||||||
fetchGroup: (name: string) => {
|
modifyGroupReset: (group: Group) => {
|
||||||
dispatch(fetchGroup(name));
|
dispatch(modifyGroupReset(group));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -26,6 +26,7 @@ export const MODIFY_GROUP = "scm/groups/MODIFY_GROUP";
|
|||||||
export const MODIFY_GROUP_PENDING = `${MODIFY_GROUP}_${types.PENDING_SUFFIX}`;
|
export const MODIFY_GROUP_PENDING = `${MODIFY_GROUP}_${types.PENDING_SUFFIX}`;
|
||||||
export const MODIFY_GROUP_SUCCESS = `${MODIFY_GROUP}_${types.SUCCESS_SUFFIX}`;
|
export const MODIFY_GROUP_SUCCESS = `${MODIFY_GROUP}_${types.SUCCESS_SUFFIX}`;
|
||||||
export const MODIFY_GROUP_FAILURE = `${MODIFY_GROUP}_${types.FAILURE_SUFFIX}`;
|
export const MODIFY_GROUP_FAILURE = `${MODIFY_GROUP}_${types.FAILURE_SUFFIX}`;
|
||||||
|
export const MODIFY_GROUP_RESET = `${MODIFY_GROUP}_${types.RESET_SUFFIX}`;
|
||||||
|
|
||||||
export const DELETE_GROUP = "scm/groups/DELETE";
|
export const DELETE_GROUP = "scm/groups/DELETE";
|
||||||
export const DELETE_GROUP_PENDING = `${DELETE_GROUP}_${types.PENDING_SUFFIX}`;
|
export const DELETE_GROUP_PENDING = `${DELETE_GROUP}_${types.PENDING_SUFFIX}`;
|
||||||
@@ -227,6 +228,13 @@ export function modifyGroupFailure(group: Group, error: Error): Action {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function modifyGroupReset(group: Group): Action {
|
||||||
|
return {
|
||||||
|
type: MODIFY_GROUP_RESET,
|
||||||
|
itemId: group.name
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
//delete group
|
//delete group
|
||||||
|
|
||||||
export function deleteGroup(group: Group, callback?: () => void) {
|
export function deleteGroup(group: Group, callback?: () => void) {
|
||||||
|
|||||||
@@ -7,7 +7,8 @@ import type { Repository } from "@scm-manager/ui-types";
|
|||||||
import {
|
import {
|
||||||
modifyRepo,
|
modifyRepo,
|
||||||
isModifyRepoPending,
|
isModifyRepoPending,
|
||||||
getModifyRepoFailure
|
getModifyRepoFailure,
|
||||||
|
modifyRepoReset
|
||||||
} from "../modules/repos";
|
} from "../modules/repos";
|
||||||
import { withRouter } from "react-router-dom";
|
import { withRouter } from "react-router-dom";
|
||||||
import type { History } from "history";
|
import type { History } from "history";
|
||||||
@@ -16,6 +17,7 @@ import { ErrorNotification } from "@scm-manager/ui-components";
|
|||||||
type Props = {
|
type Props = {
|
||||||
repository: Repository,
|
repository: Repository,
|
||||||
modifyRepo: (Repository, () => void) => void,
|
modifyRepo: (Repository, () => void) => void,
|
||||||
|
modifyRepoReset: Repository => void,
|
||||||
loading: boolean,
|
loading: boolean,
|
||||||
error: Error,
|
error: Error,
|
||||||
|
|
||||||
@@ -25,6 +27,10 @@ type Props = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
class Edit extends React.Component<Props> {
|
class Edit extends React.Component<Props> {
|
||||||
|
componentDidMount() {
|
||||||
|
const { modifyRepoReset, repository } = this.props;
|
||||||
|
modifyRepoReset(repository);
|
||||||
|
}
|
||||||
repoModified = () => {
|
repoModified = () => {
|
||||||
const { history, repository } = this.props;
|
const { history, repository } = this.props;
|
||||||
history.push(`/repo/${repository.namespace}/${repository.name}`);
|
history.push(`/repo/${repository.namespace}/${repository.name}`);
|
||||||
@@ -61,6 +67,9 @@ const mapDispatchToProps = dispatch => {
|
|||||||
return {
|
return {
|
||||||
modifyRepo: (repo: Repository, callback: () => void) => {
|
modifyRepo: (repo: Repository, callback: () => void) => {
|
||||||
dispatch(modifyRepo(repo, callback));
|
dispatch(modifyRepo(repo, callback));
|
||||||
|
},
|
||||||
|
modifyRepoReset: (repo: Repository) => {
|
||||||
|
dispatch(modifyRepoReset(repo));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -29,6 +29,7 @@ export const MODIFY_REPO = "scm/repos/MODIFY_REPO";
|
|||||||
export const MODIFY_REPO_PENDING = `${MODIFY_REPO}_${types.PENDING_SUFFIX}`;
|
export const MODIFY_REPO_PENDING = `${MODIFY_REPO}_${types.PENDING_SUFFIX}`;
|
||||||
export const MODIFY_REPO_SUCCESS = `${MODIFY_REPO}_${types.SUCCESS_SUFFIX}`;
|
export const MODIFY_REPO_SUCCESS = `${MODIFY_REPO}_${types.SUCCESS_SUFFIX}`;
|
||||||
export const MODIFY_REPO_FAILURE = `${MODIFY_REPO}_${types.FAILURE_SUFFIX}`;
|
export const MODIFY_REPO_FAILURE = `${MODIFY_REPO}_${types.FAILURE_SUFFIX}`;
|
||||||
|
export const MODIFY_REPO_RESET = `${MODIFY_REPO}_${types.RESET_SUFFIX}`;
|
||||||
|
|
||||||
export const DELETE_REPO = "scm/repos/DELETE_REPO";
|
export const DELETE_REPO = "scm/repos/DELETE_REPO";
|
||||||
export const DELETE_REPO_PENDING = `${DELETE_REPO}_${types.PENDING_SUFFIX}`;
|
export const DELETE_REPO_PENDING = `${DELETE_REPO}_${types.PENDING_SUFFIX}`;
|
||||||
@@ -247,6 +248,14 @@ export function modifyRepoFailure(
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function modifyRepoReset(repository: Repository): Action {
|
||||||
|
return {
|
||||||
|
type: MODIFY_REPO_RESET,
|
||||||
|
payload: { repository },
|
||||||
|
itemId: createIdentifier(repository)
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
// delete
|
// delete
|
||||||
|
|
||||||
export function deleteRepo(repository: Repository, callback?: () => void) {
|
export function deleteRepo(repository: Repository, callback?: () => void) {
|
||||||
|
|||||||
@@ -7,7 +7,8 @@ import type { User } from "@scm-manager/ui-types";
|
|||||||
import {
|
import {
|
||||||
modifyUser,
|
modifyUser,
|
||||||
isModifyUserPending,
|
isModifyUserPending,
|
||||||
getModifyUserFailure
|
getModifyUserFailure,
|
||||||
|
modifyUserReset
|
||||||
} from "../modules/users";
|
} from "../modules/users";
|
||||||
import type { History } from "history";
|
import type { History } from "history";
|
||||||
import { ErrorNotification } from "@scm-manager/ui-components";
|
import { ErrorNotification } from "@scm-manager/ui-components";
|
||||||
@@ -18,6 +19,7 @@ type Props = {
|
|||||||
|
|
||||||
// dispatch functions
|
// dispatch functions
|
||||||
modifyUser: (user: User, callback?: () => void) => void,
|
modifyUser: (user: User, callback?: () => void) => void,
|
||||||
|
modifyUserReset: User => void,
|
||||||
|
|
||||||
// context objects
|
// context objects
|
||||||
user: User,
|
user: User,
|
||||||
@@ -25,6 +27,10 @@ type Props = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
class EditUser extends React.Component<Props> {
|
class EditUser extends React.Component<Props> {
|
||||||
|
componentDidMount() {
|
||||||
|
const { modifyUserReset, user } = this.props;
|
||||||
|
modifyUserReset(user);
|
||||||
|
}
|
||||||
userModified = (user: User) => () => {
|
userModified = (user: User) => () => {
|
||||||
this.props.history.push(`/user/${user.name}`);
|
this.props.history.push(`/user/${user.name}`);
|
||||||
};
|
};
|
||||||
@@ -52,6 +58,9 @@ const mapDispatchToProps = dispatch => {
|
|||||||
return {
|
return {
|
||||||
modifyUser: (user: User, callback?: () => void) => {
|
modifyUser: (user: User, callback?: () => void) => {
|
||||||
dispatch(modifyUser(user, callback));
|
dispatch(modifyUser(user, callback));
|
||||||
|
},
|
||||||
|
modifyUserReset: (user: User) => {
|
||||||
|
dispatch(modifyUserReset(user));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -26,6 +26,7 @@ export const MODIFY_USER = "scm/users/MODIFY_USER";
|
|||||||
export const MODIFY_USER_PENDING = `${MODIFY_USER}_${types.PENDING_SUFFIX}`;
|
export const MODIFY_USER_PENDING = `${MODIFY_USER}_${types.PENDING_SUFFIX}`;
|
||||||
export const MODIFY_USER_SUCCESS = `${MODIFY_USER}_${types.SUCCESS_SUFFIX}`;
|
export const MODIFY_USER_SUCCESS = `${MODIFY_USER}_${types.SUCCESS_SUFFIX}`;
|
||||||
export const MODIFY_USER_FAILURE = `${MODIFY_USER}_${types.FAILURE_SUFFIX}`;
|
export const MODIFY_USER_FAILURE = `${MODIFY_USER}_${types.FAILURE_SUFFIX}`;
|
||||||
|
export const MODIFY_USER_RESET = `${MODIFY_USER}_${types.RESET_SUFFIX}`;
|
||||||
|
|
||||||
export const DELETE_USER = "scm/users/DELETE";
|
export const DELETE_USER = "scm/users/DELETE";
|
||||||
export const DELETE_USER_PENDING = `${DELETE_USER}_${types.PENDING_SUFFIX}`;
|
export const DELETE_USER_PENDING = `${DELETE_USER}_${types.PENDING_SUFFIX}`;
|
||||||
@@ -228,6 +229,13 @@ export function modifyUserFailure(user: User, error: Error): Action {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function modifyUserReset(user: User): Action {
|
||||||
|
return {
|
||||||
|
type: MODIFY_USER_RESET,
|
||||||
|
itemId: user.name
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
//delete user
|
//delete user
|
||||||
|
|
||||||
export function deleteUser(user: User, callback?: () => void) {
|
export function deleteUser(user: User, callback?: () => void) {
|
||||||
|
|||||||
Reference in New Issue
Block a user