UNPKG

@instructure/quiz-grading

Version:

The Quiz React SDK by Instructure Inc.

46 lines 2.37 kB
import { Map } from 'immutable'; import RegradeOverridePresenter from './presenter'; import { connect, makeEditable, addError, screenreaderNotification, changeItemState, changeQuizEntryPoints, changeQuizEntryProperties, clearModifications, showError, hideError, openModal, setRegradingPayload, toggleRegradingEditMode, getItem, getQuizEntry, interactionFileUpload, setOneAtATimeType, featureOn, getActiveQuizId, getQuizEntryById, isActiveQuizWorkingInstanceOneQuestionAtATime, getItemById } from '@instructure/quiz-core'; function mapStateToProps(state, props) { var errorsShowing = state.get('errorsShowing', Map()); var errorsAreShowing = errorsShowing.get(props.guid); var quizEntry = getQuizEntryById(state, props.sessionItem.quizEntryId); var entry = getItemById(state, props.itemId); var workingQuizEntry = quizEntry.getWorkingInstance(); var regradeAdjustedScoringData = workingQuizEntry.regradeAdjustedScoringData(props.itemId); var itemOverrides = regradeAdjustedScoringData ? { scoringData: regradeAdjustedScoringData, scoringAlgorithm: workingQuizEntry.regradeScoringAlgorithm(props.itemId) } : null; return { appContainer: state.getIn(['ui', 'appContainer']), entry: entry, errorsAreShowing: errorsAreShowing, oneQuestionAtATime: isActiveQuizWorkingInstanceOneQuestionAtATime(state), partialScoringEnabled: featureOn('partial_scoring'), partialDeepScoringEnabled: featureOn('partial_deep_scoring'), quizEntry: quizEntry, quizId: getActiveQuizId(state), workingEntry: entry.getWorkingInstance(itemOverrides), workingQuizEntry: workingQuizEntry }; } var mapDispatchToProps = { hideError: hideError, showError: showError, addError: addError, changeItemState: changeItemState, changeQuizEntryPoints: changeQuizEntryPoints, changeQuizEntryProperties: changeQuizEntryProperties, clearModifications: clearModifications, getItem: getItem, getQuizEntry: getQuizEntry, interactionFileUpload: interactionFileUpload, openModal: openModal, screenreaderNotification: screenreaderNotification, setOneQuestionAtATime: setOneAtATimeType, setRegradingPayload: setRegradingPayload, toggleRegradingEditMode: toggleRegradingEditMode }; export var RegradeOverride = makeEditable(connect(mapStateToProps, mapDispatchToProps)(RegradeOverridePresenter)); export default RegradeOverride;