@instructure/quiz-core 17.64.1-rc.1 → 17.64.1-rc.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/common/components/resources/quizSessionResult/Info/index.js +31 -1
- package/es/common/components/resources/sessionItemResult/SessionItemResult/presenter.js +3 -1
- package/es/common/components/resources/sessionItemResult/SessionItemResultsList/index.js +5 -0
- package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerSummaryTable/Row/presenter.js +8 -4
- package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerSummaryTable/presenter.js +4 -1
- package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/presenter.js +18 -15
- package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewQuizAnalysis/presenter.js +4 -4
- package/es/reporting/components/resources/NewQuizAndItemAnalysis/charts/ScoreDistribution/presenter.js +1 -1
- package/es/reporting/components/resources/NewQuizAndItemAnalysis/presenter.js +1 -1
- package/es/reporting/components/resources/NewQuizAndItemAnalysis/utils.js +10 -1
- package/lib/common/components/resources/quizSessionResult/Info/index.js +33 -1
- package/lib/common/components/resources/sessionItemResult/SessionItemResult/presenter.js +3 -1
- package/lib/common/components/resources/sessionItemResult/SessionItemResultsList/index.js +6 -0
- package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerSummaryTable/Row/presenter.js +8 -4
- package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerSummaryTable/presenter.js +4 -1
- package/lib/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/presenter.js +18 -15
- package/lib/reporting/components/resources/NewQuizAndItemAnalysis/NewQuizAnalysis/presenter.js +4 -4
- package/lib/reporting/components/resources/NewQuizAndItemAnalysis/charts/ScoreDistribution/presenter.js +1 -1
- package/lib/reporting/components/resources/NewQuizAndItemAnalysis/presenter.js +1 -1
- package/lib/reporting/components/resources/NewQuizAndItemAnalysis/utils.js +10 -1
- package/package.json +10 -9
|
@@ -7,6 +7,7 @@ import _createSuper from "@babel/runtime/helpers/esm/createSuper";
|
|
|
7
7
|
var _dec, _class, _class2, _temp;
|
|
8
8
|
|
|
9
9
|
import React, { Component } from 'react';
|
|
10
|
+
import PropTypes from 'prop-types';
|
|
10
11
|
import ImmutablePropTypes from 'react-immutable-proptypes';
|
|
11
12
|
import classNames from 'classnames';
|
|
12
13
|
import { AccessibleContent, ScreenReaderContent } from '@instructure/ui-a11y-content';
|
|
@@ -17,6 +18,7 @@ import { Heading } from '@instructure/ui-heading';
|
|
|
17
18
|
import { View } from '@instructure/ui-view';
|
|
18
19
|
import { themeable } from '@instructure/ui-themeable';
|
|
19
20
|
import t from '@instructure/quiz-i18n/es/format-message';
|
|
21
|
+
import { scoreToLetterGrade } from '@instructure/grading-utils';
|
|
20
22
|
import { withI18nSupport } from '@instructure/quiz-common';
|
|
21
23
|
import FormattedDuration from "../../../shared/FormattedDuration/index.js";
|
|
22
24
|
import { formatTime } from "../../../../util/formatTimespan.js";
|
|
@@ -114,6 +116,26 @@ export var Info = (_dec = themeable(theme, styles), _dec(_class = (_temp = _clas
|
|
|
114
116
|
}, alerts));
|
|
115
117
|
}
|
|
116
118
|
}
|
|
119
|
+
}, {
|
|
120
|
+
key: "renderLetterGrade",
|
|
121
|
+
value: function renderLetterGrade() {
|
|
122
|
+
var letterGrade = scoreToLetterGrade(this.percentageVal * 100, this.props.gradingScheme);
|
|
123
|
+
var gradeText = t('Grade for this attempt');
|
|
124
|
+
var alt = t('Grade for this attempt: { grade }', {
|
|
125
|
+
grade: letterGrade
|
|
126
|
+
});
|
|
127
|
+
return /*#__PURE__*/React.createElement(AccessibleContent, {
|
|
128
|
+
alt: alt
|
|
129
|
+
}, /*#__PURE__*/React.createElement(View, {
|
|
130
|
+
as: "div"
|
|
131
|
+
}, /*#__PURE__*/React.createElement(Text, {
|
|
132
|
+
size: "xx-large",
|
|
133
|
+
weight: "bold",
|
|
134
|
+
color: "primary"
|
|
135
|
+
}, letterGrade)), /*#__PURE__*/React.createElement(Text, {
|
|
136
|
+
color: "secondary"
|
|
137
|
+
}, gradeText));
|
|
138
|
+
}
|
|
117
139
|
}, {
|
|
118
140
|
key: "renderScoreStats",
|
|
119
141
|
value: function renderScoreStats() {
|
|
@@ -186,7 +208,7 @@ export var Info = (_dec = themeable(theme, styles), _dec(_class = (_temp = _clas
|
|
|
186
208
|
className: classNames('fs-mask', styles.info)
|
|
187
209
|
}, /*#__PURE__*/React.createElement(ScreenReaderContent, null, /*#__PURE__*/React.createElement(Heading, {
|
|
188
210
|
level: "h2"
|
|
189
|
-
}, t('Assessment Statistics'))), this.renderScoreStats(), /*#__PURE__*/React.createElement("div", {
|
|
211
|
+
}, t('Assessment Statistics'))), this.props.restrictQuantitativeData ? this.renderLetterGrade() : this.renderScoreStats(), /*#__PURE__*/React.createElement("div", {
|
|
190
212
|
className: styles.infoWrapper
|
|
191
213
|
}, this.renderTime()))));
|
|
192
214
|
}
|
|
@@ -286,8 +308,16 @@ export var Info = (_dec = themeable(theme, styles), _dec(_class = (_temp = _clas
|
|
|
286
308
|
Info.displayName = "Info";
|
|
287
309
|
return Info;
|
|
288
310
|
}(withI18nSupport(Component)), _class2.propTypes = {
|
|
311
|
+
gradingScheme: PropTypes.arrayOf(PropTypes.shape({
|
|
312
|
+
name: PropTypes.string,
|
|
313
|
+
value: PropTypes.number
|
|
314
|
+
})),
|
|
289
315
|
quizSession: ImmutablePropTypes.record.isRequired,
|
|
290
316
|
quizSessionResult: ImmutablePropTypes.record.isRequired,
|
|
317
|
+
restrictQuantitativeData: PropTypes.bool,
|
|
291
318
|
sessionItemResults: ImmutablePropTypes.list.isRequired
|
|
319
|
+
}, _class2.defaultProps = {
|
|
320
|
+
gradingScheme: [],
|
|
321
|
+
restrictQuantitativeData: false
|
|
292
322
|
}, _temp)) || _class);
|
|
293
323
|
export default Info;
|
|
@@ -136,7 +136,7 @@ export var SessionItemResult = (_dec = themeable(theme, styles), _dec(_class = (
|
|
|
136
136
|
value: function renderHeader() {
|
|
137
137
|
return /*#__PURE__*/React.createElement("div", {
|
|
138
138
|
className: styles.sessionItemResultHeader
|
|
139
|
-
}, this.renderResultPosition(), this.hasRegradeInfo() ? this.renderRegradePoints() : this.renderPoints());
|
|
139
|
+
}, this.renderResultPosition(), !this.props.restrictQuantitativeData && (this.hasRegradeInfo() ? this.renderRegradePoints() : this.renderPoints()));
|
|
140
140
|
}
|
|
141
141
|
}, {
|
|
142
142
|
key: "renderResultPosition",
|
|
@@ -345,6 +345,7 @@ export var SessionItemResult = (_dec = themeable(theme, styles), _dec(_class = (
|
|
|
345
345
|
editGraderFeedback: PropTypes.func,
|
|
346
346
|
hideGraderFeedback: PropTypes.bool,
|
|
347
347
|
itemResultsModifications: ImmutablePropTypes.map,
|
|
348
|
+
restrictQuantitativeData: PropTypes.bool,
|
|
348
349
|
sessionItem: ImmutablePropTypes.record.isRequired,
|
|
349
350
|
sessionItemResult: ImmutablePropTypes.record.isRequired,
|
|
350
351
|
shouldRenderAnswerFeedback: PropTypes.bool,
|
|
@@ -353,6 +354,7 @@ export var SessionItemResult = (_dec = themeable(theme, styles), _dec(_class = (
|
|
|
353
354
|
editGraderFeedback: null,
|
|
354
355
|
hideGraderFeedback: false,
|
|
355
356
|
itemResultsModifications: null,
|
|
357
|
+
restrictQuantitativeData: false,
|
|
356
358
|
shouldRenderAnswerFeedback: false,
|
|
357
359
|
shouldRenderTopBorder: true
|
|
358
360
|
}, _temp)) || _class);
|
|
@@ -6,6 +6,7 @@ import _createSuper from "@babel/runtime/helpers/esm/createSuper";
|
|
|
6
6
|
var _dec, _class, _class2, _temp;
|
|
7
7
|
|
|
8
8
|
import React, { Component } from 'react';
|
|
9
|
+
import PropTypes from 'prop-types';
|
|
9
10
|
import ImmutablePropTypes from 'react-immutable-proptypes';
|
|
10
11
|
import { Heading } from '@instructure/ui-heading';
|
|
11
12
|
import { themeable } from '@instructure/ui-themeable';
|
|
@@ -44,6 +45,7 @@ export var SessionItemResultsList = (_dec = themeable(theme, styles), _dec(_clas
|
|
|
44
45
|
return /*#__PURE__*/React.createElement(SessionItemResult, {
|
|
45
46
|
appContainer: _this.props.appContainer,
|
|
46
47
|
key: sessionItem.id,
|
|
48
|
+
restrictQuantitativeData: _this.props.restrictQuantitativeData,
|
|
47
49
|
sessionItem: sessionItem,
|
|
48
50
|
sessionItemResult: sessionItem.sessionItemResult,
|
|
49
51
|
shouldRenderTopBorder: shouldRenderTopBorder
|
|
@@ -93,6 +95,9 @@ export var SessionItemResultsList = (_dec = themeable(theme, styles), _dec(_clas
|
|
|
93
95
|
return SessionItemResultsList;
|
|
94
96
|
}(Component), _class2.propTypes = {
|
|
95
97
|
appContainer: CustomPropTypes.selectors.isRequired,
|
|
98
|
+
restrictQuantitativeData: PropTypes.bool,
|
|
96
99
|
sessionItems: ImmutablePropTypes.list.isRequired
|
|
100
|
+
}, _class2.defaultProps = {
|
|
101
|
+
restrictQuantitativeData: false
|
|
97
102
|
}, _temp)) || _class);
|
|
98
103
|
export default SessionItemResultsList;
|
package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerSummaryTable/Row/presenter.js
CHANGED
|
@@ -75,20 +75,24 @@ export var Row = (_dec = themeable(theme, styles), _dec(_class = (_temp = _class
|
|
|
75
75
|
key: _this.props.choiceIndex
|
|
76
76
|
}, /*#__PURE__*/React.createElement(Table.Cell, {
|
|
77
77
|
theme: {
|
|
78
|
-
padding: '0px'
|
|
78
|
+
padding: '0px',
|
|
79
|
+
fontWeight: 'bold'
|
|
79
80
|
}
|
|
80
81
|
}, _this.renderIcon(correct)), /*#__PURE__*/React.createElement(Table.RowHeader, {
|
|
81
82
|
theme: {
|
|
82
|
-
padding: cellPadding
|
|
83
|
+
padding: cellPadding,
|
|
84
|
+
fontWeight: 'bold'
|
|
83
85
|
},
|
|
84
86
|
className: styles.tableBody
|
|
85
87
|
}, _this.renderMiddleCell(correct, extractTextFromHtml(_this.props.choice.body))), /*#__PURE__*/React.createElement(Table.Cell, {
|
|
86
88
|
theme: {
|
|
87
|
-
padding: cellPadding
|
|
89
|
+
padding: cellPadding,
|
|
90
|
+
fontWeight: 'bold'
|
|
88
91
|
}
|
|
89
92
|
}, _this.renderMiddleCell(correct, _this.props.choice.count)), /*#__PURE__*/React.createElement(Table.Cell, {
|
|
90
93
|
theme: {
|
|
91
|
-
padding: cellPadding
|
|
94
|
+
padding: cellPadding,
|
|
95
|
+
fontWeight: 'bold'
|
|
92
96
|
},
|
|
93
97
|
textAlign: "center"
|
|
94
98
|
}, _this.renderLastCell(correct, "".concat(_this.props.choice.percentage, "%"))));
|
package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerSummaryTable/presenter.js
CHANGED
|
@@ -48,7 +48,10 @@ export var AnswerSummaryTable = (_dec = themeable(theme, styles), _dec(_class =
|
|
|
48
48
|
className: styles.tableWrapper
|
|
49
49
|
}, /*#__PURE__*/React.createElement(Heading, {
|
|
50
50
|
margin: "large 0 small 0",
|
|
51
|
-
level: "h3"
|
|
51
|
+
level: "h3",
|
|
52
|
+
theme: {
|
|
53
|
+
h3FontWeight: 'normal'
|
|
54
|
+
}
|
|
52
55
|
}, t('Answer Frequency Summary')), /*#__PURE__*/React.createElement(ChoiceInfo, {
|
|
53
56
|
itemId: itemId,
|
|
54
57
|
choices: choices,
|
package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/presenter.js
CHANGED
|
@@ -9,18 +9,19 @@ var _dec, _class, _class2, _temp;
|
|
|
9
9
|
import { Heading } from '@instructure/ui-heading';
|
|
10
10
|
import React, { Component } from 'react';
|
|
11
11
|
var styles = {
|
|
12
|
-
componentId: '
|
|
12
|
+
componentId: 'bIeGi',
|
|
13
13
|
template: function template(theme) {
|
|
14
|
-
return "\n\n.
|
|
14
|
+
return "\n\n.bIeGi_eKXQ{padding:".concat(theme.cardWrapperPadding || 'inherit', ";position:relative}\n\n.bIeGi_bwlc{align-items:flex-start;gap:24px;justify-content:space-between;row-gap:32px}\n\n.bIeGi_bwlc,.bIeGi_bqdH{display:flex;flex-direction:row;flex-wrap:wrap}\n\n.bIeGi_bqdH{align-items:center;row-gap:24px}\n\n.bIeGi_NpIG{position:absolute;right:").concat(theme.viewPaddingRight || 'inherit', ";top:").concat(theme.viewPaddingTop || 'inherit', "}\n\n.bIeGi_eoBe{font-size:").concat(theme.metricNumberContextFontSize || 'inherit', ";font-weight:").concat(theme.metricNumberContextFontWeight || 'inherit', "}\n\n.bIeGi_fFDJ{display:none}\n\n.bIeGi_esVF{min-height:48px}\n\n.bIeGi_eTZq{position:relative}\n\n.bIeGi_eTZq:after{background:linear-gradient(180deg,hsla(0,0%,100%,0),#fff);content:\"\";height:48px;left:0;position:absolute;top:0;width:100%}\n\n.bIeGi_fkgx{max-width:100%;width:calc(25% + 350px)}");
|
|
15
15
|
},
|
|
16
|
-
'cardWrapper': '
|
|
17
|
-
'itemCardInnerContainer': '
|
|
18
|
-
'metricsContainer': '
|
|
19
|
-
'itemCardToggleButtonWrapper': '
|
|
20
|
-
'metricNumberContext': '
|
|
21
|
-
'hiddenMetrics': '
|
|
22
|
-
'itemBody': '
|
|
23
|
-
'hiddenItemBody': '
|
|
16
|
+
'cardWrapper': 'bIeGi_eKXQ',
|
|
17
|
+
'itemCardInnerContainer': 'bIeGi_bwlc',
|
|
18
|
+
'metricsContainer': 'bIeGi_bqdH',
|
|
19
|
+
'itemCardToggleButtonWrapper': 'bIeGi_NpIG',
|
|
20
|
+
'metricNumberContext': 'bIeGi_eoBe',
|
|
21
|
+
'hiddenMetrics': 'bIeGi_fFDJ',
|
|
22
|
+
'itemBody': 'bIeGi_esVF',
|
|
23
|
+
'hiddenItemBody': 'bIeGi_eTZq',
|
|
24
|
+
'answerSummaryTableContainer': 'bIeGi_fkgx'
|
|
24
25
|
};
|
|
25
26
|
import t from '@instructure/quiz-i18n/es/format-message';
|
|
26
27
|
import ExpandButton from "../../../../../common/components/shared/ExpandButton/index.js";
|
|
@@ -142,7 +143,7 @@ export var NewItemAnalysis = (_dec = themeable(theme, styles), _dec(_class = (_t
|
|
|
142
143
|
}, /*#__PURE__*/React.createElement(AnalysisPopoverMetric, {
|
|
143
144
|
metricKey: "difficulty_index",
|
|
144
145
|
label: t('Item Difficulty'),
|
|
145
|
-
value:
|
|
146
|
+
value: scores.difficulty_index,
|
|
146
147
|
popoverDescription: difficultyIndex
|
|
147
148
|
})), /*#__PURE__*/React.createElement(Flex.Item, {
|
|
148
149
|
margin: "none medium none none"
|
|
@@ -161,7 +162,7 @@ export var NewItemAnalysis = (_dec = themeable(theme, styles), _dec(_class = (_t
|
|
|
161
162
|
}, /*#__PURE__*/React.createElement(AnalysisPopoverMetric, {
|
|
162
163
|
metricKey: "discrimination_index",
|
|
163
164
|
label: t('Discrimination Index'),
|
|
164
|
-
value:
|
|
165
|
+
value: scores.discrimination_index,
|
|
165
166
|
popoverDescription: discriminationIndex
|
|
166
167
|
})))), /*#__PURE__*/React.createElement(Flex.Item, {
|
|
167
168
|
overflowY: "visible",
|
|
@@ -175,7 +176,7 @@ export var NewItemAnalysis = (_dec = themeable(theme, styles), _dec(_class = (_t
|
|
|
175
176
|
}, /*#__PURE__*/React.createElement(AnalysisPopoverMetric, {
|
|
176
177
|
metricKey: "pearson_correlation",
|
|
177
178
|
label: t('Corrected Item-Total Correlation Coefficient'),
|
|
178
|
-
value:
|
|
179
|
+
value: scores.pearson_correlation,
|
|
179
180
|
popoverDescription: pearsonCorrelation
|
|
180
181
|
}))))));
|
|
181
182
|
};
|
|
@@ -183,14 +184,16 @@ export var NewItemAnalysis = (_dec = themeable(theme, styles), _dec(_class = (_t
|
|
|
183
184
|
_this.renderAnswerSummaryTable = function (itemId, answer_summary, isSupportedTable, metricsClass) {
|
|
184
185
|
return /*#__PURE__*/React.createElement("div", {
|
|
185
186
|
className: metricsClass
|
|
187
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
188
|
+
className: styles.answerSummaryTableContainer
|
|
186
189
|
}, isSupportedTable && /*#__PURE__*/React.createElement(Flex, {
|
|
187
190
|
direction: "row"
|
|
188
191
|
}, /*#__PURE__*/React.createElement(Flex.Item, {
|
|
189
|
-
|
|
192
|
+
shouldGrow: true
|
|
190
193
|
}, /*#__PURE__*/React.createElement(AnswerSummaryTable, {
|
|
191
194
|
itemId: itemId,
|
|
192
195
|
answerSummary: answer_summary
|
|
193
|
-
}))));
|
|
196
|
+
})))));
|
|
194
197
|
};
|
|
195
198
|
|
|
196
199
|
return _this;
|
package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewQuizAnalysis/presenter.js
CHANGED
|
@@ -63,12 +63,12 @@ export var NewQuizAnalysis = (_dec = themeable(theme, styles), _dec(_class = (_t
|
|
|
63
63
|
className: styles.metricGroup
|
|
64
64
|
}, /*#__PURE__*/React.createElement(AnalysisPopoverMetric, {
|
|
65
65
|
metricKey: "stddev",
|
|
66
|
-
value:
|
|
66
|
+
value: scores === null || scores === void 0 ? void 0 : scores.stddev,
|
|
67
67
|
label: t('Standard Deviation'),
|
|
68
68
|
popoverDescription: standardDeviation
|
|
69
69
|
}), /*#__PURE__*/React.createElement(AnalysisPopoverMetric, {
|
|
70
70
|
metricKey: "cronbachs_alpha",
|
|
71
|
-
value:
|
|
71
|
+
value: scores === null || scores === void 0 ? void 0 : scores.cronbachs_alpha,
|
|
72
72
|
label: t('Cronbach\'s Alpha'),
|
|
73
73
|
popoverDescription: cronbachsAlpha
|
|
74
74
|
})));
|
|
@@ -117,7 +117,7 @@ export var NewQuizAnalysis = (_dec = themeable(theme, styles), _dec(_class = (_t
|
|
|
117
117
|
}, /*#__PURE__*/React.createElement(AnalysisMetric, {
|
|
118
118
|
metricKey: "median_percentage",
|
|
119
119
|
label: t('Median Score'),
|
|
120
|
-
value:
|
|
120
|
+
value: scores === null || scores === void 0 ? void 0 : scores.median_percentage,
|
|
121
121
|
suffix: "%"
|
|
122
122
|
}), /*#__PURE__*/React.createElement(AnalysisMetric, {
|
|
123
123
|
metricKey: "mean_elapsed_sec",
|
|
@@ -130,7 +130,7 @@ export var NewQuizAnalysis = (_dec = themeable(theme, styles), _dec(_class = (_t
|
|
|
130
130
|
title: expanded ? t('collapse quiz analysis') : t('expand quiz analysis'),
|
|
131
131
|
isExpanded: expanded
|
|
132
132
|
}))), expanded && this.renderExpanded(), /*#__PURE__*/React.createElement(ScoreDistribution, {
|
|
133
|
-
decileDistribution:
|
|
133
|
+
decileDistribution: scores === null || scores === void 0 ? void 0 : scores.decile_distribution
|
|
134
134
|
}));
|
|
135
135
|
}
|
|
136
136
|
}]);
|
|
@@ -62,7 +62,7 @@ export var ScoreDistribution = (_dec = themeable(theme, styles), _dec(_class = (
|
|
|
62
62
|
}, t('Score Distribution'))), /*#__PURE__*/React.createElement(QuintileDistribution, {
|
|
63
63
|
animateDelay: 1000,
|
|
64
64
|
animateDuration: 1000,
|
|
65
|
-
visualDistribution: this.props.decileDistribution,
|
|
65
|
+
visualDistribution: this.props.decileDistribution || [],
|
|
66
66
|
calculateLabelForColumn: this.calculateLabelForColumn
|
|
67
67
|
}), /*#__PURE__*/React.createElement("div", {
|
|
68
68
|
className: styles.chartLabel
|
|
@@ -43,7 +43,7 @@ export var NewQuizAndItemAnalysisPresenter = /*#__PURE__*/function (_Component)
|
|
|
43
43
|
})), /*#__PURE__*/React.createElement(NewQuizAnalysis, {
|
|
44
44
|
quizAnalysis: quizAnalysis
|
|
45
45
|
}), /*#__PURE__*/React.createElement(Heading, {
|
|
46
|
-
level: "
|
|
46
|
+
level: "h2",
|
|
47
47
|
color: "primary"
|
|
48
48
|
}, t('Item Analysis')), itemAnalyses === null || itemAnalyses === void 0 ? void 0 : itemAnalyses.map(function (itemAnalysis) {
|
|
49
49
|
return /*#__PURE__*/React.createElement(NewItemAnalysis, {
|
|
@@ -1,11 +1,20 @@
|
|
|
1
1
|
import t from '@instructure/quiz-i18n/es/format-message';
|
|
2
2
|
|
|
3
|
+
var formatNumbers = function formatNumbers(value) {
|
|
4
|
+
if (typeof value === 'number') {
|
|
5
|
+
return t.number(value);
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
return value;
|
|
9
|
+
};
|
|
10
|
+
|
|
3
11
|
var getSanitizedMetricValue = function getSanitizedMetricValue(value, suffix) {
|
|
4
12
|
if (value === null || value === void 0) {
|
|
5
13
|
return t('N/A');
|
|
6
14
|
}
|
|
7
15
|
|
|
8
|
-
|
|
16
|
+
var formattedValue = formatNumbers(value);
|
|
17
|
+
return suffix ? formattedValue + suffix : formattedValue;
|
|
9
18
|
};
|
|
10
19
|
|
|
11
20
|
export { getSanitizedMetricValue };
|
|
@@ -21,6 +21,8 @@ var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/creat
|
|
|
21
21
|
|
|
22
22
|
var _react = _interopRequireWildcard(require("react"));
|
|
23
23
|
|
|
24
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
25
|
+
|
|
24
26
|
var _reactImmutableProptypes = _interopRequireDefault(require("react-immutable-proptypes"));
|
|
25
27
|
|
|
26
28
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
@@ -41,6 +43,8 @@ var _uiThemeable = require("@instructure/ui-themeable");
|
|
|
41
43
|
|
|
42
44
|
var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/es/format-message"));
|
|
43
45
|
|
|
46
|
+
var _gradingUtils = require("@instructure/grading-utils");
|
|
47
|
+
|
|
44
48
|
var _quizCommon = require("@instructure/quiz-common");
|
|
45
49
|
|
|
46
50
|
var _index = _interopRequireDefault(require("../../../shared/FormattedDuration/index.js"));
|
|
@@ -143,6 +147,26 @@ var Info = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(_cl
|
|
|
143
147
|
}, alerts));
|
|
144
148
|
}
|
|
145
149
|
}
|
|
150
|
+
}, {
|
|
151
|
+
key: "renderLetterGrade",
|
|
152
|
+
value: function renderLetterGrade() {
|
|
153
|
+
var letterGrade = (0, _gradingUtils.scoreToLetterGrade)(this.percentageVal * 100, this.props.gradingScheme);
|
|
154
|
+
var gradeText = (0, _formatMessage.default)('Grade for this attempt');
|
|
155
|
+
var alt = (0, _formatMessage.default)('Grade for this attempt: { grade }', {
|
|
156
|
+
grade: letterGrade
|
|
157
|
+
});
|
|
158
|
+
return /*#__PURE__*/_react.default.createElement(_uiA11yContent.AccessibleContent, {
|
|
159
|
+
alt: alt
|
|
160
|
+
}, /*#__PURE__*/_react.default.createElement(_uiView.View, {
|
|
161
|
+
as: "div"
|
|
162
|
+
}, /*#__PURE__*/_react.default.createElement(_uiText.Text, {
|
|
163
|
+
size: "xx-large",
|
|
164
|
+
weight: "bold",
|
|
165
|
+
color: "primary"
|
|
166
|
+
}, letterGrade)), /*#__PURE__*/_react.default.createElement(_uiText.Text, {
|
|
167
|
+
color: "secondary"
|
|
168
|
+
}, gradeText));
|
|
169
|
+
}
|
|
146
170
|
}, {
|
|
147
171
|
key: "renderScoreStats",
|
|
148
172
|
value: function renderScoreStats() {
|
|
@@ -215,7 +239,7 @@ var Info = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(_cl
|
|
|
215
239
|
className: (0, _classnames.default)('fs-mask', styles.info)
|
|
216
240
|
}, /*#__PURE__*/_react.default.createElement(_uiA11yContent.ScreenReaderContent, null, /*#__PURE__*/_react.default.createElement(_uiHeading.Heading, {
|
|
217
241
|
level: "h2"
|
|
218
|
-
}, (0, _formatMessage.default)('Assessment Statistics'))), this.renderScoreStats(), /*#__PURE__*/_react.default.createElement("div", {
|
|
242
|
+
}, (0, _formatMessage.default)('Assessment Statistics'))), this.props.restrictQuantitativeData ? this.renderLetterGrade() : this.renderScoreStats(), /*#__PURE__*/_react.default.createElement("div", {
|
|
219
243
|
className: styles.infoWrapper
|
|
220
244
|
}, this.renderTime()))));
|
|
221
245
|
}
|
|
@@ -314,9 +338,17 @@ var Info = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(_cl
|
|
|
314
338
|
Info.displayName = "Info";
|
|
315
339
|
return Info;
|
|
316
340
|
}((0, _quizCommon.withI18nSupport)(_react.Component)), _class2.propTypes = {
|
|
341
|
+
gradingScheme: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
342
|
+
name: _propTypes.default.string,
|
|
343
|
+
value: _propTypes.default.number
|
|
344
|
+
})),
|
|
317
345
|
quizSession: _reactImmutableProptypes.default.record.isRequired,
|
|
318
346
|
quizSessionResult: _reactImmutableProptypes.default.record.isRequired,
|
|
347
|
+
restrictQuantitativeData: _propTypes.default.bool,
|
|
319
348
|
sessionItemResults: _reactImmutableProptypes.default.list.isRequired
|
|
349
|
+
}, _class2.defaultProps = {
|
|
350
|
+
gradingScheme: [],
|
|
351
|
+
restrictQuantitativeData: false
|
|
320
352
|
}, _temp)) || _class);
|
|
321
353
|
exports.Info = Info;
|
|
322
354
|
var _default = Info;
|
|
@@ -168,7 +168,7 @@ var SessionItemResult = (_dec = (0, _uiThemeable.themeable)(_theme.default, styl
|
|
|
168
168
|
value: function renderHeader() {
|
|
169
169
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
170
170
|
className: styles.sessionItemResultHeader
|
|
171
|
-
}, this.renderResultPosition(), this.hasRegradeInfo() ? this.renderRegradePoints() : this.renderPoints());
|
|
171
|
+
}, this.renderResultPosition(), !this.props.restrictQuantitativeData && (this.hasRegradeInfo() ? this.renderRegradePoints() : this.renderPoints()));
|
|
172
172
|
}
|
|
173
173
|
}, {
|
|
174
174
|
key: "renderResultPosition",
|
|
@@ -376,6 +376,7 @@ var SessionItemResult = (_dec = (0, _uiThemeable.themeable)(_theme.default, styl
|
|
|
376
376
|
editGraderFeedback: _propTypes.default.func,
|
|
377
377
|
hideGraderFeedback: _propTypes.default.bool,
|
|
378
378
|
itemResultsModifications: _reactImmutableProptypes.default.map,
|
|
379
|
+
restrictQuantitativeData: _propTypes.default.bool,
|
|
379
380
|
sessionItem: _reactImmutableProptypes.default.record.isRequired,
|
|
380
381
|
sessionItemResult: _reactImmutableProptypes.default.record.isRequired,
|
|
381
382
|
shouldRenderAnswerFeedback: _propTypes.default.bool,
|
|
@@ -384,6 +385,7 @@ var SessionItemResult = (_dec = (0, _uiThemeable.themeable)(_theme.default, styl
|
|
|
384
385
|
editGraderFeedback: null,
|
|
385
386
|
hideGraderFeedback: false,
|
|
386
387
|
itemResultsModifications: null,
|
|
388
|
+
restrictQuantitativeData: false,
|
|
387
389
|
shouldRenderAnswerFeedback: false,
|
|
388
390
|
shouldRenderTopBorder: true
|
|
389
391
|
}, _temp)) || _class);
|
|
@@ -19,6 +19,8 @@ var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/creat
|
|
|
19
19
|
|
|
20
20
|
var _react = _interopRequireWildcard(require("react"));
|
|
21
21
|
|
|
22
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
23
|
+
|
|
22
24
|
var _reactImmutableProptypes = _interopRequireDefault(require("react-immutable-proptypes"));
|
|
23
25
|
|
|
24
26
|
var _uiHeading = require("@instructure/ui-heading");
|
|
@@ -68,6 +70,7 @@ var SessionItemResultsList = (_dec = (0, _uiThemeable.themeable)(_theme.default,
|
|
|
68
70
|
return /*#__PURE__*/_react.default.createElement(_index.default, {
|
|
69
71
|
appContainer: _this.props.appContainer,
|
|
70
72
|
key: sessionItem.id,
|
|
73
|
+
restrictQuantitativeData: _this.props.restrictQuantitativeData,
|
|
71
74
|
sessionItem: sessionItem,
|
|
72
75
|
sessionItemResult: sessionItem.sessionItemResult,
|
|
73
76
|
shouldRenderTopBorder: shouldRenderTopBorder
|
|
@@ -116,7 +119,10 @@ var SessionItemResultsList = (_dec = (0, _uiThemeable.themeable)(_theme.default,
|
|
|
116
119
|
return SessionItemResultsList;
|
|
117
120
|
}(_react.Component), _class2.propTypes = {
|
|
118
121
|
appContainer: _CustomPropTypes.default.selectors.isRequired,
|
|
122
|
+
restrictQuantitativeData: _propTypes.default.bool,
|
|
119
123
|
sessionItems: _reactImmutableProptypes.default.list.isRequired
|
|
124
|
+
}, _class2.defaultProps = {
|
|
125
|
+
restrictQuantitativeData: false
|
|
120
126
|
}, _temp)) || _class);
|
|
121
127
|
exports.SessionItemResultsList = SessionItemResultsList;
|
|
122
128
|
var _default = SessionItemResultsList;
|
|
@@ -97,20 +97,24 @@ var Row = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(_cla
|
|
|
97
97
|
key: _this.props.choiceIndex
|
|
98
98
|
}, /*#__PURE__*/_react.default.createElement(_uiTable.Table.Cell, {
|
|
99
99
|
theme: {
|
|
100
|
-
padding: '0px'
|
|
100
|
+
padding: '0px',
|
|
101
|
+
fontWeight: 'bold'
|
|
101
102
|
}
|
|
102
103
|
}, _this.renderIcon(correct)), /*#__PURE__*/_react.default.createElement(_uiTable.Table.RowHeader, {
|
|
103
104
|
theme: {
|
|
104
|
-
padding: cellPadding
|
|
105
|
+
padding: cellPadding,
|
|
106
|
+
fontWeight: 'bold'
|
|
105
107
|
},
|
|
106
108
|
className: styles.tableBody
|
|
107
109
|
}, _this.renderMiddleCell(correct, (0, _quizInteractions.extractTextFromHtml)(_this.props.choice.body))), /*#__PURE__*/_react.default.createElement(_uiTable.Table.Cell, {
|
|
108
110
|
theme: {
|
|
109
|
-
padding: cellPadding
|
|
111
|
+
padding: cellPadding,
|
|
112
|
+
fontWeight: 'bold'
|
|
110
113
|
}
|
|
111
114
|
}, _this.renderMiddleCell(correct, _this.props.choice.count)), /*#__PURE__*/_react.default.createElement(_uiTable.Table.Cell, {
|
|
112
115
|
theme: {
|
|
113
|
-
padding: cellPadding
|
|
116
|
+
padding: cellPadding,
|
|
117
|
+
fontWeight: 'bold'
|
|
114
118
|
},
|
|
115
119
|
textAlign: "center"
|
|
116
120
|
}, _this.renderLastCell(correct, "".concat(_this.props.choice.percentage, "%"))));
|
package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerSummaryTable/presenter.js
CHANGED
|
@@ -69,7 +69,10 @@ var AnswerSummaryTable = (_dec = (0, _uiThemeable.themeable)(_theme.default, sty
|
|
|
69
69
|
className: styles.tableWrapper
|
|
70
70
|
}, /*#__PURE__*/_react.default.createElement(_uiHeading.Heading, {
|
|
71
71
|
margin: "large 0 small 0",
|
|
72
|
-
level: "h3"
|
|
72
|
+
level: "h3",
|
|
73
|
+
theme: {
|
|
74
|
+
h3FontWeight: 'normal'
|
|
75
|
+
}
|
|
73
76
|
}, (0, _formatMessage.default)('Answer Frequency Summary')), /*#__PURE__*/_react.default.createElement(_presenter.ChoiceInfo, {
|
|
74
77
|
itemId: itemId,
|
|
75
78
|
choices: choices,
|
package/lib/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/presenter.js
CHANGED
|
@@ -56,18 +56,19 @@ var _uiFlex = require("@instructure/ui-flex");
|
|
|
56
56
|
var _dec, _class, _class2, _temp;
|
|
57
57
|
|
|
58
58
|
var styles = {
|
|
59
|
-
componentId: '
|
|
59
|
+
componentId: 'bIeGi',
|
|
60
60
|
template: function template(theme) {
|
|
61
|
-
return "\n\n.
|
|
61
|
+
return "\n\n.bIeGi_eKXQ{padding:".concat(theme.cardWrapperPadding || 'inherit', ";position:relative}\n\n.bIeGi_bwlc{align-items:flex-start;gap:24px;justify-content:space-between;row-gap:32px}\n\n.bIeGi_bwlc,.bIeGi_bqdH{display:flex;flex-direction:row;flex-wrap:wrap}\n\n.bIeGi_bqdH{align-items:center;row-gap:24px}\n\n.bIeGi_NpIG{position:absolute;right:").concat(theme.viewPaddingRight || 'inherit', ";top:").concat(theme.viewPaddingTop || 'inherit', "}\n\n.bIeGi_eoBe{font-size:").concat(theme.metricNumberContextFontSize || 'inherit', ";font-weight:").concat(theme.metricNumberContextFontWeight || 'inherit', "}\n\n.bIeGi_fFDJ{display:none}\n\n.bIeGi_esVF{min-height:48px}\n\n.bIeGi_eTZq{position:relative}\n\n.bIeGi_eTZq:after{background:linear-gradient(180deg,hsla(0,0%,100%,0),#fff);content:\"\";height:48px;left:0;position:absolute;top:0;width:100%}\n\n.bIeGi_fkgx{max-width:100%;width:calc(25% + 350px)}");
|
|
62
62
|
},
|
|
63
|
-
'cardWrapper': '
|
|
64
|
-
'itemCardInnerContainer': '
|
|
65
|
-
'metricsContainer': '
|
|
66
|
-
'itemCardToggleButtonWrapper': '
|
|
67
|
-
'metricNumberContext': '
|
|
68
|
-
'hiddenMetrics': '
|
|
69
|
-
'itemBody': '
|
|
70
|
-
'hiddenItemBody': '
|
|
63
|
+
'cardWrapper': 'bIeGi_eKXQ',
|
|
64
|
+
'itemCardInnerContainer': 'bIeGi_bwlc',
|
|
65
|
+
'metricsContainer': 'bIeGi_bqdH',
|
|
66
|
+
'itemCardToggleButtonWrapper': 'bIeGi_NpIG',
|
|
67
|
+
'metricNumberContext': 'bIeGi_eoBe',
|
|
68
|
+
'hiddenMetrics': 'bIeGi_fFDJ',
|
|
69
|
+
'itemBody': 'bIeGi_esVF',
|
|
70
|
+
'hiddenItemBody': 'bIeGi_eTZq',
|
|
71
|
+
'answerSummaryTableContainer': 'bIeGi_fkgx'
|
|
71
72
|
};
|
|
72
73
|
var supportedTables = ['choice', 'true-false', 'multi-answer'];
|
|
73
74
|
var NewItemAnalysis = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_Component) {
|
|
@@ -174,7 +175,7 @@ var NewItemAnalysis = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles
|
|
|
174
175
|
}, /*#__PURE__*/_react.default.createElement(_index4.default, {
|
|
175
176
|
metricKey: "difficulty_index",
|
|
176
177
|
label: (0, _formatMessage.default)('Item Difficulty'),
|
|
177
|
-
value:
|
|
178
|
+
value: scores.difficulty_index,
|
|
178
179
|
popoverDescription: _popoverContent.difficultyIndex
|
|
179
180
|
})), /*#__PURE__*/_react.default.createElement(_uiFlex.Flex.Item, {
|
|
180
181
|
margin: "none medium none none"
|
|
@@ -193,7 +194,7 @@ var NewItemAnalysis = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles
|
|
|
193
194
|
}, /*#__PURE__*/_react.default.createElement(_index4.default, {
|
|
194
195
|
metricKey: "discrimination_index",
|
|
195
196
|
label: (0, _formatMessage.default)('Discrimination Index'),
|
|
196
|
-
value:
|
|
197
|
+
value: scores.discrimination_index,
|
|
197
198
|
popoverDescription: _popoverContent.discriminationIndex
|
|
198
199
|
})))), /*#__PURE__*/_react.default.createElement(_uiFlex.Flex.Item, {
|
|
199
200
|
overflowY: "visible",
|
|
@@ -207,7 +208,7 @@ var NewItemAnalysis = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles
|
|
|
207
208
|
}, /*#__PURE__*/_react.default.createElement(_index4.default, {
|
|
208
209
|
metricKey: "pearson_correlation",
|
|
209
210
|
label: (0, _formatMessage.default)('Corrected Item-Total Correlation Coefficient'),
|
|
210
|
-
value:
|
|
211
|
+
value: scores.pearson_correlation,
|
|
211
212
|
popoverDescription: _popoverContent.pearsonCorrelation
|
|
212
213
|
}))))));
|
|
213
214
|
};
|
|
@@ -215,14 +216,16 @@ var NewItemAnalysis = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles
|
|
|
215
216
|
_this.renderAnswerSummaryTable = function (itemId, answer_summary, isSupportedTable, metricsClass) {
|
|
216
217
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
217
218
|
className: metricsClass
|
|
219
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
220
|
+
className: styles.answerSummaryTableContainer
|
|
218
221
|
}, isSupportedTable && /*#__PURE__*/_react.default.createElement(_uiFlex.Flex, {
|
|
219
222
|
direction: "row"
|
|
220
223
|
}, /*#__PURE__*/_react.default.createElement(_uiFlex.Flex.Item, {
|
|
221
|
-
|
|
224
|
+
shouldGrow: true
|
|
222
225
|
}, /*#__PURE__*/_react.default.createElement(_index5.default, {
|
|
223
226
|
itemId: itemId,
|
|
224
227
|
answerSummary: answer_summary
|
|
225
|
-
}))));
|
|
228
|
+
})))));
|
|
226
229
|
};
|
|
227
230
|
|
|
228
231
|
return _this;
|
package/lib/reporting/components/resources/NewQuizAndItemAnalysis/NewQuizAnalysis/presenter.js
CHANGED
|
@@ -90,12 +90,12 @@ var NewQuizAnalysis = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles
|
|
|
90
90
|
className: styles.metricGroup
|
|
91
91
|
}, /*#__PURE__*/_react.default.createElement(_index3.default, {
|
|
92
92
|
metricKey: "stddev",
|
|
93
|
-
value:
|
|
93
|
+
value: scores === null || scores === void 0 ? void 0 : scores.stddev,
|
|
94
94
|
label: (0, _formatMessage.default)('Standard Deviation'),
|
|
95
95
|
popoverDescription: _popoverContent.standardDeviation
|
|
96
96
|
}), /*#__PURE__*/_react.default.createElement(_index3.default, {
|
|
97
97
|
metricKey: "cronbachs_alpha",
|
|
98
|
-
value:
|
|
98
|
+
value: scores === null || scores === void 0 ? void 0 : scores.cronbachs_alpha,
|
|
99
99
|
label: (0, _formatMessage.default)('Cronbach\'s Alpha'),
|
|
100
100
|
popoverDescription: _popoverContent.cronbachsAlpha
|
|
101
101
|
})));
|
|
@@ -144,7 +144,7 @@ var NewQuizAnalysis = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles
|
|
|
144
144
|
}, /*#__PURE__*/_react.default.createElement(_index4.default, {
|
|
145
145
|
metricKey: "median_percentage",
|
|
146
146
|
label: (0, _formatMessage.default)('Median Score'),
|
|
147
|
-
value:
|
|
147
|
+
value: scores === null || scores === void 0 ? void 0 : scores.median_percentage,
|
|
148
148
|
suffix: "%"
|
|
149
149
|
}), /*#__PURE__*/_react.default.createElement(_index4.default, {
|
|
150
150
|
metricKey: "mean_elapsed_sec",
|
|
@@ -157,7 +157,7 @@ var NewQuizAnalysis = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles
|
|
|
157
157
|
title: expanded ? (0, _formatMessage.default)('collapse quiz analysis') : (0, _formatMessage.default)('expand quiz analysis'),
|
|
158
158
|
isExpanded: expanded
|
|
159
159
|
}))), expanded && this.renderExpanded(), /*#__PURE__*/_react.default.createElement(_presenter.ScoreDistribution, {
|
|
160
|
-
decileDistribution:
|
|
160
|
+
decileDistribution: scores === null || scores === void 0 ? void 0 : scores.decile_distribution
|
|
161
161
|
}));
|
|
162
162
|
}
|
|
163
163
|
}]);
|
|
@@ -84,7 +84,7 @@ var ScoreDistribution = (_dec = (0, _uiThemeable.themeable)(_theme.default, styl
|
|
|
84
84
|
}, (0, _formatMessage.default)('Score Distribution'))), /*#__PURE__*/_react.default.createElement(_index.default, {
|
|
85
85
|
animateDelay: 1000,
|
|
86
86
|
animateDuration: 1000,
|
|
87
|
-
visualDistribution: this.props.decileDistribution,
|
|
87
|
+
visualDistribution: this.props.decileDistribution || [],
|
|
88
88
|
calculateLabelForColumn: this.calculateLabelForColumn
|
|
89
89
|
}), /*#__PURE__*/_react.default.createElement("div", {
|
|
90
90
|
className: styles.chartLabel
|
|
@@ -66,7 +66,7 @@ var NewQuizAndItemAnalysisPresenter = /*#__PURE__*/function (_Component) {
|
|
|
66
66
|
})), /*#__PURE__*/_react.default.createElement(_index2.default, {
|
|
67
67
|
quizAnalysis: quizAnalysis
|
|
68
68
|
}), /*#__PURE__*/_react.default.createElement(_uiHeading.Heading, {
|
|
69
|
-
level: "
|
|
69
|
+
level: "h2",
|
|
70
70
|
color: "primary"
|
|
71
71
|
}, (0, _formatMessage.default)('Item Analysis')), itemAnalyses === null || itemAnalyses === void 0 ? void 0 : itemAnalyses.map(function (itemAnalysis) {
|
|
72
72
|
return /*#__PURE__*/_react.default.createElement(_index.default, {
|
|
@@ -9,12 +9,21 @@ exports.getSanitizedMetricValue = void 0;
|
|
|
9
9
|
|
|
10
10
|
var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/es/format-message"));
|
|
11
11
|
|
|
12
|
+
var formatNumbers = function formatNumbers(value) {
|
|
13
|
+
if (typeof value === 'number') {
|
|
14
|
+
return _formatMessage.default.number(value);
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
return value;
|
|
18
|
+
};
|
|
19
|
+
|
|
12
20
|
var getSanitizedMetricValue = function getSanitizedMetricValue(value, suffix) {
|
|
13
21
|
if (value === null || value === void 0) {
|
|
14
22
|
return (0, _formatMessage.default)('N/A');
|
|
15
23
|
}
|
|
16
24
|
|
|
17
|
-
|
|
25
|
+
var formattedValue = formatNumbers(value);
|
|
26
|
+
return suffix ? formattedValue + suffix : formattedValue;
|
|
18
27
|
};
|
|
19
28
|
|
|
20
29
|
exports.getSanitizedMetricValue = getSanitizedMetricValue;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@instructure/quiz-core",
|
|
3
|
-
"version": "17.64.1-rc.
|
|
3
|
+
"version": "17.64.1-rc.5+7ab6e1fd3",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "The Quiz React SDK by Instructure Inc.",
|
|
6
6
|
"author": "Instructure, Inc. Engineering and Product Design",
|
|
@@ -40,12 +40,13 @@
|
|
|
40
40
|
"lib"
|
|
41
41
|
],
|
|
42
42
|
"dependencies": {
|
|
43
|
+
"@instructure/grading-utils": "^1.0.0",
|
|
43
44
|
"@instructure/outcomes-ui": "^2.1.9",
|
|
44
|
-
"@instructure/quiz-common": "17.64.1-rc.
|
|
45
|
-
"@instructure/quiz-i18n": "17.64.1-rc.
|
|
46
|
-
"@instructure/quiz-interactions": "17.64.1-rc.
|
|
47
|
-
"@instructure/quiz-number-input": "17.64.1-rc.
|
|
48
|
-
"@instructure/quiz-rce": "17.64.1-rc.
|
|
45
|
+
"@instructure/quiz-common": "17.64.1-rc.5+7ab6e1fd3",
|
|
46
|
+
"@instructure/quiz-i18n": "17.64.1-rc.5+7ab6e1fd3",
|
|
47
|
+
"@instructure/quiz-interactions": "17.64.1-rc.5+7ab6e1fd3",
|
|
48
|
+
"@instructure/quiz-number-input": "17.64.1-rc.5+7ab6e1fd3",
|
|
49
|
+
"@instructure/quiz-rce": "17.64.1-rc.5+7ab6e1fd3",
|
|
49
50
|
"@instructure/ui-a11y-content": "^7.20.0",
|
|
50
51
|
"@instructure/ui-alerts": "^7.20.0",
|
|
51
52
|
"@instructure/ui-avatar": "^7.20.0",
|
|
@@ -106,7 +107,7 @@
|
|
|
106
107
|
"eventemitter3": "^3.1.0",
|
|
107
108
|
"humps": "^2.0.0",
|
|
108
109
|
"immutable": "^3.8.1",
|
|
109
|
-
"instructure-validations": "17.64.1-rc.
|
|
110
|
+
"instructure-validations": "17.64.1-rc.5+7ab6e1fd3",
|
|
110
111
|
"ipaddr.js": "^1.5.4",
|
|
111
112
|
"isomorphic-fetch": "^2.2.0",
|
|
112
113
|
"isuuid": "^0.1.0",
|
|
@@ -157,7 +158,7 @@
|
|
|
157
158
|
"intl": "^1.2.4",
|
|
158
159
|
"jquery": "^2.2.3",
|
|
159
160
|
"most-subject": "^5.3.0",
|
|
160
|
-
"quiz-presets": "17.64.1-rc.
|
|
161
|
+
"quiz-presets": "17.64.1-rc.5+7ab6e1fd3",
|
|
161
162
|
"react": "^16.8.6",
|
|
162
163
|
"react-addons-test-utils": "^15.6.2",
|
|
163
164
|
"react-dom": "^16.8.6",
|
|
@@ -173,5 +174,5 @@
|
|
|
173
174
|
"publishConfig": {
|
|
174
175
|
"access": "public"
|
|
175
176
|
},
|
|
176
|
-
"gitHead": "
|
|
177
|
+
"gitHead": "7ab6e1fd33c7aca23bea334c6a88cedaa883f812"
|
|
177
178
|
}
|