@instructure/quiz-core 20.4.2-rc.0 → 20.4.2-rc.2

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.
Files changed (55) hide show
  1. package/es/common/components/resources/quiz/instructions/Instructions.js +17 -18
  2. package/es/common/components/resources/quiz/instructions/styles.js +21 -0
  3. package/es/common/components/resources/quiz/instructions/theme.js +4 -2
  4. package/es/common/components/resources/quiz/title/Title.js +15 -18
  5. package/es/common/components/resources/quiz/title/styles.js +19 -0
  6. package/es/common/components/resources/quiz/title/theme.js +4 -2
  7. package/es/common/components/resources/quizSessionResult/Header/index.js +22 -29
  8. package/es/common/components/resources/quizSessionResult/Header/styles.js +29 -0
  9. package/es/common/components/resources/quizSessionResult/Header/theme.js +4 -2
  10. package/es/common/components/resources/quizSessionResult/Info/index.js +43 -53
  11. package/es/common/components/resources/quizSessionResult/Info/styles.js +61 -0
  12. package/es/common/components/resources/quizSessionResult/Info/theme.js +4 -2
  13. package/es/reporting/components/Caption/index.js +13 -18
  14. package/es/reporting/components/Caption/styles.js +12 -0
  15. package/es/reporting/components/Caption/theme.js +4 -2
  16. package/es/reporting/components/charts/Legend/index.js +45 -33
  17. package/es/reporting/components/charts/Legend/styles.js +44 -0
  18. package/es/reporting/components/charts/Legend/theme.js +4 -2
  19. package/es/reporting/components/itemAnalysis/ItemAnalysisRow/presenter.js +61 -79
  20. package/es/reporting/components/itemAnalysis/ItemAnalysisRow/styles.js +100 -0
  21. package/es/reporting/components/itemAnalysis/ItemAnalysisRow/theme.js +4 -2
  22. package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewQuizAnalysis/presenter.js +34 -44
  23. package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewQuizAnalysis/styles.js +40 -0
  24. package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewQuizAnalysis/theme.js +4 -2
  25. package/es/reporting/components/resources/NewQuizAndItemAnalysis/charts/ScoreDistribution/presenter.js +27 -26
  26. package/es/reporting/components/resources/NewQuizAndItemAnalysis/charts/ScoreDistribution/styles.js +20 -0
  27. package/es/reporting/components/resources/NewQuizAndItemAnalysis/charts/ScoreDistribution/theme.js +4 -2
  28. package/lib/common/components/resources/quiz/instructions/Instructions.js +15 -22
  29. package/lib/common/components/resources/quiz/instructions/styles.js +29 -0
  30. package/lib/common/components/resources/quiz/instructions/theme.js +6 -3
  31. package/lib/common/components/resources/quiz/title/Title.js +15 -23
  32. package/lib/common/components/resources/quiz/title/styles.js +27 -0
  33. package/lib/common/components/resources/quiz/title/theme.js +6 -3
  34. package/lib/common/components/resources/quizSessionResult/Header/index.js +21 -31
  35. package/lib/common/components/resources/quizSessionResult/Header/styles.js +37 -0
  36. package/lib/common/components/resources/quizSessionResult/Header/theme.js +6 -3
  37. package/lib/common/components/resources/quizSessionResult/Info/index.js +42 -55
  38. package/lib/common/components/resources/quizSessionResult/Info/styles.js +69 -0
  39. package/lib/common/components/resources/quizSessionResult/Info/theme.js +6 -3
  40. package/lib/reporting/components/Caption/index.js +12 -19
  41. package/lib/reporting/components/Caption/styles.js +20 -0
  42. package/lib/reporting/components/Caption/theme.js +6 -3
  43. package/lib/reporting/components/charts/Legend/index.js +44 -34
  44. package/lib/reporting/components/charts/Legend/styles.js +54 -0
  45. package/lib/reporting/components/charts/Legend/theme.js +6 -3
  46. package/lib/reporting/components/itemAnalysis/ItemAnalysisRow/presenter.js +61 -80
  47. package/lib/reporting/components/itemAnalysis/ItemAnalysisRow/styles.js +110 -0
  48. package/lib/reporting/components/itemAnalysis/ItemAnalysisRow/theme.js +6 -3
  49. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/NewQuizAnalysis/presenter.js +33 -45
  50. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/NewQuizAnalysis/styles.js +48 -0
  51. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/NewQuizAnalysis/theme.js +6 -3
  52. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/charts/ScoreDistribution/presenter.js +27 -26
  53. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/charts/ScoreDistribution/styles.js +28 -0
  54. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/charts/ScoreDistribution/theme.js +6 -3
  55. package/package.json +9 -9
@@ -2,8 +2,6 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
@@ -17,38 +15,27 @@ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits
17
15
 
18
16
  var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper"));
19
17
 
20
- var _react = _interopRequireWildcard(require("react"));
18
+ var _react = require("react");
21
19
 
22
20
  var _propTypes = _interopRequireDefault(require("prop-types"));
23
21
 
24
22
  var _reactImmutableProptypes = _interopRequireDefault(require("react-immutable-proptypes"));
25
23
 
26
- var _classnames = _interopRequireDefault(require("classnames"));
27
-
28
24
  var _uiHeading = require("@instructure/ui-heading");
29
25
 
30
26
  var _uiAlerts = require("@instructure/ui-alerts");
31
27
 
32
- var _uiThemeable = require("@instructure/ui-themeable");
28
+ var _emotion = require("@instructure/emotion");
33
29
 
34
30
  var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/es/format-message"));
35
31
 
32
+ var _styles = _interopRequireDefault(require("./styles.js"));
33
+
36
34
  var _theme = _interopRequireDefault(require("./theme.js"));
37
35
 
38
36
  var _dec, _class, _class2, _temp;
39
37
 
40
- var styles = {
41
- componentId: 'eSNUQ',
42
- template: function template(theme) {
43
- return "\n\n.eSNUQ_cgjN,.eSNUQ_dmuJ{display:flex;justify-content:flex-start}\n\n.eSNUQ_dmuJ{align-items:center;flex-wrap:wrap;margin:".concat(theme.resultListInfoMargin || 'inherit', "}\n\n.eSNUQ_dHwi{font-size:").concat(theme.resultListTitleFontSize || 'inherit', ";margin:").concat(theme.resultListTitleMargin || 'inherit', " 0;width:100%}\n\n.eSNUQ_dTyP{width:100%}\n\n.eSNUQ_dkVT{padding-left:").concat(theme.regradeAlertPadding || 'inherit', ";padding-right:").concat(theme.regradeAlertPadding || 'inherit', "}");
44
- },
45
- 'resultListHeading': 'eSNUQ_cgjN',
46
- 'resultListInfo': 'eSNUQ_dmuJ',
47
- 'resultListTitle': 'eSNUQ_dHwi',
48
- 'resultListDescription': 'eSNUQ_dTyP',
49
- 'regradeAlert': 'eSNUQ_dkVT'
50
- };
51
- var QuizSessionResultHeader = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_Component) {
38
+ var QuizSessionResultHeader = (_dec = (0, _emotion.withStyle)(_styles.default, _theme.default), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_Component) {
52
39
  (0, _inherits2.default)(QuizSessionResultHeader, _Component);
53
40
 
54
41
  var _super = (0, _createSuper2.default)(QuizSessionResultHeader);
@@ -70,7 +57,7 @@ var QuizSessionResultHeader = (_dec = (0, _uiThemeable.themeable)(_theme.default
70
57
  return rsi.position;
71
58
  }).toJS().join(', ');
72
59
 
73
- return /*#__PURE__*/_react.default.createElement(_uiAlerts.Alert, {
60
+ return (0, _emotion.jsx)(_uiAlerts.Alert, {
74
61
  variant: "warning"
75
62
  }, (0, _formatMessage.default)("This assessment has been regraded. {\n numRegradedSI, plural,\n =1 {Question {questions} has been affected.}\n other {Questions {questions} have been affected.}\n }", {
76
63
  questions: questions,
@@ -90,19 +77,20 @@ var QuizSessionResultHeader = (_dec = (0, _uiThemeable.themeable)(_theme.default
90
77
  }, {
91
78
  key: "render",
92
79
  value: function render() {
93
- return /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("div", {
94
- className: styles.resultListHeading
95
- }, /*#__PURE__*/_react.default.createElement("div", {
96
- className: styles.resultListInfo
97
- }, /*#__PURE__*/_react.default.createElement("div", {
98
- className: styles.resultListTitle,
80
+ return (0, _emotion.jsx)("div", null, (0, _emotion.jsx)("div", {
81
+ css: this.props.styles.resultListHeading
82
+ }, (0, _emotion.jsx)("div", {
83
+ css: this.props.styles.resultListInfo
84
+ }, (0, _emotion.jsx)("div", {
85
+ css: this.props.styles.resultListTitle,
99
86
  "data-automation": "sdk-result-list-title"
100
- }, /*#__PURE__*/_react.default.createElement(_uiHeading.Heading, {
87
+ }, (0, _emotion.jsx)(_uiHeading.Heading, {
101
88
  level: "h1"
102
- }, (0, _formatMessage.default)('Results'))), /*#__PURE__*/_react.default.createElement("div", {
103
- className: (0, _classnames.default)('fs-mask', styles.resultListDescription)
104
- }, this.props.studentDescription || this.studentName()))), /*#__PURE__*/_react.default.createElement("div", {
105
- className: styles.regradeAlert
89
+ }, (0, _formatMessage.default)('Results'))), (0, _emotion.jsx)("div", {
90
+ css: this.props.styles.resultListDescription,
91
+ className: "fs-mask"
92
+ }, this.props.studentDescription || this.studentName()))), (0, _emotion.jsx)("div", {
93
+ css: this.props.styles.regradeAlert
106
94
  }, this.renderRegradeAlert()));
107
95
  }
108
96
  }]);
@@ -111,7 +99,9 @@ var QuizSessionResultHeader = (_dec = (0, _uiThemeable.themeable)(_theme.default
111
99
  }(_react.Component), _class2.propTypes = {
112
100
  quizSession: _reactImmutableProptypes.default.record.isRequired,
113
101
  regradedSessionItemResults: _reactImmutableProptypes.default.list,
114
- studentDescription: _propTypes.default.node
102
+ studentDescription: _propTypes.default.node,
103
+ // eslint-disable-next-line react/require-default-props,react/forbid-prop-types
104
+ styles: _propTypes.default.object
115
105
  }, _class2.defaultProps = {
116
106
  regradedSessionItemResults: null,
117
107
  studentDescription: null
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ var generateStyle = function generateStyle(componentTheme) {
9
+ return {
10
+ resultListHeading: {
11
+ display: 'flex',
12
+ justifyContent: 'flex-start'
13
+ },
14
+ resultListInfo: {
15
+ margin: componentTheme.resultListInfoMargin,
16
+ display: 'flex',
17
+ flexWrap: 'wrap',
18
+ justifyContent: 'flex-start',
19
+ alignItems: 'center'
20
+ },
21
+ resultListTitle: {
22
+ width: '100%',
23
+ fontSize: componentTheme.resultListTitleFontSize,
24
+ margin: "".concat(componentTheme.resultListTitleMargin, " 0")
25
+ },
26
+ resultListDescription: {
27
+ width: '100%'
28
+ },
29
+ regradeAlert: {
30
+ paddingLeft: componentTheme.regradeAlertPadding,
31
+ paddingRight: componentTheme.regradeAlertPadding
32
+ }
33
+ };
34
+ };
35
+
36
+ var _default = generateStyle;
37
+ exports.default = _default;
@@ -3,9 +3,9 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.default = generator;
6
+ exports.default = void 0;
7
7
 
8
- function generator(_ref) {
8
+ var generateComponentTheme = function generateComponentTheme(_ref) {
9
9
  var spacing = _ref.spacing,
10
10
  typography = _ref.typography;
11
11
  return {
@@ -14,4 +14,7 @@ function generator(_ref) {
14
14
  resultListTitleMargin: spacing.xSmall,
15
15
  regradeAlertPadding: spacing.xLarge
16
16
  };
17
- }
17
+ };
18
+
19
+ var _default = generateComponentTheme;
20
+ exports.default = _default;
@@ -2,8 +2,6 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
@@ -19,14 +17,12 @@ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits
19
17
 
20
18
  var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper"));
21
19
 
22
- var _react = _interopRequireWildcard(require("react"));
20
+ var _react = require("react");
23
21
 
24
22
  var _propTypes = _interopRequireDefault(require("prop-types"));
25
23
 
26
24
  var _reactImmutableProptypes = _interopRequireDefault(require("react-immutable-proptypes"));
27
25
 
28
- var _classnames = _interopRequireDefault(require("classnames"));
29
-
30
26
  var _uiA11yContent = require("@instructure/ui-a11y-content");
31
27
 
32
28
  var _uiAlerts = require("@instructure/ui-alerts");
@@ -39,7 +35,7 @@ var _uiHeading = require("@instructure/ui-heading");
39
35
 
40
36
  var _uiView = require("@instructure/ui-view");
41
37
 
42
- var _uiThemeable = require("@instructure/ui-themeable");
38
+ var _emotion = require("@instructure/emotion");
43
39
 
44
40
  var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/es/format-message"));
45
41
 
@@ -51,26 +47,14 @@ var _index = _interopRequireDefault(require("../../../shared/FormattedDuration/i
51
47
 
52
48
  var _formatTimespan = require("../../../../util/formatTimespan.js");
53
49
 
50
+ var _styles = _interopRequireDefault(require("./styles.js"));
51
+
54
52
  var _theme = _interopRequireDefault(require("./theme.js"));
55
53
 
56
54
  var _dec, _class, _class2, _temp;
57
55
 
58
- var styles = {
59
- componentId: 'fhrSa',
60
- template: function template(theme) {
61
- return "\n\n.fhrSa_ekHz{align-items:center;display:flex;flex-direction:row;justify-content:center;margin-top:".concat(theme.alertWrapperMargin || 'inherit', "}\n\n.fhrSa_bANW{flex-grow:1;max-width:33rem}\n\n.fhrSa_gasz{margin:none;padding:none}\n\n.fhrSa_pypk,.fhrSa_gasz{align-items:center;display:flex;justify-content:center}\n\n.fhrSa_pypk{align-self:center;flex-wrap:wrap}\n\n.fhrSa_bCqi{flex-wrap:wrap;justify-content:flex-start}\n\n.fhrSa_frHB,.fhrSa_bCqi{align-items:center;display:flex;flex:1 1 auto}\n\n.fhrSa_frHB{height:150px;margin:").concat(theme.scoreMargin || 'inherit', ";width:150px;z-index:").concat(theme.scoreZIndex || 'inherit', "}\n\n.fhrSa_fkZg{font-size:").concat(theme.scorePercentageFontSize || 'inherit', ";font-weight:").concat(theme.scorePercentageFontWeight || 'inherit', "}\n\n.fhrSa_vsBM{flex:1 1 auto;margin:").concat(theme.infoWrapperMargin || 'inherit', ";padding-left:").concat(theme.inforWrapperPadding || 'inherit', "}");
62
- },
63
- 'alertWrapper': 'fhrSa_ekHz',
64
- 'alertWidth': 'fhrSa_bANW',
65
- 'wrapper': 'fhrSa_gasz',
66
- 'info': 'fhrSa_pypk',
67
- 'scoreStats': 'fhrSa_bCqi',
68
- 'score': 'fhrSa_frHB',
69
- 'scorePercentage': 'fhrSa_fkZg',
70
- 'infoWrapper': 'fhrSa_vsBM'
71
- };
72
56
  var unknownPercentageValue = 'UNKNOWN_PERCENTAGE';
73
- var Info = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_withI18nSupport) {
57
+ var Info = (_dec = (0, _emotion.withStyle)(_styles.default, _theme.default), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_withI18nSupport) {
74
58
  (0, _inherits2.default)(Info, _withI18nSupport);
75
59
 
76
60
  var _super = (0, _createSuper2.default)(Info);
@@ -105,8 +89,8 @@ var Info = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(_cl
105
89
  default: '?',
106
90
  description: 'placeholder for an unknown percentage value'
107
91
  }) : this.formatPercentMax2FractionDigits(valueNow);
108
- return /*#__PURE__*/_react.default.createElement("div", {
109
- className: styles.scorePercentage,
92
+ return (0, _emotion.jsx)("div", {
93
+ css: this.props.styles.scorePercentage,
110
94
  "data-automation": "sdk-quiz-score-percentage"
111
95
  }, valueToShow);
112
96
  }
@@ -124,7 +108,7 @@ var Info = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(_cl
124
108
 
125
109
  if (quizSessionResult.isLoaded() && quizSessionResult.autogradingFailed()) {
126
110
  var msg = (0, _formatMessage.default)('There was a grading problem. Please inform your instructor.');
127
- alerts.push( /*#__PURE__*/_react.default.createElement(_uiAlerts.Alert, {
111
+ alerts.push((0, _emotion.jsx)(_uiAlerts.Alert, {
128
112
  key: "autograding_failed",
129
113
  variant: "warning"
130
114
  }, msg));
@@ -134,17 +118,17 @@ var Info = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(_cl
134
118
  var ungradedText = (0, _formatMessage.default)("{\n count, plural,\n one {# question requires grading}\n other {# questions require grading}\n }", {
135
119
  count: ungradedCount
136
120
  });
137
- alerts.push( /*#__PURE__*/_react.default.createElement(_uiAlerts.Alert, {
121
+ alerts.push((0, _emotion.jsx)(_uiAlerts.Alert, {
138
122
  key: "manual_grading",
139
123
  variant: "info"
140
124
  }, ungradedText));
141
125
  }
142
126
 
143
127
  if (alerts.length) {
144
- return /*#__PURE__*/_react.default.createElement("div", {
145
- className: styles.alertWrapper
146
- }, /*#__PURE__*/_react.default.createElement("div", {
147
- className: styles.alertWidth,
128
+ return (0, _emotion.jsx)("div", {
129
+ css: this.props.styles.alertWrapper
130
+ }, (0, _emotion.jsx)("div", {
131
+ css: this.props.styles.alertWidth,
148
132
  "data-automation": "sdk-results-requires-grading"
149
133
  }, alerts));
150
134
  }
@@ -157,23 +141,23 @@ var Info = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(_cl
157
141
  var alt = (0, _formatMessage.default)('Grade for this attempt: { grade }', {
158
142
  grade: letterGrade
159
143
  });
160
- return /*#__PURE__*/_react.default.createElement(_uiA11yContent.AccessibleContent, {
144
+ return (0, _emotion.jsx)(_uiA11yContent.AccessibleContent, {
161
145
  alt: alt
162
- }, /*#__PURE__*/_react.default.createElement(_uiView.View, {
146
+ }, (0, _emotion.jsx)(_uiView.View, {
163
147
  as: "div"
164
- }, /*#__PURE__*/_react.default.createElement(_uiText.Text, {
148
+ }, (0, _emotion.jsx)(_uiText.Text, {
165
149
  size: "xx-large",
166
150
  weight: "bold",
167
151
  color: "primary"
168
- }, letterGrade)), /*#__PURE__*/_react.default.createElement(_uiText.Text, {
152
+ }, letterGrade)), (0, _emotion.jsx)(_uiText.Text, {
169
153
  color: "secondary"
170
154
  }, gradeText));
171
155
  }
172
156
  }, {
173
157
  key: "renderScoreStats",
174
158
  value: function renderScoreStats() {
175
- return /*#__PURE__*/_react.default.createElement("div", {
176
- className: styles.scoreStats
159
+ return (0, _emotion.jsx)("div", {
160
+ css: this.props.styles.scoreStats
177
161
  }, this.renderProgress(), this.renderPointsDisplay());
178
162
  }
179
163
  }, {
@@ -183,10 +167,10 @@ var Info = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(_cl
183
167
  return null;
184
168
  }
185
169
 
186
- return /*#__PURE__*/_react.default.createElement("div", {
187
- className: styles.score,
170
+ return (0, _emotion.jsx)("div", {
171
+ css: this.props.styles.score,
188
172
  "data-automation": "sdk-info-score"
189
- }, /*#__PURE__*/_react.default.createElement(_uiProgress.ProgressCircle, {
173
+ }, (0, _emotion.jsx)(_uiProgress.ProgressCircle, {
190
174
  shouldAnimateOnMount: true,
191
175
  size: "large",
192
176
  screenReaderLabel: (0, _formatMessage.default)('Your Score'),
@@ -199,16 +183,16 @@ var Info = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(_cl
199
183
  }, {
200
184
  key: "renderPointsDisplay",
201
185
  value: function renderPointsDisplay() {
202
- return /*#__PURE__*/_react.default.createElement("div", {
203
- className: styles.infoWrapper
204
- }, /*#__PURE__*/_react.default.createElement(_uiA11yContent.AccessibleContent, {
186
+ return (0, _emotion.jsx)("div", {
187
+ css: this.props.styles.infoWrapper
188
+ }, (0, _emotion.jsx)(_uiA11yContent.AccessibleContent, {
205
189
  alt: this.pointsText
206
- }, /*#__PURE__*/_react.default.createElement(_uiText.Text, {
190
+ }, (0, _emotion.jsx)(_uiText.Text, {
207
191
  as: "div",
208
192
  color: "primary",
209
193
  size: "xx-large",
210
194
  weight: "bold"
211
- }, this.mainPointsText), /*#__PURE__*/_react.default.createElement(_uiText.Text, {
195
+ }, this.mainPointsText), (0, _emotion.jsx)(_uiText.Text, {
212
196
  color: "secondary"
213
197
  }, this.subPointsText)));
214
198
  }
@@ -219,29 +203,30 @@ var Info = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(_cl
219
203
  var alt = (0, _formatMessage.default)('Time for this attempt: { time }', {
220
204
  time: (0, _formatTimespan.formatTime)(this.props.quizSession.elapsedTime)
221
205
  });
222
- return /*#__PURE__*/_react.default.createElement(_uiA11yContent.AccessibleContent, {
206
+ return (0, _emotion.jsx)(_uiA11yContent.AccessibleContent, {
223
207
  alt: alt
224
- }, /*#__PURE__*/_react.default.createElement(_uiView.View, {
208
+ }, (0, _emotion.jsx)(_uiView.View, {
225
209
  as: "div"
226
- }, /*#__PURE__*/_react.default.createElement(_index.default, {
210
+ }, (0, _emotion.jsx)(_index.default, {
227
211
  fontSize: "xx-large",
228
212
  fontWeight: "bold",
229
213
  seconds: this.props.quizSession.elapsedTime
230
- })), /*#__PURE__*/_react.default.createElement(_uiText.Text, {
214
+ })), (0, _emotion.jsx)(_uiText.Text, {
231
215
  color: "secondary"
232
216
  }, attemptText));
233
217
  }
234
218
  }, {
235
219
  key: "render",
236
220
  value: function render() {
237
- return /*#__PURE__*/_react.default.createElement("div", null, this.renderAlert(), /*#__PURE__*/_react.default.createElement("div", {
238
- className: styles.wrapper
239
- }, /*#__PURE__*/_react.default.createElement("div", {
240
- className: (0, _classnames.default)('fs-mask', styles.info)
241
- }, /*#__PURE__*/_react.default.createElement(_uiA11yContent.ScreenReaderContent, null, /*#__PURE__*/_react.default.createElement(_uiHeading.Heading, {
221
+ return (0, _emotion.jsx)("div", null, this.renderAlert(), (0, _emotion.jsx)("div", {
222
+ css: this.props.styles.wrapper
223
+ }, (0, _emotion.jsx)("div", {
224
+ css: this.props.styles.info,
225
+ className: "fs-mask"
226
+ }, (0, _emotion.jsx)(_uiA11yContent.ScreenReaderContent, null, (0, _emotion.jsx)(_uiHeading.Heading, {
242
227
  level: "h2"
243
- }, (0, _formatMessage.default)('Assessment Statistics'))), this.props.restrictQuantitativeData ? this.renderLetterGrade() : this.renderScoreStats(), /*#__PURE__*/_react.default.createElement("div", {
244
- className: styles.infoWrapper
228
+ }, (0, _formatMessage.default)('Assessment Statistics'))), this.props.restrictQuantitativeData ? this.renderLetterGrade() : this.renderScoreStats(), (0, _emotion.jsx)("div", {
229
+ css: this.props.styles.infoWrapper
245
230
  }, this.renderTime()))));
246
231
  }
247
232
  }, {
@@ -346,7 +331,9 @@ var Info = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(_cl
346
331
  quizSession: _reactImmutableProptypes.default.record.isRequired,
347
332
  quizSessionResult: _reactImmutableProptypes.default.record.isRequired,
348
333
  restrictQuantitativeData: _propTypes.default.bool,
349
- sessionItemResults: _reactImmutableProptypes.default.list.isRequired
334
+ sessionItemResults: _reactImmutableProptypes.default.list.isRequired,
335
+ // eslint-disable-next-line react/require-default-props,react/forbid-prop-types
336
+ styles: _propTypes.default.object
350
337
  }, _class2.defaultProps = {
351
338
  gradingScheme: [],
352
339
  restrictQuantitativeData: false
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ var generateStyle = function generateStyle(componentTheme) {
9
+ return {
10
+ alertWrapper: {
11
+ display: 'flex',
12
+ flexDirection: 'row',
13
+ alignItems: 'center',
14
+ justifyContent: 'center',
15
+ marginTop: componentTheme.alertWrapperMargin
16
+ },
17
+ alertWidth: {
18
+ flexGrow: 1,
19
+ maxWidth: '33rem,'
20
+ },
21
+ wrapper: {
22
+ padding: 'none',
23
+ margin: 'none',
24
+ display: 'flex',
25
+ alignItems: 'center',
26
+ justifyContent: 'center'
27
+ },
28
+ info: {
29
+ alignSelf: 'center',
30
+ display: 'flex',
31
+ flexWrap: 'wrap',
32
+ alignItems: 'center',
33
+ justifyContent: 'center'
34
+ },
35
+ scoreStats: {
36
+ display: 'flex',
37
+ flexWrap: 'wrap',
38
+ alignItems: 'center',
39
+ justifyContent: 'flex-start',
40
+ flex: '1 1 auto'
41
+ },
42
+ score: {
43
+ display: 'flex',
44
+ alignItems: 'center',
45
+ flex: '1 1 auto',
46
+ margin: componentTheme.scoreMargin,
47
+ height: '150px',
48
+ width: '150px',
49
+
50
+ /*
51
+ progress modal sets a -1 z-index on its content
52
+ and this raises it above the app background
53
+ */
54
+ zIndex: componentTheme.scoreZIndex
55
+ },
56
+ scorePercentage: {
57
+ fontSize: componentTheme.scorePercentageFontSize,
58
+ fontWeight: componentTheme.scorePercentageFontWeight
59
+ },
60
+ infoWrapper: {
61
+ flex: '1 1 auto',
62
+ margin: componentTheme.infoWrapperMargin,
63
+ paddingLeft: componentTheme.inforWrapperPadding
64
+ }
65
+ };
66
+ };
67
+
68
+ var _default = generateStyle;
69
+ exports.default = _default;
@@ -3,9 +3,9 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.default = generator;
6
+ exports.default = void 0;
7
7
 
8
- function generator(_ref) {
8
+ var generateComponentTheme = function generateComponentTheme(_ref) {
9
9
  var spacing = _ref.spacing,
10
10
  typography = _ref.typography;
11
11
  return {
@@ -17,4 +17,7 @@ function generator(_ref) {
17
17
  infoWrapperMargin: spacing.small,
18
18
  inforWrapperPadding: spacing.small
19
19
  };
20
- }
20
+ };
21
+
22
+ var _default = generateComponentTheme;
23
+ exports.default = _default;
@@ -2,8 +2,6 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
@@ -17,27 +15,21 @@ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits
17
15
 
18
16
  var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper"));
19
17
 
20
- var _react = _interopRequireWildcard(require("react"));
18
+ var _react = require("react");
21
19
 
22
20
  var _propTypes = _interopRequireDefault(require("prop-types"));
23
21
 
24
22
  var _uiHeading = require("@instructure/ui-heading");
25
23
 
26
- var _uiThemeable = require("@instructure/ui-themeable");
24
+ var _emotion = require("@instructure/emotion");
25
+
26
+ var _styles = _interopRequireDefault(require("./styles.js"));
27
27
 
28
28
  var _theme = _interopRequireDefault(require("./theme.js"));
29
29
 
30
30
  var _dec, _class, _class2, _temp;
31
31
 
32
- var styles = {
33
- componentId: 'bEEaV',
34
- template: function template(theme) {
35
- return "\n\n.bEEaV_caGd{margin:".concat(theme.contentMargin || 'inherit', "}\n\n.bEEaV_biBD{padding-top:").concat(theme.childrenPadding || 'inherit', "}");
36
- },
37
- 'content': 'bEEaV_caGd',
38
- 'children': 'bEEaV_biBD'
39
- };
40
- var Caption = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_Component) {
32
+ var Caption = (_dec = (0, _emotion.withStyle)(_styles.default, _theme.default), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_Component) {
41
33
  (0, _inherits2.default)(Caption, _Component);
42
34
 
43
35
  var _super = (0, _createSuper2.default)(Caption);
@@ -50,15 +42,15 @@ var Caption = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(
50
42
  (0, _createClass2.default)(Caption, [{
51
43
  key: "render",
52
44
  value: function render() {
53
- return /*#__PURE__*/_react.default.createElement("div", {
54
- className: styles.content
55
- }, /*#__PURE__*/_react.default.createElement(_uiHeading.Heading, {
45
+ return (0, _emotion.jsx)("div", {
46
+ css: this.props.styles.content
47
+ }, (0, _emotion.jsx)(_uiHeading.Heading, {
56
48
  level: "reset",
57
49
  as: "h2",
58
50
  border: "bottom",
59
51
  color: "primary"
60
- }, this.props.text), /*#__PURE__*/_react.default.createElement("div", {
61
- className: styles.children
52
+ }, this.props.text), (0, _emotion.jsx)("div", {
53
+ css: this.props.styles.children
62
54
  }, this.props.children));
63
55
  }
64
56
  }]);
@@ -66,7 +58,8 @@ var Caption = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(
66
58
  return Caption;
67
59
  }(_react.Component), _class2.propTypes = {
68
60
  text: _propTypes.default.string,
69
- children: _propTypes.default.oneOfType([_propTypes.default.object, _propTypes.default.arrayOf(_propTypes.default.object)])
61
+ children: _propTypes.default.oneOfType([_propTypes.default.object, _propTypes.default.arrayOf(_propTypes.default.object)]),
62
+ styles: _propTypes.default.object
70
63
  }, _class2.defaultProps = {
71
64
  text: void 0,
72
65
  children: void 0
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ var generateStyle = function generateStyle(componentTheme) {
9
+ return {
10
+ content: {
11
+ margin: componentTheme.contentMargin
12
+ },
13
+ children: {
14
+ paddingTop: componentTheme.childrenPadding
15
+ }
16
+ };
17
+ };
18
+
19
+ var _default = generateStyle;
20
+ exports.default = _default;
@@ -3,9 +3,9 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.default = generator;
6
+ exports.default = void 0;
7
7
 
8
- function generator(_ref) {
8
+ var generateComponentTheme = function generateComponentTheme(_ref) {
9
9
  var spacing = _ref.spacing,
10
10
  borders = _ref.borders,
11
11
  colors = _ref.colors;
@@ -13,4 +13,7 @@ function generator(_ref) {
13
13
  contentMargin: spacing.small,
14
14
  childrenPadding: spacing.xSmall
15
15
  };
16
- }
16
+ };
17
+
18
+ var _default = generateComponentTheme;
19
+ exports.default = _default;