in src/amo/reducers/userAbuseReports.js [135:185]
export default function userAbuseReportReducer(
// eslint-disable-next-line default-param-last
state: UserAbuseReportsState = initialState,
action: UserAbuseReportActionType,
): UserAbuseReportsState {
switch (action.type) {
case ABORT_USER_ABUSE_REPORT: {
const { userId } = action.payload;
return {
...state,
byUserId: {
...state.byUserId,
[userId]: {
...state.byUserId[userId],
hasSubmitted: false,
isSubmitting: false,
},
},
};
}
case LOAD_USER_ABUSE_REPORT: {
const { message, reportedByUserId, userId } = action.payload;
return {
...state,
byUserId: {
...state.byUserId,
[userId]: {
message,
reportedByUserId,
hasSubmitted: true,
isSubmitting: false,
},
},
};
}
case SEND_USER_ABUSE_REPORT: {
const { userId } = action.payload;
return {
...state,
byUserId: {
...state.byUserId,
[userId]: { ...state.byUserId[userId], isSubmitting: true },
},
};
}
default:
return state;
}
}