import { createSlice, PayloadAction } from '@reduxjs/toolkit'; import type { RootState } from './store'; import { UserPolicy } from 'ts-common'; export interface PolicyUsersState { users: UserPolicy[]; } //TODO !FIXME: add middleware to fetch users from backend const initialState: PolicyUsersState = { users: [ { name: 'Scheper. W', email: 'user1@companyA.com', type: 'creator' }, { name: 'Smit. S', email: 'user2@companyB.com', type: 'viewer' }, { name: 'De Jong. B', email: 'user3@companyC.com', type: 'creator' }, ], }; export const policyUsersSlice = createSlice({ name: 'policyUsers', initialState, reducers: { setUsersPolicy: (state, action: PayloadAction<PolicyUsersState>) => { return action.payload; }, }, }); export const { setUsersPolicy } = policyUsersSlice.actions; export default policyUsersSlice.reducer; export const selectPolicyState = (state: RootState) => state.policyUsers;