40 lines
758 B
TypeScript
40 lines
758 B
TypeScript
|
import { Action } from 'redux';
|
||
|
|
||
|
import { IRoles } from '../reducers/roles';
|
||
|
import { ROLES } from './actionsTypes';
|
||
|
|
||
|
export interface ISetRoles extends Action {
|
||
|
roles: IRoles;
|
||
|
}
|
||
|
|
||
|
export interface IUpdateRoles extends Action {
|
||
|
payload: { id: string; desc: string };
|
||
|
}
|
||
|
|
||
|
export interface IRemoveRoles extends Action {
|
||
|
payload: { id: string };
|
||
|
}
|
||
|
|
||
|
export type IActionRoles = ISetRoles & IUpdateRoles & IRemoveRoles;
|
||
|
|
||
|
export function setRoles(roles: IRoles): ISetRoles {
|
||
|
return {
|
||
|
type: ROLES.SET,
|
||
|
roles
|
||
|
};
|
||
|
}
|
||
|
|
||
|
export function updateRoles(id: string, desc: string): IUpdateRoles {
|
||
|
return {
|
||
|
type: ROLES.UPDATE,
|
||
|
payload: { id, desc }
|
||
|
};
|
||
|
}
|
||
|
|
||
|
export function removeRoles(id: string): IRemoveRoles {
|
||
|
return {
|
||
|
type: ROLES.REMOVE,
|
||
|
payload: { id }
|
||
|
};
|
||
|
}
|