@instructure/quiz-core 20.11.2 → 20.11.3-rc.10

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 (53) hide show
  1. package/es/common/components/layout/navbar/presenter.js +24 -18
  2. package/es/common/components/layout/navbar/styles.js +8 -0
  3. package/es/common/components/layout/navbar/theme.js +10 -0
  4. package/es/moderating/components/resources/ModerateTable/presenter.js +44 -46
  5. package/es/moderating/components/resources/ModerateTable/styles.js +23 -0
  6. package/es/moderating/components/resources/ModerateTable/theme.js +4 -2
  7. package/es/moderating/components/resources/ModerateTableRow/presenter.js +63 -68
  8. package/es/moderating/components/resources/ModerateTableRow/styles.js +25 -0
  9. package/es/moderating/components/resources/ModerateTableRow/theme.js +4 -2
  10. package/es/reporting/components/itemAnalysis/AnswerFrequencySummary/index.js +1 -1
  11. package/es/reporting/components/quizAnalysis/QuizAnalysisOverview.js +34 -41
  12. package/es/reporting/components/quizAnalysis/styles.js +27 -0
  13. package/es/reporting/components/quizAnalysis/theme.js +4 -2
  14. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/LegacyChoiceType/presenter.js +1 -1
  15. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/ScoreDistributionType/Table/index.js +1 -1
  16. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/AfsPartsContainer/presenter.js +33 -27
  17. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/AfsPartsContainer/styles.js +14 -0
  18. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/AfsPartsContainer/theme.js +4 -2
  19. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/AggregationTable/presenter.js +1 -1
  20. package/es/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/ChoiceTypeTable/presenter.js +1 -1
  21. package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/presenter.js +80 -79
  22. package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/styles.js +75 -0
  23. package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/theme.js +4 -2
  24. package/es/reporting/components/resources/NewQuizAndItemAnalysis/presenter.js +47 -49
  25. package/es/reporting/components/resources/NewQuizAndItemAnalysis/styles.js +14 -0
  26. package/es/reporting/components/resources/NewQuizAndItemAnalysis/theme.js +4 -2
  27. package/lib/common/components/layout/navbar/presenter.js +26 -22
  28. package/lib/common/components/layout/navbar/styles.js +16 -0
  29. package/lib/common/components/layout/navbar/theme.js +18 -0
  30. package/lib/moderating/components/resources/ModerateTable/presenter.js +43 -50
  31. package/lib/moderating/components/resources/ModerateTable/styles.js +33 -0
  32. package/lib/moderating/components/resources/ModerateTable/theme.js +6 -3
  33. package/lib/moderating/components/resources/ModerateTableRow/presenter.js +61 -70
  34. package/lib/moderating/components/resources/ModerateTableRow/styles.js +33 -0
  35. package/lib/moderating/components/resources/ModerateTableRow/theme.js +6 -3
  36. package/lib/reporting/components/itemAnalysis/AnswerFrequencySummary/index.js +1 -1
  37. package/lib/reporting/components/quizAnalysis/QuizAnalysisOverview.js +33 -43
  38. package/lib/reporting/components/quizAnalysis/styles.js +37 -0
  39. package/lib/reporting/components/quizAnalysis/theme.js +6 -3
  40. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/LegacyChoiceType/presenter.js +1 -1
  41. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/ScoreDistributionType/Table/index.js +1 -1
  42. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/AfsPartsContainer/presenter.js +29 -27
  43. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/AfsPartsContainer/styles.js +24 -0
  44. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/AfsPartsContainer/theme.js +6 -3
  45. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/AggregationTable/presenter.js +1 -1
  46. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/AnswerFrequencySummary/shared/ChoiceTypeTable/presenter.js +1 -1
  47. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/presenter.js +82 -84
  48. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/styles.js +85 -0
  49. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/theme.js +6 -3
  50. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/presenter.js +43 -48
  51. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/styles.js +22 -0
  52. package/lib/reporting/components/resources/NewQuizAndItemAnalysis/theme.js +6 -3
  53. package/package.json +10 -10
@@ -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,7 +15,7 @@ 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
 
@@ -43,7 +41,7 @@ var _uiIcons = require("@instructure/ui-icons");
43
41
 
44
42
  var _uiButtons = require("@instructure/ui-buttons");
45
43
 
46
- var _uiThemeable = require("@instructure/ui-themeable");
44
+ var _emotion = require("@instructure/emotion");
47
45
 
48
46
  var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/es/format-message"));
49
47
 
@@ -51,23 +49,14 @@ var _quizCommon = require("@instructure/quiz-common");
51
49
 
52
50
  var _index = _interopRequireDefault(require("../../../../common/components/shared/FormattedDuration/index.js"));
53
51
 
52
+ var _styles = _interopRequireDefault(require("./styles.js"));
53
+
54
54
  var _theme = _interopRequireDefault(require("./theme.js"));
55
55
 
56
56
  var _dec, _class, _class2, _temp;
57
57
 
58
- var styles = {
59
- componentId: 'FXOGU',
60
- template: function template(theme) {
61
- return "\n\n.FXOGU_ffXX,[dir=ltr] .FXOGU_ffXX,[dir=rtl] .FXOGU_ffXX{float:right}\n\n.FXOGU_clcl{max-width:15rem}\n\n.FXOGU_ecVa{align-items:center;display:flex}\n\n.FXOGU_eTxg{font-weight:400;margin-left:".concat(theme.avatarNameMargin || 'inherit', ";overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\n\n.FXOGU_cCBI:not(:first-child){padding-top:").concat(theme.tableDataItemPadding || 'inherit', "}");
62
- },
63
- 'moderateButton': 'FXOGU_ffXX',
64
- 'tableData': 'FXOGU_clcl',
65
- 'avatarRow': 'FXOGU_ecVa',
66
- 'avatarName': 'FXOGU_eTxg',
67
- 'tableDataItem': 'FXOGU_cCBI'
68
- };
69
58
  var DASHES = '---';
70
- var ModerateTableRow = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_withI18nSupport) {
59
+ var ModerateTableRow = (_dec = (0, _emotion.withStyle)(_styles.default, _theme.default), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_withI18nSupport) {
71
60
  (0, _inherits2.default)(ModerateTableRow, _withI18nSupport);
72
61
 
73
62
  var _super = (0, _createSuper2.default)(ModerateTableRow);
@@ -99,19 +88,19 @@ var ModerateTableRow = (_dec = (0, _uiThemeable.themeable)(_theme.default, style
99
88
  var iconTitle = (0, _formatMessage.default)('Autograde error on attempt { attemptNumber }.', {
100
89
  attemptNumber: attemptNumber
101
90
  });
102
- var link = autogradefailed ? /*#__PURE__*/_react.default.createElement(_uiLink.Link, {
91
+ var link = autogradefailed ? (0, _emotion.jsx)(_uiLink.Link, {
103
92
  onClick: _this.onResultsLinkClick(quizSessionId),
104
- icon: /*#__PURE__*/_react.default.createElement(_uiIcons.IconWarningLine, {
93
+ icon: (0, _emotion.jsx)(_uiIcons.IconWarningLine, {
105
94
  color: "warning",
106
95
  title: iconTitle
107
96
  }),
108
97
  iconPlacement: "end"
109
- }, message) : /*#__PURE__*/_react.default.createElement(_uiLink.Link, {
98
+ }, message) : (0, _emotion.jsx)(_uiLink.Link, {
110
99
  onClick: _this.onResultsLinkClick(quizSessionId)
111
100
  }, message);
112
- return /*#__PURE__*/_react.default.createElement("div", {
101
+ return (0, _emotion.jsx)("div", {
113
102
  key: quizSessionId,
114
- className: styles.tableDataItem
103
+ css: _this.props.styles.tableDataItem
115
104
  }, link);
116
105
  };
117
106
 
@@ -119,14 +108,14 @@ var ModerateTableRow = (_dec = (0, _uiThemeable.themeable)(_theme.default, style
119
108
  var iconTitle = (0, _formatMessage.default)('Autograde error on attempt { attemptNumber }.', {
120
109
  attemptNumber: attemptNumber
121
110
  });
122
- var icon = autogradefailed ? /*#__PURE__*/_react.default.createElement(_uiIcons.IconWarningLine, {
111
+ var icon = autogradefailed ? (0, _emotion.jsx)(_uiIcons.IconWarningLine, {
123
112
  color: "warning",
124
113
  title: iconTitle
125
114
  }) : null;
126
- return /*#__PURE__*/_react.default.createElement("div", {
115
+ return (0, _emotion.jsx)("div", {
127
116
  key: quizSessionId,
128
- className: styles.tableDataItem
129
- }, /*#__PURE__*/_react.default.createElement(_uiView.View, {
117
+ css: _this.props.styles.tableDataItem
118
+ }, (0, _emotion.jsx)(_uiView.View, {
130
119
  margin: "0 x-small 0 0"
131
120
  }, message), icon);
132
121
  };
@@ -158,12 +147,11 @@ var ModerateTableRow = (_dec = (0, _uiThemeable.themeable)(_theme.default, style
158
147
  value: function renderScores(quizSessions) {
159
148
  var _this3 = this;
160
149
 
161
- var noScore = /*#__PURE__*/_react.default.createElement("div", {
162
- className: styles.tableDataItem
163
- }, /*#__PURE__*/_react.default.createElement(_uiA11yContent.AccessibleContent, {
150
+ var noScore = (0, _emotion.jsx)("div", {
151
+ css: this.props.styles.tableDataItem
152
+ }, (0, _emotion.jsx)(_uiA11yContent.AccessibleContent, {
164
153
  alt: (0, _formatMessage.default)('No Score')
165
154
  }, DASHES));
166
-
167
155
  if (!quizSessions.length) return noScore;
168
156
  return quizSessions.reduce(function (renderedScores, quizSession) {
169
157
  var result = quizSession.findAuthoritativeResult();
@@ -189,14 +177,14 @@ var ModerateTableRow = (_dec = (0, _uiThemeable.themeable)(_theme.default, style
189
177
 
190
178
  if (quizSession.inProgress() || quizSession.reopeningGraded()) {
191
179
  var alt = (0, _formatMessage.default)('In progress, score not available');
192
- message = /*#__PURE__*/_react.default.createElement(_uiA11yContent.AccessibleContent, {
180
+ message = (0, _emotion.jsx)(_uiA11yContent.AccessibleContent, {
193
181
  alt: alt
194
182
  }, DASHES);
195
183
  }
196
184
 
197
- renderedScores.push( /*#__PURE__*/_react.default.createElement("div", {
185
+ renderedScores.push((0, _emotion.jsx)("div", {
198
186
  key: result.get('id'),
199
- className: styles.tableDataItem
187
+ css: _this3.props.styles.tableDataItem
200
188
  }, message));
201
189
  return renderedScores;
202
190
  }, []);
@@ -227,9 +215,9 @@ var ModerateTableRow = (_dec = (0, _uiThemeable.themeable)(_theme.default, style
227
215
  var maxAttempts = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : quizSessions.length;
228
216
 
229
217
  if (!quizSessions.length) {
230
- return /*#__PURE__*/_react.default.createElement("div", {
231
- className: styles.tableDataItem
232
- }, /*#__PURE__*/_react.default.createElement(_uiA11yContent.AccessibleContent, {
218
+ return (0, _emotion.jsx)("div", {
219
+ css: this.props.styles.tableDataItem
220
+ }, (0, _emotion.jsx)(_uiA11yContent.AccessibleContent, {
233
221
  alt: (0, _formatMessage.default)('No Attempt')
234
222
  }, DASHES));
235
223
  }
@@ -250,39 +238,43 @@ var ModerateTableRow = (_dec = (0, _uiThemeable.themeable)(_theme.default, style
250
238
  }, {
251
239
  key: "renderTimes",
252
240
  value: function renderTimes(quizSessions) {
241
+ var _this5 = this;
242
+
253
243
  if (!quizSessions.length) {
254
- return /*#__PURE__*/_react.default.createElement("div", {
255
- className: styles.tableDataItem
256
- }, /*#__PURE__*/_react.default.createElement(_uiA11yContent.AccessibleContent, {
244
+ return (0, _emotion.jsx)("div", {
245
+ css: this.props.styles.tableDataItem
246
+ }, (0, _emotion.jsx)(_uiA11yContent.AccessibleContent, {
257
247
  alt: (0, _formatMessage.default)('No Time')
258
248
  }, DASHES));
259
249
  }
260
250
 
261
251
  return quizSessions.map(function (quizSession, idx) {
262
- var message = /*#__PURE__*/_react.default.createElement(_index.default, {
252
+ var message = (0, _emotion.jsx)(_index.default, {
263
253
  seconds: quizSession.elapsedTime
264
254
  });
265
255
 
266
256
  if (quizSession.inProgress() || quizSession.reopeningGraded()) {
267
257
  var alt = (0, _formatMessage.default)('In progress, time not available');
268
- message = /*#__PURE__*/_react.default.createElement(_uiA11yContent.AccessibleContent, {
258
+ message = (0, _emotion.jsx)(_uiA11yContent.AccessibleContent, {
269
259
  alt: alt
270
260
  }, DASHES);
271
261
  }
272
262
 
273
- return /*#__PURE__*/_react.default.createElement("div", {
263
+ return (0, _emotion.jsx)("div", {
274
264
  key: quizSession.get('id'),
275
- className: styles.tableDataItem
265
+ css: _this5.props.styles.tableDataItem
276
266
  }, message);
277
267
  });
278
268
  }
279
269
  }, {
280
270
  key: "renderLogLinks",
281
271
  value: function renderLogLinks(quizSessions) {
272
+ var _this6 = this;
273
+
282
274
  if (!quizSessions.length) {
283
- return /*#__PURE__*/_react.default.createElement("div", {
284
- className: styles.tableDataItem
285
- }, /*#__PURE__*/_react.default.createElement(_uiA11yContent.AccessibleContent, {
275
+ return (0, _emotion.jsx)("div", {
276
+ css: this.props.styles.tableDataItem
277
+ }, (0, _emotion.jsx)(_uiA11yContent.AccessibleContent, {
286
278
  alt: (0, _formatMessage.default)('No Log')
287
279
  }, DASHES));
288
280
  }
@@ -302,10 +294,10 @@ var ModerateTableRow = (_dec = (0, _uiThemeable.themeable)(_theme.default, style
302
294
  });
303
295
  }
304
296
 
305
- return /*#__PURE__*/_react.default.createElement("div", {
297
+ return (0, _emotion.jsx)("div", {
306
298
  key: quizSessionId,
307
- className: styles.tableDataItem
308
- }, /*#__PURE__*/_react.default.createElement(_uiLink.Link, {
299
+ css: _this6.props.styles.tableDataItem
300
+ }, (0, _emotion.jsx)(_uiLink.Link, {
309
301
  onClick: onClick
310
302
  }, message));
311
303
  });
@@ -318,16 +310,16 @@ var ModerateTableRow = (_dec = (0, _uiThemeable.themeable)(_theme.default, style
318
310
  var displayContent;
319
311
 
320
312
  if (!accommodations || accommodations.length === 0) {
321
- displayContent = /*#__PURE__*/_react.default.createElement(_uiText.Text, {
313
+ displayContent = (0, _emotion.jsx)(_uiText.Text, {
322
314
  color: "secondary"
323
315
  }, (0, _formatMessage.default)('None'));
324
316
  } else {
325
- displayContent = /*#__PURE__*/_react.default.createElement(_uiList.List, {
317
+ displayContent = (0, _emotion.jsx)(_uiList.List, {
326
318
  isUnstyled: true
327
319
  }, accommodations.map(function (elem) {
328
- return /*#__PURE__*/_react.default.createElement(_uiList.List.Item, {
320
+ return (0, _emotion.jsx)(_uiList.List.Item, {
329
321
  key: elem.name
330
- }, /*#__PURE__*/_react.default.createElement(_uiText.Text, {
322
+ }, (0, _emotion.jsx)(_uiText.Text, {
331
323
  color: "primary"
332
324
  }, (0, _formatMessage.default)('{ name }: { value }', elem)));
333
325
  }));
@@ -335,13 +327,13 @@ var ModerateTableRow = (_dec = (0, _uiThemeable.themeable)(_theme.default, style
335
327
  // so that the screen reader will read the accommodations first, and then the button
336
328
 
337
329
 
338
- return /*#__PURE__*/_react.default.createElement(_uiTable.Table.Cell, null, /*#__PURE__*/_react.default.createElement(_uiFlex.Flex, {
330
+ return (0, _emotion.jsx)(_uiTable.Table.Cell, null, (0, _emotion.jsx)(_uiFlex.Flex, {
339
331
  direction: "row-reverse",
340
332
  justifyItems: "end"
341
- }, /*#__PURE__*/_react.default.createElement(_uiFlex.Flex.Item, {
333
+ }, (0, _emotion.jsx)(_uiFlex.Flex.Item, {
342
334
  shouldShrink: true,
343
335
  "data-automation": "sdk-moderate-accommodations-text"
344
- }, displayContent), /*#__PURE__*/_react.default.createElement(_uiFlex.Flex.Item, null, /*#__PURE__*/_react.default.createElement(_uiButtons.IconButton, {
336
+ }, displayContent), (0, _emotion.jsx)(_uiFlex.Flex.Item, null, (0, _emotion.jsx)(_uiButtons.IconButton, {
345
337
  margin: "0 x-small 0 0",
346
338
  withBackground: false,
347
339
  withBorder: false,
@@ -356,9 +348,9 @@ var ModerateTableRow = (_dec = (0, _uiThemeable.themeable)(_theme.default, style
356
348
  key: "renderModerate",
357
349
  value: function renderModerate() {
358
350
  if (this.props.shouldRenderModerateButton) {
359
- return /*#__PURE__*/_react.default.createElement(_uiTable.Table.Cell, null, /*#__PURE__*/_react.default.createElement("div", {
360
- className: styles.moderateButton
361
- }, /*#__PURE__*/_react.default.createElement(_uiButtons.Button, {
351
+ return (0, _emotion.jsx)(_uiTable.Table.Cell, null, (0, _emotion.jsx)("div", {
352
+ css: this.props.styles.moderateButton
353
+ }, (0, _emotion.jsx)(_uiButtons.Button, {
362
354
  size: "small",
363
355
  onClick: this.onModerateButtonClick,
364
356
  ref: this.handleModerateRef,
@@ -375,20 +367,18 @@ var ModerateTableRow = (_dec = (0, _uiThemeable.themeable)(_theme.default, style
375
367
  avatarUrl = _this$props$rowData.avatar,
376
368
  maxAttempts = _this$props$rowData.maxAttempts,
377
369
  accommodations = _this$props$rowData.accommodations;
378
- var tableData = styles.tableData,
379
- avatarRow = styles.avatarRow,
380
- avatarName = styles.avatarName;
381
- return /*#__PURE__*/_react.default.createElement(_uiTable.Table.Row, null, /*#__PURE__*/_react.default.createElement(_uiTable.Table.RowHeader, {
382
- className: tableData
383
- }, /*#__PURE__*/_react.default.createElement("span", {
384
- className: avatarRow
385
- }, /*#__PURE__*/_react.default.createElement(_uiA11yContent.PresentationContent, null, /*#__PURE__*/_react.default.createElement(_uiAvatar.Avatar, {
370
+ var _this$props$styles = this.props.styles,
371
+ avatarRow = _this$props$styles.avatarRow,
372
+ avatarName = _this$props$styles.avatarName;
373
+ return (0, _emotion.jsx)(_uiTable.Table.Row, null, (0, _emotion.jsx)(_uiTable.Table.RowHeader, null, (0, _emotion.jsx)("span", {
374
+ css: avatarRow
375
+ }, (0, _emotion.jsx)(_uiA11yContent.PresentationContent, null, (0, _emotion.jsx)(_uiAvatar.Avatar, {
386
376
  name: name,
387
377
  src: avatarUrl,
388
378
  size: "small"
389
- })), /*#__PURE__*/_react.default.createElement("span", {
390
- className: avatarName
391
- }, name))), !this.props.anonymousGrading && /*#__PURE__*/_react.default.createElement(_uiTable.Table.Cell, null, this.renderAttempts(quizSessions, maxAttempts)), !this.props.anonymousGrading && /*#__PURE__*/_react.default.createElement(_uiTable.Table.Cell, null, this.renderScores(quizSessions)), !this.props.anonymousGrading && /*#__PURE__*/_react.default.createElement(_uiTable.Table.Cell, null, this.renderTimes(quizSessions)), !this.props.anonymousGrading && /*#__PURE__*/_react.default.createElement(_uiTable.Table.Cell, null, this.renderLogLinks(quizSessions)), !this.props.anonymousGrading && this.renderAccommodations(accommodations), this.renderModerate());
379
+ })), (0, _emotion.jsx)("span", {
380
+ css: avatarName
381
+ }, name))), !this.props.anonymousGrading && (0, _emotion.jsx)(_uiTable.Table.Cell, null, this.renderAttempts(quizSessions, maxAttempts)), !this.props.anonymousGrading && (0, _emotion.jsx)(_uiTable.Table.Cell, null, this.renderScores(quizSessions)), !this.props.anonymousGrading && (0, _emotion.jsx)(_uiTable.Table.Cell, null, this.renderTimes(quizSessions)), !this.props.anonymousGrading && (0, _emotion.jsx)(_uiTable.Table.Cell, null, this.renderLogLinks(quizSessions)), !this.props.anonymousGrading && this.renderAccommodations(accommodations), this.renderModerate());
392
382
  }
393
383
  }]);
394
384
  ModerateTableRow.displayName = "ModerateTableRow";
@@ -414,7 +404,8 @@ var ModerateTableRow = (_dec = (0, _uiThemeable.themeable)(_theme.default, style
414
404
  }))
415
405
  }).isRequired,
416
406
  shouldRenderModerateButton: _propTypes.default.bool,
417
- focusTarget: _propTypes.default.string
407
+ focusTarget: _propTypes.default.string,
408
+ styles: _propTypes.default.object
418
409
  }, _class2.defaultProps = {
419
410
  displayScoreAsPercentage: true,
420
411
  shouldRenderModerateButton: true,
@@ -0,0 +1,33 @@
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
+ moderateButton: {
11
+ float: 'right'
12
+ },
13
+ avatarRow: {
14
+ display: 'flex',
15
+ alignItems: 'center'
16
+ },
17
+ avatarName: {
18
+ marginLeft: componentTheme.avatarNameMargin,
19
+ overflow: 'hidden',
20
+ textOverflow: 'ellipsis',
21
+ whiteSpace: 'nowrap',
22
+ fontWeight: 'initial'
23
+ },
24
+ tableDataItem: {
25
+ ':not(:first-child)': {
26
+ paddingTop: componentTheme.tableDataItemPadding
27
+ }
28
+ }
29
+ };
30
+ };
31
+
32
+ var _default = generateStyle;
33
+ exports.default = _default;
@@ -3,12 +3,15 @@
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
  return {
11
11
  avatarNameMargin: spacing.xSmall,
12
12
  tableDataItemPadding: spacing.xxSmall
13
13
  };
14
- }
14
+ };
15
+
16
+ var _default = generateComponentTheme;
17
+ exports.default = _default;
@@ -176,7 +176,7 @@ var AnswerFrequencySummary = (_dec = (0, _uiThemeable.themeable)(_theme.default,
176
176
  }, (0, _formatMessage.default)('Respondents')), /*#__PURE__*/_react.default.createElement(_uiTable.Table.ColHeader, {
177
177
  id: "answer-frequency-summary-answer-ratio",
178
178
  className: styles.answerRatio
179
- }, (0, _formatMessage.default)('%')))), /*#__PURE__*/_react.default.createElement(_uiTable.Table.Body, null, choiceInfo.toArray().map(this.renderAnswerTableRow), this.renderAnswerTableRow(this.unansweredChoiceInfo, choiceInfo.size))));
179
+ }, (0, _formatMessage.default)('Percentage')))), /*#__PURE__*/_react.default.createElement(_uiTable.Table.Body, null, choiceInfo.toArray().map(this.renderAnswerTableRow), this.renderAnswerTableRow(this.unansweredChoiceInfo, choiceInfo.size))));
180
180
  }
181
181
  }]);
182
182
  AnswerFrequencySummary.displayName = "AnswerFrequencySummary";
@@ -29,7 +29,7 @@ var _uiMetric = require("@instructure/ui-metric");
29
29
 
30
30
  var _uiText = require("@instructure/ui-text");
31
31
 
32
- var _uiThemeable = require("@instructure/ui-themeable");
32
+ var _emotion = require("@instructure/emotion");
33
33
 
34
34
  var _index = _interopRequireDefault(require("../../../common/components/shared/FormattedDuration/index.js"));
35
35
 
@@ -43,26 +43,17 @@ var _index3 = _interopRequireDefault(require("../charts/CentileDistribution/inde
43
43
 
44
44
  var _index4 = _interopRequireDefault(require("../MetricsListItem/index.js"));
45
45
 
46
+ var _styles = _interopRequireDefault(require("./styles.js"));
47
+
46
48
  var _theme = _interopRequireDefault(require("./theme.js"));
47
49
 
48
50
  var _dec, _class, _class2, _temp;
49
51
 
50
- var styles = {
51
- componentId: 'fOAfX',
52
- template: function template(theme) {
53
- return "\n\n.fOAfX_bGBk{padding:".concat(theme.rootPadding || 'inherit', "}\n\n.fOAfX_CIyo{padding-bottom:").concat(theme.metricWrapperPadding || 'inherit', "}\n\n.fOAfX_CIyo,.fOAfX_gasz{margin-top:").concat(theme.wrapperMargin || 'inherit', "}\n\n@media screen and (--tabletBreakPoint){.fOAfX_eiMu{flex-basis:33.3%}}\n\n@media screen and (--phoneBreakPoint){.fOAfX_eiMu{flex-basis:50%}}");
54
- },
55
- 'root': 'fOAfX_bGBk',
56
- 'metricWrapper': 'fOAfX_CIyo',
57
- 'wrapper': 'fOAfX_gasz',
58
- 'metric': 'fOAfX_eiMu'
59
- };
60
-
61
- var _ref = /*#__PURE__*/_react.default.createElement("br", null);
52
+ var _ref = (0, _emotion.jsx)("br", null);
62
53
 
63
- var _ref2 = /*#__PURE__*/_react.default.createElement(_Spinner.default, null);
54
+ var _ref2 = (0, _emotion.jsx)(_Spinner.default, null);
64
55
 
65
- var QuizAnalysisOverview = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_Component) {
56
+ var QuizAnalysisOverview = (_dec = (0, _emotion.withStyle)(_styles.default, _theme.default), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_Component) {
66
57
  (0, _inherits2.default)(QuizAnalysisOverview, _Component);
67
58
 
68
59
  var _super = (0, _createSuper2.default)(QuizAnalysisOverview);
@@ -81,10 +72,10 @@ var QuizAnalysisOverview = (_dec = (0, _uiThemeable.themeable)(_theme.default, s
81
72
  _this.renderBatchTimestamp = function () {
82
73
  if (_this.props.quizAnalysis.batchTimestamp) {
83
74
  var timestamp = Date.parse(_this.props.quizAnalysis.batchTimestamp);
84
- return /*#__PURE__*/_react.default.createElement(_uiText.Text, {
75
+ return (0, _emotion.jsx)(_uiText.Text, {
85
76
  color: "secondary",
86
77
  size: "x-small"
87
- }, _ref, /*#__PURE__*/_react.default.createElement("b", null, (0, _formatMessage.default)('Data Last Updated:')), "\xA0", _formatMessage.default.date(timestamp, 'medium'));
78
+ }, _ref, (0, _emotion.jsx)("b", null, (0, _formatMessage.default)('Data Last Updated:')), "\xA0", _formatMessage.default.date(timestamp, 'medium'));
88
79
  }
89
80
  };
90
81
 
@@ -95,49 +86,47 @@ var QuizAnalysisOverview = (_dec = (0, _uiThemeable.themeable)(_theme.default, s
95
86
  key: "defaulMetrics",
96
87
  value: function defaulMetrics() {
97
88
  var quizAnalysis = this.props.quizAnalysis;
98
-
99
- var formattedElapsedTime = /*#__PURE__*/_react.default.createElement(_index.default, {
89
+ var formattedElapsedTime = (0, _emotion.jsx)(_index.default, {
100
90
  fontSize: "x-large",
101
91
  seconds: quizAnalysis.meanElapsedTime()
102
92
  });
103
-
104
- return /*#__PURE__*/_react.default.createElement(_uiMetric.MetricGroup, null, /*#__PURE__*/_react.default.createElement(_index4.default, {
93
+ return (0, _emotion.jsx)(_uiMetric.MetricGroup, null, (0, _emotion.jsx)(_index4.default, {
105
94
  key: "highScore",
106
95
  renderLabel: (0, _formatMessage.default)('High Score'),
107
96
  renderValue: quizAnalysis.highScore(),
108
- className: styles.metric,
97
+ css: this.props.styles.metric,
109
98
  isGroupChild: true
110
- }), /*#__PURE__*/_react.default.createElement(_index4.default, {
99
+ }), (0, _emotion.jsx)(_index4.default, {
111
100
  key: "lowScore",
112
101
  renderLabel: (0, _formatMessage.default)('Low Score'),
113
102
  renderValue: quizAnalysis.lowScore(),
114
- className: styles.metric,
103
+ css: this.props.styles.metric,
115
104
  isGroupChild: true
116
- }), /*#__PURE__*/_react.default.createElement(_index4.default, {
105
+ }), (0, _emotion.jsx)(_index4.default, {
117
106
  key: "meanScore",
118
107
  renderLabel: (0, _formatMessage.default)('Mean Score'),
119
108
  renderValue: quizAnalysis.meanScore(),
120
- className: styles.metric,
109
+ css: this.props.styles.metric,
121
110
  isGroupChild: true
122
- }), /*#__PURE__*/_react.default.createElement(_index4.default, {
111
+ }), (0, _emotion.jsx)(_index4.default, {
123
112
  key: "standardDeviation",
124
113
  renderLabel: (0, _formatMessage.default)('Standard Deviation'),
125
114
  renderValue: quizAnalysis.standardDeviation(),
126
- className: styles.metric,
115
+ css: this.props.styles.metric,
127
116
  isGroupChild: true
128
- }), /*#__PURE__*/_react.default.createElement(_index4.default, {
117
+ }), (0, _emotion.jsx)(_index4.default, {
129
118
  key: "meanElapsedTime",
130
119
  renderLabel: (0, _formatMessage.default)('Mean Elapsed Time'),
131
- renderValue: /*#__PURE__*/_react.default.createElement(_uiText.Text, {
120
+ renderValue: (0, _emotion.jsx)(_uiText.Text, {
132
121
  size: "x-large"
133
122
  }, formattedElapsedTime),
134
- className: styles.metric,
123
+ css: this.props.styles.metric,
135
124
  isGroupChild: true
136
- }), /*#__PURE__*/_react.default.createElement(_index4.default, {
125
+ }), (0, _emotion.jsx)(_index4.default, {
137
126
  key: "cronbachsAlpha",
138
127
  renderLabel: (0, _formatMessage.default)('Cronbach\'s Alpha'),
139
128
  renderValue: quizAnalysis.cronbachsAlpha(),
140
- className: styles.metric,
129
+ css: this.props.styles.metric,
141
130
  isGroupChild: true
142
131
  }));
143
132
  }
@@ -150,18 +139,18 @@ var QuizAnalysisOverview = (_dec = (0, _uiThemeable.themeable)(_theme.default, s
150
139
  quizAnalysis = _this$props.quizAnalysis,
151
140
  quizTitle = _this$props.quizTitle;
152
141
  if (!quizAnalysis.isLoaded()) return _ref2;
153
- var list = _react.default.Children.count(this.props.children) === 0 ? this.defaulMetrics() : /*#__PURE__*/_react.default.createElement(_uiMetric.MetricGroup, null, this.props.children);
154
- return /*#__PURE__*/_react.default.createElement(_index2.default, {
155
- className: styles.root
156
- }, /*#__PURE__*/_react.default.createElement(_uiHeading.Heading, {
142
+ var list = _react.default.Children.count(this.props.children) === 0 ? this.defaulMetrics() : (0, _emotion.jsx)(_uiMetric.MetricGroup, null, this.props.children);
143
+ return (0, _emotion.jsx)(_index2.default, {
144
+ css: this.props.styles.root
145
+ }, (0, _emotion.jsx)(_uiHeading.Heading, {
157
146
  level: "h4",
158
147
  as: "h2",
159
148
  color: "primary"
160
- }, quizTitle), /*#__PURE__*/_react.default.createElement("div", {
161
- className: styles.metricWrapper
162
- }, list), /*#__PURE__*/_react.default.createElement("div", {
163
- className: styles.wrapper
164
- }, /*#__PURE__*/_react.default.createElement(_index3.default, {
149
+ }, quizTitle), (0, _emotion.jsx)("div", {
150
+ css: this.props.styles.metricWrapper
151
+ }, list), (0, _emotion.jsx)("div", {
152
+ css: this.props.styles.wrapper
153
+ }, (0, _emotion.jsx)(_index3.default, {
165
154
  animateDelay: animateDelay,
166
155
  animateDuration: animateDuration,
167
156
  summaryDistribution: quizAnalysis.decileDistribution(),
@@ -176,7 +165,8 @@ var QuizAnalysisOverview = (_dec = (0, _uiThemeable.themeable)(_theme.default, s
176
165
  animateDuration: _propTypes.default.number,
177
166
  quizAnalysis: _reactImmutableProptypes.default.record.isRequired,
178
167
  quizTitle: _propTypes.default.string.isRequired,
179
- children: _propTypes.default.arrayOf(_propTypes.default.node)
168
+ children: _propTypes.default.arrayOf(_propTypes.default.node),
169
+ styles: _propTypes.default.object
180
170
  }, _class2.defaultProps = {
181
171
  animateDelay: void 0,
182
172
  animateDuration: void 0,
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+
12
+ var generateStyle = function generateStyle(componentTheme) {
13
+ var _metric;
14
+
15
+ var tabletBreakPoint = "@media screen and (".concat(componentTheme.tabletBreakPoint, ")");
16
+ var phoneBreakPoint = "@media screen and (".concat(componentTheme.phoneBreakPoint, ")");
17
+ return {
18
+ root: {
19
+ padding: componentTheme.rootPadding
20
+ },
21
+ metricWrapper: {
22
+ marginTop: componentTheme.wrapperMargin,
23
+ paddingBottom: componentTheme.metricWrapperPadding
24
+ },
25
+ wrapper: {
26
+ marginTop: componentTheme.wrapperMargin
27
+ },
28
+ metric: (_metric = {}, (0, _defineProperty2.default)(_metric, tabletBreakPoint, {
29
+ flexBasis: '33.3%'
30
+ }), (0, _defineProperty2.default)(_metric, phoneBreakPoint, {
31
+ flexBasis: '50%'
32
+ }), _metric)
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
  colors = _ref.colors,
@@ -17,4 +17,7 @@ function generator(_ref) {
17
17
  phoneBreakPoint: "max-width: ".concat(breakpoints.medium),
18
18
  tabletBreakPoint: "max-width: ".concat(breakpoints.large)
19
19
  };
20
- }
20
+ };
21
+
22
+ var _default = generateComponentTheme;
23
+ exports.default = _default;
@@ -120,7 +120,7 @@ var LegacyChoiceType = (_dec = (0, _uiThemeable.themeable)(_theme.default, style
120
120
  id: percentageHeaderId,
121
121
  height: "47px",
122
122
  textAlign: "center"
123
- }, (0, _formatMessage.default)('%')))), /*#__PURE__*/_react.default.createElement(_uiTable.Table.Body, null, choices.map(this.renderRow), this.renderNoAnswer(noAnswer, numberOfChoices)))));
123
+ }, (0, _formatMessage.default)('Percentage')))), /*#__PURE__*/_react.default.createElement(_uiTable.Table.Body, null, choices.map(this.renderRow), this.renderNoAnswer(noAnswer, numberOfChoices)))));
124
124
  }
125
125
  }]);
126
126
  LegacyChoiceType.displayName = "LegacyChoiceType";
@@ -122,7 +122,7 @@ var ScoreDistributionTypeTable = (_dec = (0, _emotion.withStyle)(_styles.default
122
122
  id: percentageHeaderId,
123
123
  height: "47px",
124
124
  textAlign: "center"
125
- }, (0, _formatMessage.default)('%')))), (0, _emotion.jsx)(_uiTable.Table.Body, null, scores.map(this.renderRow))));
125
+ }, (0, _formatMessage.default)('Percentage')))), (0, _emotion.jsx)(_uiTable.Table.Body, null, scores.map(this.renderRow))));
126
126
  }
127
127
  }]);
128
128
  ScoreDistributionTypeTable.displayName = "ScoreDistributionTypeTable";