@instructure/quiz-core 20.4.2-rc.1 → 20.4.2-rc.3
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/quiz/instructions/Instructions.js +17 -18
- package/es/common/components/resources/quiz/instructions/styles.js +21 -0
- package/es/common/components/resources/quiz/instructions/theme.js +4 -2
- package/es/common/components/resources/quiz/title/Title.js +15 -18
- package/es/common/components/resources/quiz/title/styles.js +19 -0
- package/es/common/components/resources/quiz/title/theme.js +4 -2
- package/es/common/components/resources/quizSessionResult/Header/index.js +22 -29
- package/es/common/components/resources/quizSessionResult/Header/styles.js +29 -0
- package/es/common/components/resources/quizSessionResult/Header/theme.js +4 -2
- package/es/common/components/resources/quizSessionResult/Info/index.js +43 -53
- package/es/common/components/resources/quizSessionResult/Info/styles.js +61 -0
- package/es/common/components/resources/quizSessionResult/Info/theme.js +4 -2
- package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/BlankIcon/index.js +1 -0
- package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/BlankIcon/presenter.js +40 -0
- package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/BlankIcon/styles.js +17 -0
- package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/BlankIcon/theme.js +11 -0
- package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/index.js +2 -1
- package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/presenter.js +59 -17
- package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/theme.js +7 -2
- package/es/reporting/components/resources/NewQuizAndItemAnalysis/propTypes.js +2 -1
- package/lib/common/components/resources/quiz/instructions/Instructions.js +15 -22
- package/lib/common/components/resources/quiz/instructions/styles.js +29 -0
- package/lib/common/components/resources/quiz/instructions/theme.js +6 -3
- package/lib/common/components/resources/quiz/title/Title.js +15 -23
- package/lib/common/components/resources/quiz/title/styles.js +27 -0
- package/lib/common/components/resources/quiz/title/theme.js +6 -3
- package/lib/common/components/resources/quizSessionResult/Header/index.js +21 -31
- package/lib/common/components/resources/quizSessionResult/Header/styles.js +37 -0
- package/lib/common/components/resources/quizSessionResult/Header/theme.js +6 -3
- package/lib/common/components/resources/quizSessionResult/Info/index.js +42 -55
- package/lib/common/components/resources/quizSessionResult/Info/styles.js +69 -0
- package/lib/common/components/resources/quizSessionResult/Info/theme.js +6 -3
- package/lib/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/BlankIcon/index.js +13 -0
- package/lib/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/BlankIcon/presenter.js +55 -0
- package/lib/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/BlankIcon/styles.js +25 -0
- package/lib/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/BlankIcon/theme.js +19 -0
- package/lib/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/index.js +2 -1
- package/lib/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/presenter.js +60 -17
- package/lib/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/theme.js +7 -2
- package/lib/reporting/components/resources/NewQuizAndItemAnalysis/propTypes.js +2 -1
- package/package.json +9 -9
package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/BlankIcon/styles.js
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
var generateStyle = function generateStyle(componentTheme) {
|
|
2
|
+
return {
|
|
3
|
+
blankSpace: {
|
|
4
|
+
display: 'inline-flex',
|
|
5
|
+
justifyContent: 'center',
|
|
6
|
+
alignItems: 'center',
|
|
7
|
+
height: componentTheme.blankHeight,
|
|
8
|
+
minWidth: componentTheme.blankMinWidth,
|
|
9
|
+
verticalAlign: 'middle',
|
|
10
|
+
border: "1px solid ".concat(componentTheme.blankBorderColor),
|
|
11
|
+
borderRadius: componentTheme.blankBorderRadius,
|
|
12
|
+
padding: '2px 2px'
|
|
13
|
+
}
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export default generateStyle;
|
package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/BlankIcon/theme.js
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
var generateComponentTheme = function generateComponentTheme(_ref) {
|
|
2
|
+
var colors = _ref.colors;
|
|
3
|
+
return {
|
|
4
|
+
blankBorderColor: colors.tiara,
|
|
5
|
+
blankBorderRadius: '14px',
|
|
6
|
+
blankMinWidth: '20px',
|
|
7
|
+
blankHeight: '20px'
|
|
8
|
+
};
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
export default generateComponentTheme;
|
|
@@ -14,7 +14,8 @@ function mapStateToProps(_state) {
|
|
|
14
14
|
categorizationEnabled: featureOn('ia_categorization_afs'),
|
|
15
15
|
trueFalseEnabled: featureOn('ia_true_false_afs'),
|
|
16
16
|
choiceEnabled: featureOn('ia_choice_afs'),
|
|
17
|
-
multiAnswerEnabled: featureOn('ia_multi_answer_afs')
|
|
17
|
+
multiAnswerEnabled: featureOn('ia_multi_answer_afs'),
|
|
18
|
+
fillInTheBlankEnabled: featureOn('ia_rich_fill_blank_afs')
|
|
18
19
|
}
|
|
19
20
|
};
|
|
20
21
|
}
|
package/es/reporting/components/resources/NewQuizAndItemAnalysis/NewItemAnalysis/presenter.js
CHANGED
|
@@ -10,20 +10,21 @@ import { Heading } from '@instructure/ui-heading';
|
|
|
10
10
|
import { PresentationContent } from '@instructure/ui-a11y-content';
|
|
11
11
|
import React, { Component } from 'react';
|
|
12
12
|
var styles = {
|
|
13
|
-
componentId: '
|
|
13
|
+
componentId: 'eObAE',
|
|
14
14
|
template: function template(theme) {
|
|
15
|
-
return "\n\n.
|
|
15
|
+
return "\n\n.eObAE_eKXQ{padding:".concat(theme.cardWrapperPadding || 'inherit', "}\n\n.eObAE_bwlc{gap:24px;justify-content:space-between;position:relative;row-gap:32px}\n\n.eObAE_bwlc,.eObAE_bqdH{align-items:flex-start;display:flex;flex-direction:row;flex-wrap:wrap}\n\n.eObAE_bqdH{row-gap:24px}\n\n.eObAE_eTaq{align-items:center;border:1px solid ").concat(theme.blankBorderColor || 'inherit', ";border-radius:").concat(theme.blankBorderRadius || 'inherit', ";display:inline-flex;height:").concat(theme.blankHeight || 'inherit', ";justify-content:center;min-width:").concat(theme.blankMinWidth || 'inherit', ";padding:2px 2px;vertical-align:middle}\n\n.eObAE_NpIG{position:absolute;right:").concat(theme.viewPaddingRight || 'inherit', ";top:0}\n\n.eObAE_eoBe{font-size:").concat(theme.metricNumberContextFontSize || 'inherit', ";font-weight:").concat(theme.metricNumberContextFontWeight || 'inherit', "}\n\n.eObAE_fFDJ{display:none}\n\n.eObAE_fxkJ{margin-top:-8px}\n\n.eObAE_esVF{min-height:48px}\n\n.eObAE_eTZq{position:relative}\n\n.eObAE_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.eObAE_cVld{max-width:100%;width:calc(25% + 350px)}");
|
|
16
16
|
},
|
|
17
|
-
'cardWrapper': '
|
|
18
|
-
'itemCardInnerContainer': '
|
|
19
|
-
'metricsContainer': '
|
|
20
|
-
'
|
|
21
|
-
'
|
|
22
|
-
'
|
|
23
|
-
'
|
|
24
|
-
'
|
|
25
|
-
'
|
|
26
|
-
'
|
|
17
|
+
'cardWrapper': 'eObAE_eKXQ',
|
|
18
|
+
'itemCardInnerContainer': 'eObAE_bwlc',
|
|
19
|
+
'metricsContainer': 'eObAE_bqdH',
|
|
20
|
+
'blankSpace': 'eObAE_eTaq',
|
|
21
|
+
'itemCardToggleButtonWrapper': 'eObAE_NpIG',
|
|
22
|
+
'metricNumberContext': 'eObAE_eoBe',
|
|
23
|
+
'hiddenMetrics': 'eObAE_fFDJ',
|
|
24
|
+
'itemBodyToggleButtonWrapper': 'eObAE_fxkJ',
|
|
25
|
+
'itemBody': 'eObAE_esVF',
|
|
26
|
+
'hiddenItemBody': 'eObAE_eTZq',
|
|
27
|
+
'answerFrequencySummaryContainer': 'eObAE_cVld'
|
|
27
28
|
};
|
|
28
29
|
import t from '@instructure/quiz-i18n/es/format-message';
|
|
29
30
|
import ExpandButton from "../../../../../common/components/shared/ExpandButton/index.js";
|
|
@@ -42,6 +43,10 @@ import { Flex } from '@instructure/ui-flex';
|
|
|
42
43
|
import { RichContentRenderer } from '@instructure/quiz-rce';
|
|
43
44
|
import { ensureRCEContentIsLoaded } from "../../../../../common/util/rceChecker.js";
|
|
44
45
|
import { PropTypes } from '@instructure/quiz-interactions';
|
|
46
|
+
import { RICH_FILL_BLANK_SLUG } from '@instructure/quiz-common';
|
|
47
|
+
var parser = new DOMParser();
|
|
48
|
+
var parsererrorElement = 'parsererror';
|
|
49
|
+
var parseType = 'text/html';
|
|
45
50
|
export var NewItemAnalysis = (_dec = themeable(theme, styles), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_Component) {
|
|
46
51
|
_inherits(NewItemAnalysis, _Component);
|
|
47
52
|
|
|
@@ -113,6 +118,34 @@ export var NewItemAnalysis = (_dec = themeable(theme, styles), _dec(_class = (_t
|
|
|
113
118
|
}, _this.mapInteractionTypeToTranslation(interactionType));
|
|
114
119
|
};
|
|
115
120
|
|
|
121
|
+
_this.isBlank = function (element) {
|
|
122
|
+
if (element.textContent) return false;
|
|
123
|
+
if (!element.hasAttribute('id')) return false;
|
|
124
|
+
var regex = new RegExp('^blank_.+$');
|
|
125
|
+
return regex.test(element.getAttribute('id'));
|
|
126
|
+
};
|
|
127
|
+
|
|
128
|
+
_this.enhanceItemBody = function (itemBody) {
|
|
129
|
+
var tempDoc = parser.parseFromString(itemBody, parseType);
|
|
130
|
+
var errorNode = tempDoc.querySelector(parsererrorElement);
|
|
131
|
+
|
|
132
|
+
if (errorNode) {
|
|
133
|
+
// eslint-disable-next-line no-console
|
|
134
|
+
console.error('Parsing failed: ', errorNode);
|
|
135
|
+
return itemBody;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
Array.from(tempDoc.querySelectorAll('span')).filter(function (span) {
|
|
139
|
+
return _this.isBlank(span);
|
|
140
|
+
}).forEach(function (span, index) {
|
|
141
|
+
var newSpan = span.cloneNode();
|
|
142
|
+
newSpan.setAttribute('class', styles.blankSpace);
|
|
143
|
+
newSpan.innerHTML = "".concat(index + 1);
|
|
144
|
+
span.replaceWith(newSpan);
|
|
145
|
+
});
|
|
146
|
+
return tempDoc.querySelector('body').innerHTML;
|
|
147
|
+
};
|
|
148
|
+
|
|
116
149
|
_this.renderRichContent = function (itemBody, itemBodyClass, itemId) {
|
|
117
150
|
return /*#__PURE__*/React.createElement(Flex, {
|
|
118
151
|
direction: "row",
|
|
@@ -203,6 +236,14 @@ export var NewItemAnalysis = (_dec = themeable(theme, styles), _dec(_class = (_t
|
|
|
203
236
|
})));
|
|
204
237
|
};
|
|
205
238
|
|
|
239
|
+
_this.shouldEnhanceItemBody = function () {
|
|
240
|
+
var _this$props = _this.props,
|
|
241
|
+
itemAnalysis = _this$props.itemAnalysis,
|
|
242
|
+
afsFlags = _this$props.afsFlags;
|
|
243
|
+
var metadata = itemAnalysis.metadata;
|
|
244
|
+
return afsFlags.fillInTheBlankEnabled && metadata.interaction_type === RICH_FILL_BLANK_SLUG && metadata.item_body;
|
|
245
|
+
};
|
|
246
|
+
|
|
206
247
|
return _this;
|
|
207
248
|
}
|
|
208
249
|
|
|
@@ -243,10 +284,10 @@ export var NewItemAnalysis = (_dec = themeable(theme, styles), _dec(_class = (_t
|
|
|
243
284
|
value: function render() {
|
|
244
285
|
var _metadata$item_title;
|
|
245
286
|
|
|
246
|
-
var _this$
|
|
247
|
-
showFrequencyTable = _this$
|
|
248
|
-
itemAnalysis = _this$
|
|
249
|
-
afsFlags = _this$
|
|
287
|
+
var _this$props2 = this.props,
|
|
288
|
+
showFrequencyTable = _this$props2.showFrequencyTable,
|
|
289
|
+
itemAnalysis = _this$props2.itemAnalysis,
|
|
290
|
+
afsFlags = _this$props2.afsFlags;
|
|
250
291
|
var answer_summary = itemAnalysis.answer_summary,
|
|
251
292
|
metadata = itemAnalysis.metadata,
|
|
252
293
|
scores = itemAnalysis.scores;
|
|
@@ -255,6 +296,7 @@ export var NewItemAnalysis = (_dec = themeable(theme, styles), _dec(_class = (_t
|
|
|
255
296
|
var metricsClass = classnames(_defineProperty({}, styles.hiddenMetrics, !this.state.metricsExpanded));
|
|
256
297
|
var itemBodyClass = classnames(styles.itemBody, _defineProperty({}, styles.hiddenItemBody, this.isBodyHigherThanContainer() && !this.state.bodyExpanded));
|
|
257
298
|
var title = (_metadata$item_title = metadata.item_title) !== null && _metadata$item_title !== void 0 ? _metadata$item_title : t('Untitled item');
|
|
299
|
+
var itemBodyEnhanced = this.shouldEnhanceItemBody() ? this.enhanceItemBody(metadata.item_body) : metadata.item_body;
|
|
258
300
|
return /*#__PURE__*/React.createElement(Card, {
|
|
259
301
|
className: styles.cardWrapper
|
|
260
302
|
}, /*#__PURE__*/React.createElement(Flex, {
|
|
@@ -275,7 +317,7 @@ export var NewItemAnalysis = (_dec = themeable(theme, styles), _dec(_class = (_t
|
|
|
275
317
|
padding: "small xx-small none none",
|
|
276
318
|
overflowY: "hidden",
|
|
277
319
|
size: !this.state.bodyExpanded ? '60px' : void 0
|
|
278
|
-
}, this.renderRichContent(
|
|
320
|
+
}, this.renderRichContent(itemBodyEnhanced, itemBodyClass, itemId)))), /*#__PURE__*/React.createElement(Flex.Item, null, this.renderMetrics(scores, metricsClass)))), showFrequencyTable && this.renderAnswerSummaryTable(itemId, answer_summary, metricsClass, interactionType, afsFlags)));
|
|
279
321
|
}
|
|
280
322
|
}]);
|
|
281
323
|
|
|
@@ -1,12 +1,17 @@
|
|
|
1
1
|
export default function generator(_ref) {
|
|
2
2
|
var spacing = _ref.spacing,
|
|
3
3
|
breakpoints = _ref.breakpoints,
|
|
4
|
-
typography = _ref.typography
|
|
4
|
+
typography = _ref.typography,
|
|
5
|
+
colors = _ref.colors;
|
|
5
6
|
return {
|
|
6
7
|
tabletBreakPoint: "max-width: ".concat(breakpoints.large),
|
|
7
8
|
cardWrapperPadding: spacing.medium,
|
|
8
9
|
viewPaddingRight: spacing.xxSmall,
|
|
9
10
|
metricNumberContextFontSize: typography.fontSizeMedium,
|
|
10
|
-
metricNumberContextFontWeight: typography.fontWeightNormal
|
|
11
|
+
metricNumberContextFontWeight: typography.fontWeightNormal,
|
|
12
|
+
blankBorderColor: colors.tiara,
|
|
13
|
+
blankBorderRadius: '14px',
|
|
14
|
+
blankMinWidth: '20px',
|
|
15
|
+
blankHeight: '20px'
|
|
11
16
|
};
|
|
12
17
|
}
|
|
@@ -90,5 +90,6 @@ export var afsFlags = PropTypes.shape({
|
|
|
90
90
|
categorizationEnabled: PropTypes.bool.isRequired,
|
|
91
91
|
trueFalseEnabled: PropTypes.bool.isRequired,
|
|
92
92
|
choiceEnabled: PropTypes.bool.isRequired,
|
|
93
|
-
multiAnswerEnabled: PropTypes.bool.isRequired
|
|
93
|
+
multiAnswerEnabled: PropTypes.bool.isRequired,
|
|
94
|
+
fillInTheBlankEnabled: PropTypes.bool.isRequired
|
|
94
95
|
});
|
|
@@ -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,33 +15,25 @@ 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 =
|
|
18
|
+
var _react = require("react");
|
|
21
19
|
|
|
22
20
|
var _reactImmutableProptypes = _interopRequireDefault(require("react-immutable-proptypes"));
|
|
23
21
|
|
|
24
|
-
var
|
|
22
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
23
|
+
|
|
24
|
+
var _emotion = require("@instructure/emotion");
|
|
25
25
|
|
|
26
26
|
var _quizRce = require("@instructure/quiz-rce");
|
|
27
27
|
|
|
28
28
|
var _makeScrollable = _interopRequireDefault(require("../../../shared/functionality/makeScrollable.js"));
|
|
29
29
|
|
|
30
|
+
var _styles = _interopRequireDefault(require("./styles.js"));
|
|
31
|
+
|
|
30
32
|
var _theme = _interopRequireDefault(require("./theme.js"));
|
|
31
33
|
|
|
32
34
|
var _dec, _class, _class2, _temp;
|
|
33
35
|
|
|
34
|
-
|
|
35
|
-
// renders the quiz instructions on
|
|
36
|
-
// the Preview and Take pages
|
|
37
|
-
// ================================
|
|
38
|
-
var styles = {
|
|
39
|
-
componentId: 'eLFCb',
|
|
40
|
-
template: function template(theme) {
|
|
41
|
-
return "\n\n.eLFCb_gasz{box-sizing:border-box;padding-left:".concat(theme.wrapperPadding || 'inherit', ";padding-right:").concat(theme.wrapperPadding || 'inherit', ";position:relative;width:100%}\n\n.eLFCb_gasz:after{clear:both;content:\"\";display:table}\n\n[dir=ltr] .eLFCb_gasz:after,[dir=rtl] .eLFCb_gasz:after{clear:both}\n\n.eLFCb_eWKC{font-size:").concat(theme.textFontSize || 'inherit', "}");
|
|
42
|
-
},
|
|
43
|
-
'wrapper': 'eLFCb_gasz',
|
|
44
|
-
'text': 'eLFCb_eWKC'
|
|
45
|
-
};
|
|
46
|
-
var QuizInstructions = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_Component) {
|
|
36
|
+
var QuizInstructions = (_dec = (0, _emotion.withStyle)(_styles.default, _theme.default), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_Component) {
|
|
47
37
|
(0, _inherits2.default)(QuizInstructions, _Component);
|
|
48
38
|
|
|
49
39
|
var _super = (0, _createSuper2.default)(QuizInstructions);
|
|
@@ -56,11 +46,12 @@ var QuizInstructions = (_dec = (0, _uiThemeable.themeable)(_theme.default, style
|
|
|
56
46
|
(0, _createClass2.default)(QuizInstructions, [{
|
|
57
47
|
key: "render",
|
|
58
48
|
value: function render() {
|
|
59
|
-
return
|
|
60
|
-
|
|
49
|
+
return (0, _emotion.jsx)("div", {
|
|
50
|
+
"data-testid": "instructionsWrapper",
|
|
51
|
+
css: this.props.styles.wrapper,
|
|
61
52
|
tabIndex: "-1"
|
|
62
|
-
},
|
|
63
|
-
customStyles: styles.text,
|
|
53
|
+
}, (0, _emotion.jsx)(_quizRce.RichContentRendererEmotion, {
|
|
54
|
+
customStyles: this.props.styles.text,
|
|
64
55
|
content: this.props.quiz.instructions
|
|
65
56
|
}));
|
|
66
57
|
}
|
|
@@ -68,7 +59,9 @@ var QuizInstructions = (_dec = (0, _uiThemeable.themeable)(_theme.default, style
|
|
|
68
59
|
QuizInstructions.displayName = "QuizInstructions";
|
|
69
60
|
return QuizInstructions;
|
|
70
61
|
}(_react.Component), _class2.propTypes = {
|
|
71
|
-
quiz: _reactImmutableProptypes.default.record.isRequired
|
|
62
|
+
quiz: _reactImmutableProptypes.default.record.isRequired,
|
|
63
|
+
// eslint-disable-next-line react/require-default-props,react/forbid-prop-types
|
|
64
|
+
styles: _propTypes.default.object
|
|
72
65
|
}, _temp)) || _class);
|
|
73
66
|
exports.QuizInstructions = QuizInstructions;
|
|
74
67
|
|
|
@@ -0,0 +1,29 @@
|
|
|
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
|
+
wrapper: {
|
|
11
|
+
position: 'relative',
|
|
12
|
+
width: '100%',
|
|
13
|
+
boxSizing: 'border-box',
|
|
14
|
+
paddingLeft: componentTheme.wrapperPadding,
|
|
15
|
+
paddingRight: componentTheme.wrapperPadding,
|
|
16
|
+
'&::after': {
|
|
17
|
+
clear: 'both',
|
|
18
|
+
content: '""',
|
|
19
|
+
display: 'table'
|
|
20
|
+
}
|
|
21
|
+
},
|
|
22
|
+
text: {
|
|
23
|
+
fontSize: componentTheme.textFontSize
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
var _default = generateStyle;
|
|
29
|
+
exports.default = _default;
|
|
@@ -3,13 +3,16 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.default =
|
|
6
|
+
exports.default = void 0;
|
|
7
7
|
|
|
8
|
-
function
|
|
8
|
+
var generateComponentTheme = function generateComponentTheme(_ref) {
|
|
9
9
|
var spacing = _ref.spacing,
|
|
10
10
|
typography = _ref.typography;
|
|
11
11
|
return {
|
|
12
12
|
wrapperPadding: spacing.large,
|
|
13
13
|
textFontSize: typography.fontSizeMedium
|
|
14
14
|
};
|
|
15
|
-
}
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
var _default = generateComponentTheme;
|
|
18
|
+
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,33 +15,25 @@ 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 =
|
|
18
|
+
var _react = require("react");
|
|
19
|
+
|
|
20
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
21
21
|
|
|
22
22
|
var _reactImmutableProptypes = _interopRequireDefault(require("react-immutable-proptypes"));
|
|
23
23
|
|
|
24
24
|
var _uiHeading = require("@instructure/ui-heading");
|
|
25
25
|
|
|
26
|
-
var
|
|
26
|
+
var _emotion = require("@instructure/emotion");
|
|
27
27
|
|
|
28
28
|
var _makeScrollable = _interopRequireDefault(require("../../../shared/functionality/makeScrollable.js"));
|
|
29
29
|
|
|
30
|
+
var _styles = _interopRequireDefault(require("./styles.js"));
|
|
31
|
+
|
|
30
32
|
var _theme = _interopRequireDefault(require("./theme.js"));
|
|
31
33
|
|
|
32
34
|
var _dec, _class, _class2, _temp;
|
|
33
35
|
|
|
34
|
-
|
|
35
|
-
// renders the quiz title on
|
|
36
|
-
// the Preview and Take pages
|
|
37
|
-
// ==========================
|
|
38
|
-
var styles = {
|
|
39
|
-
componentId: 'cBDEG',
|
|
40
|
-
template: function template(theme) {
|
|
41
|
-
return "\n\n.cBDEG_gasz{align-items:center;box-sizing:border-box;display:flex;margin-bottom:".concat(theme.wrapperMargin || 'inherit', ";padding-left:").concat(theme.wrapperPadding || 'inherit', ";padding-top:").concat(theme.wrapperPadding || 'inherit', ";position:relative;width:100%}\n\n.cBDEG_eWKC{font-size:").concat(theme.textFontSize || 'inherit', "}");
|
|
42
|
-
},
|
|
43
|
-
'wrapper': 'cBDEG_gasz',
|
|
44
|
-
'text': 'cBDEG_eWKC'
|
|
45
|
-
};
|
|
46
|
-
var QuizTitle = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_Component) {
|
|
36
|
+
var QuizTitle = (_dec = (0, _emotion.withStyle)(_styles.default, _theme.default), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_Component) {
|
|
47
37
|
(0, _inherits2.default)(QuizTitle, _Component);
|
|
48
38
|
|
|
49
39
|
var _super = (0, _createSuper2.default)(QuizTitle);
|
|
@@ -56,13 +46,13 @@ var QuizTitle = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _de
|
|
|
56
46
|
(0, _createClass2.default)(QuizTitle, [{
|
|
57
47
|
key: "render",
|
|
58
48
|
value: function render() {
|
|
59
|
-
return
|
|
60
|
-
|
|
49
|
+
return (0, _emotion.jsx)("div", {
|
|
50
|
+
css: this.props.styles.wrapper,
|
|
61
51
|
tabIndex: "-1"
|
|
62
|
-
},
|
|
52
|
+
}, (0, _emotion.jsx)(_uiHeading.Heading, {
|
|
63
53
|
level: "h1"
|
|
64
|
-
},
|
|
65
|
-
|
|
54
|
+
}, (0, _emotion.jsx)("span", {
|
|
55
|
+
css: this.props.styles.text,
|
|
66
56
|
"data-automation": "sdk-quiz-title-text"
|
|
67
57
|
}, this.props.quiz.title)));
|
|
68
58
|
}
|
|
@@ -70,7 +60,9 @@ var QuizTitle = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _de
|
|
|
70
60
|
QuizTitle.displayName = "QuizTitle";
|
|
71
61
|
return QuizTitle;
|
|
72
62
|
}(_react.Component), _class2.propTypes = {
|
|
73
|
-
quiz: _reactImmutableProptypes.default.record.isRequired
|
|
63
|
+
quiz: _reactImmutableProptypes.default.record.isRequired,
|
|
64
|
+
// eslint-disable-next-line react/require-default-props,react/forbid-prop-types
|
|
65
|
+
styles: _propTypes.default.object
|
|
74
66
|
}, _temp)) || _class);
|
|
75
67
|
exports.QuizTitle = QuizTitle;
|
|
76
68
|
|
|
@@ -0,0 +1,27 @@
|
|
|
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
|
+
wrapper: {
|
|
11
|
+
position: 'relative',
|
|
12
|
+
width: '100%',
|
|
13
|
+
boxSizing: 'border-box',
|
|
14
|
+
marginBottom: componentTheme.wrapperMargin,
|
|
15
|
+
display: 'flex',
|
|
16
|
+
alignItems: 'center',
|
|
17
|
+
paddingTop: componentTheme.wrapperPadding,
|
|
18
|
+
paddingLeft: componentTheme.wrapperPadding
|
|
19
|
+
},
|
|
20
|
+
text: {
|
|
21
|
+
fontSize: componentTheme.textFontSize
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
var _default = generateStyle;
|
|
27
|
+
exports.default = _default;
|
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.default =
|
|
6
|
+
exports.default = void 0;
|
|
7
7
|
|
|
8
|
-
function
|
|
8
|
+
var generateComponentTheme = function generateComponentTheme(_ref) {
|
|
9
9
|
var spacing = _ref.spacing,
|
|
10
10
|
typography = _ref.typography;
|
|
11
11
|
return {
|
|
@@ -13,4 +13,7 @@ function generator(_ref) {
|
|
|
13
13
|
wrapperMargin: spacing.medium,
|
|
14
14
|
textFontSize: typography.fontSizeXLarge
|
|
15
15
|
};
|
|
16
|
-
}
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
var _default = generateComponentTheme;
|
|
19
|
+
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,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 =
|
|
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
|
|
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
|
|
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
|
|
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
|
|
94
|
-
|
|
95
|
-
},
|
|
96
|
-
|
|
97
|
-
},
|
|
98
|
-
|
|
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
|
-
},
|
|
87
|
+
}, (0, _emotion.jsx)(_uiHeading.Heading, {
|
|
101
88
|
level: "h1"
|
|
102
|
-
}, (0, _formatMessage.default)('Results'))),
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
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 =
|
|
6
|
+
exports.default = void 0;
|
|
7
7
|
|
|
8
|
-
function
|
|
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;
|