2020-12-28 10:08:08 -07:00
|
|
|
import { action, Action } from 'easy-peasy';
|
|
|
|
|
|
|
|
export interface AdminRoleStore {
|
2021-01-01 17:03:10 -07:00
|
|
|
selectedRoles: number[];
|
2021-01-01 15:55:30 -07:00
|
|
|
|
2021-01-01 17:03:10 -07:00
|
|
|
setSelectedRoles: Action<AdminRoleStore, number[]>;
|
|
|
|
appendSelectedRole: Action<AdminRoleStore, number>;
|
|
|
|
removeSelectedRole: Action<AdminRoleStore, number>;
|
2020-12-28 10:08:08 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
const roles: AdminRoleStore = {
|
2021-01-01 17:03:10 -07:00
|
|
|
selectedRoles: [],
|
2020-12-28 10:08:08 -07:00
|
|
|
|
2021-01-01 17:03:10 -07:00
|
|
|
setSelectedRoles: action((state, payload) => {
|
|
|
|
state.selectedRoles = payload;
|
|
|
|
}),
|
|
|
|
|
|
|
|
appendSelectedRole: action((state, payload) => {
|
|
|
|
state.selectedRoles = state.selectedRoles.filter(id => id !== payload).concat(payload);
|
|
|
|
}),
|
|
|
|
|
|
|
|
removeSelectedRole: action((state, payload) => {
|
|
|
|
state.selectedRoles = state.selectedRoles.filter(id => id !== payload);
|
|
|
|
}),
|
2020-12-28 10:08:08 -07:00
|
|
|
};
|
|
|
|
|
|
|
|
export default roles;
|