diff --git a/ui/features/inbox/react/components/CourseSelect/CourseSelect.tsx b/ui/features/inbox/react/components/CourseSelect/CourseSelect.tsx index c481f3aaceab3..0bd4be261da83 100644 --- a/ui/features/inbox/react/components/CourseSelect/CourseSelect.tsx +++ b/ui/features/inbox/react/components/CourseSelect/CourseSelect.tsx @@ -27,13 +27,14 @@ import {CloseButton} from '@instructure/ui-buttons' const I18n = createI18nScope('conversations_2') export const ALL_COURSES_ID = 'all_courses' +const ALL_COURSES_KEY = 'allCourses' // @ts-expect-error TS7006 (typescriptify) const filterOptions = (value, options) => { const filteredOptions = {} Object.keys(options).forEach(key => { - if (key === 'allCourses') { - // if provided, allCourses should always be present + if (key === ALL_COURSES_KEY) { + // if provided, ALL_COURSES_KEY should always be present // @ts-expect-error TS7053 (typescriptify) filteredOptions[key] = options[key] } else { @@ -160,7 +161,7 @@ const CourseSelect = props => { // @ts-expect-error TS2339 (typescriptify) const contextName = option.contextName - const actualId = id === 'all_courses' ? null : id + const actualId = id === ALL_COURSES_ID ? null : id props.onCourseFilterSelect({contextID: actualId, contextName}) setSelectedOptionId(actualId) @@ -218,7 +219,7 @@ const CourseSelect = props => { return I18n.t('Concluded Courses') case 'groups': return I18n.t('Groups') - case 'allCourses': + case ALL_COURSES_KEY: return I18n.t('Courses') } } diff --git a/ui/features/inbox/react/containers/MessageListActionContainer.tsx b/ui/features/inbox/react/containers/MessageListActionContainer.tsx index 68dc7a4f6d20e..36ac0043b10b1 100644 --- a/ui/features/inbox/react/containers/MessageListActionContainer.tsx +++ b/ui/features/inbox/react/containers/MessageListActionContainer.tsx @@ -68,16 +68,17 @@ const MessageListActionContainer = props => { data?.legacyNode?.favoriteCoursesConnection?.nodes, ) - // @ts-expect-error TS7034 (typescriptify) - const moreCourses = [] - const concludedCourses = uniqueCourses.filter(course => { - if (course.concluded !== true) { - moreCourses.push(course) - return false - } else { - return true - } - }) + const { concludedCourses, moreCourses } = uniqueCourses.reduce( + (acc, course) => { + if (course.concluded === true) { + acc.concludedCourses.push(course) + } else { + acc.moreCourses.push(course) + } + return acc + }, + { concludedCourses: [], moreCourses: [] } + ) const courseSelectorOptions = { allCourses: [