export default function userAbuseReportReducer()

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;
  }
}