@instructure/quiz-core 20.36.1-rc.2 → 20.36.1-rc.21
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/banks/components/AddToBankModal/presenter.js +1 -2
- package/es/banks/components/AsyncSearch/index.js +1 -2
- package/es/banks/components/BankEntry/presenter.js +1 -2
- package/es/banks/components/BankSearch/presenter.js +1 -2
- package/es/banks/components/Banks/index.js +0 -1
- package/es/banks/components/Banks/presenter.js +5 -9
- package/es/banks/components/CopyMoveBankEntryModal/presenter.js +1 -2
- package/es/banks/components/CreateBankModal/presenter.js +1 -2
- package/es/banks/components/EditBankModal/presenter.js +1 -2
- package/es/banks/components/SharingModal/RootAccountSharing.js +1 -2
- package/es/banks/components/SharingModal/ShareList/index.js +1 -2
- package/es/banks/components/SharingModal/index.js +0 -2
- package/es/banks/components/SharingModal/presenter.js +18 -78
- package/es/building/components/resources/quizEntry/QuizEntryEdit/Header/index.js +34 -21
- package/es/building/components/resources/quizEntry/QuizEntryEdit/Header/styles.js +0 -23
- package/es/building/components/resources/quizEntry/QuizEntryEdit/Header/theme.js +1 -5
- package/es/common/components/AccessCodeTextInput/AccessCodeTextInput.stories.js +11 -0
- package/es/common/components/AccessCodeTextInput/index.js +47 -0
- package/es/common/components/ImportModal/presenter.js +1 -2
- package/es/common/components/MaskedTextInput/MaskedTextInput.stories.js +19 -0
- package/es/common/components/MaskedTextInput/index.js +64 -0
- package/es/common/components/layout/Page/styles.js +1 -1
- package/es/common/components/resources/item/ItemEdit/presenter.js +2 -4
- package/es/common/components/resources/quiz/instructions/styles.js +1 -1
- package/es/common/components/resources/stimulus/StimulusEditInfo/presenter.js +5 -8
- package/es/common/components/shared/GenericAsyncSearch/GenericAsyncSearch.js +1 -2
- package/es/common/components/shared/TagSelect/presenter.js +1 -2
- package/es/common/components/shared/TimeUnitsInput/index.js +2 -1
- package/es/index.js +3 -1
- package/es/moderating/components/resources/AccommodationsModal/ExtraTimeSettings/index.js +2 -2
- package/es/moderating/components/resources/AccommodationsModal/index.js +5 -13
- package/es/moderating/components/resources/ModerateTable/presenter.js +4 -2
- package/es/moderating/components/sidebar/ModerateTray/presenter.js +20 -29
- package/lib/banks/components/AddToBankModal/presenter.js +1 -2
- package/lib/banks/components/AsyncSearch/index.js +8 -9
- package/lib/banks/components/BankEntry/presenter.js +1 -2
- package/lib/banks/components/BankSearch/presenter.js +1 -2
- package/lib/banks/components/Banks/index.js +0 -1
- package/lib/banks/components/Banks/presenter.js +9 -13
- package/lib/banks/components/CopyMoveBankEntryModal/presenter.js +1 -2
- package/lib/banks/components/CreateBankModal/presenter.js +1 -2
- package/lib/banks/components/EditBankModal/presenter.js +1 -2
- package/lib/banks/components/SharingModal/RootAccountSharing.js +3 -4
- package/lib/banks/components/SharingModal/ShareList/index.js +3 -4
- package/lib/banks/components/SharingModal/index.js +0 -2
- package/lib/banks/components/SharingModal/presenter.js +20 -80
- package/lib/building/components/resources/quizEntry/QuizEntryEdit/Header/index.js +33 -20
- package/lib/building/components/resources/quizEntry/QuizEntryEdit/Header/styles.js +0 -23
- package/lib/building/components/resources/quizEntry/QuizEntryEdit/Header/theme.js +1 -5
- package/lib/common/components/AccessCodeTextInput/AccessCodeTextInput.stories.js +20 -0
- package/lib/common/components/AccessCodeTextInput/index.js +57 -0
- package/lib/common/components/ImportModal/presenter.js +1 -2
- package/lib/common/components/MaskedTextInput/MaskedTextInput.stories.js +29 -0
- package/lib/common/components/MaskedTextInput/index.js +74 -0
- package/lib/common/components/layout/Page/styles.js +1 -1
- package/lib/common/components/resources/item/ItemEdit/presenter.js +2 -4
- package/lib/common/components/resources/quiz/instructions/styles.js +1 -1
- package/lib/common/components/resources/stimulus/StimulusEditInfo/presenter.js +12 -15
- package/lib/common/components/shared/GenericAsyncSearch/GenericAsyncSearch.js +3 -4
- package/lib/common/components/shared/TagSelect/presenter.js +4 -5
- package/lib/common/components/shared/TimeUnitsInput/index.js +2 -1
- package/lib/index.js +22 -6
- package/lib/moderating/components/resources/AccommodationsModal/ExtraTimeSettings/index.js +7 -7
- package/lib/moderating/components/resources/AccommodationsModal/index.js +5 -13
- package/lib/moderating/components/resources/ModerateTable/presenter.js +4 -2
- package/lib/moderating/components/sidebar/ModerateTray/presenter.js +20 -29
- package/package.json +10 -9
|
@@ -19,7 +19,6 @@ var _uiProgress = require("@instructure/ui-progress");
|
|
|
19
19
|
var _uiHeading = require("@instructure/ui-heading");
|
|
20
20
|
var _uiTabs = require("@instructure/ui-tabs");
|
|
21
21
|
var _uiToggleDetails = require("@instructure/ui-toggle-details");
|
|
22
|
-
var _uiTextInput = require("@instructure/ui-text-input");
|
|
23
22
|
var _emotion = require("@instructure/emotion");
|
|
24
23
|
var _quizCommon = require("@instructure/quiz-common");
|
|
25
24
|
var _styles = _interopRequireDefault(require("./styles.js"));
|
|
@@ -200,7 +199,7 @@ var ImportModal = (_dec = (0, _quizCommon.withStyleOverrides)(_styles.default, _
|
|
|
200
199
|
"data-automation": "sdk-import-file-selector"
|
|
201
200
|
}), fileType === 'image/*' && (0, _emotion.jsx)("div", {
|
|
202
201
|
css: this.props.styles.altTextWrapper
|
|
203
|
-
}, (0, _emotion.jsx)(
|
|
202
|
+
}, (0, _emotion.jsx)(_quizCommon.TextInput, {
|
|
204
203
|
ref: this.setRef('altTextInput'),
|
|
205
204
|
onChange: this.onAltTextChange,
|
|
206
205
|
value: this.props.altText,
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.whenUnmasked = exports.whenMasked = exports.default = void 0;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _index = require("./index.js");
|
|
10
|
+
var props = {
|
|
11
|
+
renderLabel: 'Example of a masked text input',
|
|
12
|
+
checkboxLabel: 'Select to show the current value',
|
|
13
|
+
value: 'Is it secret? Is it safe?',
|
|
14
|
+
onMaskedChange: Function.prototype
|
|
15
|
+
};
|
|
16
|
+
var _default = {
|
|
17
|
+
title: _index.MaskedTextInput.name
|
|
18
|
+
};
|
|
19
|
+
exports.default = _default;
|
|
20
|
+
var whenMasked = function whenMasked() {
|
|
21
|
+
return /*#__PURE__*/_react.default.createElement(_index.MaskedTextInput, props);
|
|
22
|
+
};
|
|
23
|
+
exports.whenMasked = whenMasked;
|
|
24
|
+
var whenUnmasked = function whenUnmasked() {
|
|
25
|
+
return /*#__PURE__*/_react.default.createElement(_index.MaskedTextInput, Object.assign({}, props, {
|
|
26
|
+
masked: false
|
|
27
|
+
}));
|
|
28
|
+
};
|
|
29
|
+
exports.whenUnmasked = whenUnmasked;
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
|
|
4
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = exports.MaskedTextInput = void 0;
|
|
9
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
10
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
12
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
13
|
+
var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper"));
|
|
14
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
15
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
16
|
+
var _uiView = require("@instructure/ui-view");
|
|
17
|
+
var _uiCheckbox = require("@instructure/ui-checkbox");
|
|
18
|
+
var _uiReactUtils = require("@instructure/ui-react-utils");
|
|
19
|
+
var _quizCommon = require("@instructure/quiz-common");
|
|
20
|
+
var maskedTextInputPropTypes = {
|
|
21
|
+
/**
|
|
22
|
+
* The label to be used for the checkbox that controls whether the input is masked
|
|
23
|
+
*/
|
|
24
|
+
checkboxLabel: _propTypes.default.string.isRequired,
|
|
25
|
+
/**
|
|
26
|
+
* Whether or not the input text is masked
|
|
27
|
+
*/
|
|
28
|
+
masked: _propTypes.default.bool,
|
|
29
|
+
/**
|
|
30
|
+
* The function to call when the user clicks the checkbox to either mask or unmask the input
|
|
31
|
+
*/
|
|
32
|
+
onMaskedChange: _propTypes.default.func
|
|
33
|
+
};
|
|
34
|
+
var MaskedTextInput = /*#__PURE__*/function (_Component) {
|
|
35
|
+
(0, _inherits2.default)(MaskedTextInput, _Component);
|
|
36
|
+
var _super = (0, _createSuper2.default)(MaskedTextInput);
|
|
37
|
+
function MaskedTextInput() {
|
|
38
|
+
(0, _classCallCheck2.default)(this, MaskedTextInput);
|
|
39
|
+
return _super.apply(this, arguments);
|
|
40
|
+
}
|
|
41
|
+
(0, _createClass2.default)(MaskedTextInput, [{
|
|
42
|
+
key: "render",
|
|
43
|
+
value: function render() {
|
|
44
|
+
var _this$props = this.props,
|
|
45
|
+
checkboxLabel = _this$props.checkboxLabel,
|
|
46
|
+
masked = _this$props.masked,
|
|
47
|
+
onMaskedChange = _this$props.onMaskedChange,
|
|
48
|
+
type = _this$props.type;
|
|
49
|
+
var textInputProps = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, (0, _uiReactUtils.omitProps)(this.props, maskedTextInputPropTypes)), {}, {
|
|
50
|
+
type: masked ? 'password' : type
|
|
51
|
+
});
|
|
52
|
+
return /*#__PURE__*/_react.default.createElement(_uiView.View, {
|
|
53
|
+
as: "div"
|
|
54
|
+
}, /*#__PURE__*/_react.default.createElement(_quizCommon.TextInput, textInputProps), /*#__PURE__*/_react.default.createElement(_uiView.View, {
|
|
55
|
+
as: "div",
|
|
56
|
+
margin: "small 0"
|
|
57
|
+
}, /*#__PURE__*/_react.default.createElement(_uiCheckbox.Checkbox, {
|
|
58
|
+
label: checkboxLabel,
|
|
59
|
+
checked: !masked,
|
|
60
|
+
onChange: onMaskedChange
|
|
61
|
+
})));
|
|
62
|
+
}
|
|
63
|
+
}]);
|
|
64
|
+
MaskedTextInput.displayName = "MaskedTextInput";
|
|
65
|
+
return MaskedTextInput;
|
|
66
|
+
}(_react.Component);
|
|
67
|
+
exports.MaskedTextInput = MaskedTextInput;
|
|
68
|
+
MaskedTextInput.propTypes = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, maskedTextInputPropTypes), _quizCommon.TextInput.propTypes);
|
|
69
|
+
MaskedTextInput.defaultProps = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, _quizCommon.TextInput.defaultProps), {}, {
|
|
70
|
+
masked: true,
|
|
71
|
+
onMaskedChange: Function.prototype
|
|
72
|
+
});
|
|
73
|
+
var _default = MaskedTextInput;
|
|
74
|
+
exports.default = _default;
|
|
@@ -26,7 +26,7 @@ var generateStyle = function generateStyle(componentTheme, props) {
|
|
|
26
26
|
transition: componentTheme.contentTransition,
|
|
27
27
|
width: '100%',
|
|
28
28
|
'.user_content p': {
|
|
29
|
-
margin: componentTheme.userContentMargin,
|
|
29
|
+
margin: "".concat(componentTheme.userContentMargin, " 0"),
|
|
30
30
|
'&:first-of-type': {
|
|
31
31
|
marginTop: componentTheme.userContentZeroMargin
|
|
32
32
|
},
|
|
@@ -15,7 +15,6 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
|
15
15
|
var _reactImmutableProptypes = _interopRequireDefault(require("react-immutable-proptypes"));
|
|
16
16
|
var _OutcomeAlignments = _interopRequireDefault(require("@instructure/outcomes-ui/es/containers/OutcomeAlignments"));
|
|
17
17
|
var _OutcomeCount = _interopRequireDefault(require("@instructure/outcomes-ui/es/containers/OutcomeCount"));
|
|
18
|
-
var _uiFormField = require("@instructure/ui-form-field");
|
|
19
18
|
var _uiA11yContent = require("@instructure/ui-a11y-content");
|
|
20
19
|
var _CustomPropTypes = _interopRequireDefault(require("../../../../../common/util/CustomPropTypes.js"));
|
|
21
20
|
var _componentForItem = _interopRequireDefault(require("../../../../util/componentForItem.js"));
|
|
@@ -24,7 +23,6 @@ var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/es/f
|
|
|
24
23
|
var _interactionTypePropsHelper = require("../../../../util/interactionTypePropsHelper.js");
|
|
25
24
|
var _ElementsForSelectors = _interopRequireDefault(require("../../../../../common/util/ElementsForSelectors.js"));
|
|
26
25
|
var _instUIMessages = require("../../../../util/instUIMessages.js");
|
|
27
|
-
var _featureCheck = require("../../../../../common/util/featureCheck.js");
|
|
28
26
|
var ItemEdit = /*#__PURE__*/function (_Component) {
|
|
29
27
|
(0, _inherits2.default)(ItemEdit, _Component);
|
|
30
28
|
var _super = (0, _createSuper2.default)(ItemEdit);
|
|
@@ -72,7 +70,7 @@ var ItemEdit = /*#__PURE__*/function (_Component) {
|
|
|
72
70
|
var launchContextUuid = this.props.scope.launch_context_uuid;
|
|
73
71
|
var launchContextTitle = this.props.scope.title;
|
|
74
72
|
// If editing within a quiz, there is no account launch context
|
|
75
|
-
if (
|
|
73
|
+
if (rootAccountName) {
|
|
76
74
|
launchContexts.push({
|
|
77
75
|
uuid: this.props.rootAccountUuid,
|
|
78
76
|
name: rootAccountName
|
|
@@ -136,7 +134,7 @@ var ItemEdit = /*#__PURE__*/function (_Component) {
|
|
|
136
134
|
var interactionType = item.getInteractionType().slug;
|
|
137
135
|
var Interaction = (0, _componentForItem.default)(interactionType, _quizCommon.COMPONENT_EDIT);
|
|
138
136
|
var propsForInteraction = (0, _interactionTypePropsHelper.propsForInteractionEdit)(this.props, this.additionalEditOptions());
|
|
139
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
137
|
+
return /*#__PURE__*/_react.default.createElement(_quizCommon.FormFieldGroup, {
|
|
140
138
|
messages: this.getError('onSelf'),
|
|
141
139
|
description: /*#__PURE__*/_react.default.createElement(_uiA11yContent.ScreenReaderContent, null, (0, _formatMessage.default)('Edit question:')),
|
|
142
140
|
name: "edit_item_".concat(this.props.guid)
|
|
@@ -18,7 +18,7 @@ var generateStyle = function generateStyle(componentTheme) {
|
|
|
18
18
|
display: 'table'
|
|
19
19
|
},
|
|
20
20
|
'.user_content p': {
|
|
21
|
-
margin: componentTheme.userContentMargin,
|
|
21
|
+
margin: "".concat(componentTheme.userContentMargin, " 0"),
|
|
22
22
|
'&:first-of-type': {
|
|
23
23
|
marginTop: componentTheme.userContentZeroMargin
|
|
24
24
|
},
|
|
@@ -13,13 +13,10 @@ var _react = require("react");
|
|
|
13
13
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
14
14
|
var _reactImmutableProptypes = _interopRequireDefault(require("react-immutable-proptypes"));
|
|
15
15
|
var _uiA11yContent = require("@instructure/ui-a11y-content");
|
|
16
|
-
var _uiTextInput = require("@instructure/ui-text-input");
|
|
17
|
-
var _uiFormField = require("@instructure/ui-form-field");
|
|
18
16
|
var _emotion = require("@instructure/emotion");
|
|
19
17
|
var _uiHeading = require("@instructure/ui-heading");
|
|
20
18
|
var _quizRce = require("@instructure/quiz-rce");
|
|
21
19
|
var _instUIMessages = require("../../../../util/instUIMessages.js");
|
|
22
|
-
var _uiSimpleSelect = require("@instructure/ui-simple-select");
|
|
23
20
|
var _uiIcons = require("@instructure/ui-icons");
|
|
24
21
|
var _uiToggleDetails = require("@instructure/ui-toggle-details");
|
|
25
22
|
var _quizCommon = require("@instructure/quiz-common");
|
|
@@ -85,18 +82,18 @@ var StimulusEditInfo = (_dec = (0, _quizCommon.withStyleOverrides)(_styles.defau
|
|
|
85
82
|
var stimulusOrientation = this.props.workingStimulus.get('orientation');
|
|
86
83
|
return (0, _emotion.jsx)("div", {
|
|
87
84
|
css: this.props.styles.section
|
|
88
|
-
}, (0, _emotion.jsx)(
|
|
85
|
+
}, (0, _emotion.jsx)(_quizCommon.SimpleSelect, {
|
|
89
86
|
renderLabel: (0, _formatMessage.default)('Orientation'),
|
|
90
87
|
onChange: this.onOrientationChange,
|
|
91
88
|
value: stimulusOrientation,
|
|
92
89
|
renderBeforeInput: (0, _emotion.jsx)(_uiIcons.IconUpdownLine, {
|
|
93
90
|
rotate: stimulusOrientation === _quizCommon.TOP ? '0' : '90'
|
|
94
91
|
})
|
|
95
|
-
}, (0, _emotion.jsx)(
|
|
92
|
+
}, (0, _emotion.jsx)(_quizCommon.SimpleSelect.Option, {
|
|
96
93
|
renderBeforeLabel: _ref3,
|
|
97
94
|
id: "stimulus-orientation-select-option-left",
|
|
98
95
|
value: "left"
|
|
99
|
-
}, (0, _formatMessage.default)('Questions to the right')), (0, _emotion.jsx)(
|
|
96
|
+
}, (0, _formatMessage.default)('Questions to the right')), (0, _emotion.jsx)(_quizCommon.SimpleSelect.Option, {
|
|
100
97
|
renderBeforeLabel: _ref4,
|
|
101
98
|
id: "stimulus-orientation-select-option-top",
|
|
102
99
|
value: "top"
|
|
@@ -108,7 +105,7 @@ var StimulusEditInfo = (_dec = (0, _quizCommon.withStyleOverrides)(_styles.defau
|
|
|
108
105
|
var stimulus = this.props.workingStimulus;
|
|
109
106
|
var textAreaId = "stimulusBodyEdit_".concat(stimulus.id, "_").concat(this.props.isBankedContent);
|
|
110
107
|
var stimulusBodyId = "stimulusBodyEdit_".concat(stimulus.id, "_body");
|
|
111
|
-
return (0, _emotion.jsx)(
|
|
108
|
+
return (0, _emotion.jsx)(_quizCommon.FormFieldGroup, {
|
|
112
109
|
messages: this.inputErrors('onSelf'),
|
|
113
110
|
description: (0, _emotion.jsx)(_uiA11yContent.ScreenReaderContent, null, (0, _formatMessage.default)('Edit Stimulus'))
|
|
114
111
|
}, (0, _emotion.jsx)(_uiHeading.Heading, {
|
|
@@ -116,9 +113,10 @@ var StimulusEditInfo = (_dec = (0, _quizCommon.withStyleOverrides)(_styles.defau
|
|
|
116
113
|
as: "h2"
|
|
117
114
|
}, this.headerText()), (0, _emotion.jsx)("div", {
|
|
118
115
|
css: this.props.styles.section
|
|
119
|
-
}, (0, _emotion.jsx)(
|
|
116
|
+
}, (0, _emotion.jsx)(_quizCommon.TextInput, {
|
|
120
117
|
messages: this.inputErrors('title'),
|
|
121
118
|
renderLabel: (0, _formatMessage.default)('Title'),
|
|
119
|
+
isRequired: true,
|
|
122
120
|
type: "text",
|
|
123
121
|
ref: this.props.setTitleRef,
|
|
124
122
|
onChange: this.onTextInputChange('title'),
|
|
@@ -126,7 +124,7 @@ var StimulusEditInfo = (_dec = (0, _quizCommon.withStyleOverrides)(_styles.defau
|
|
|
126
124
|
"data-automation": "sdk-stimulus-title-input"
|
|
127
125
|
})), (0, _emotion.jsx)("div", {
|
|
128
126
|
css: this.props.styles.section
|
|
129
|
-
}, (0, _emotion.jsx)(
|
|
127
|
+
}, (0, _emotion.jsx)(_quizCommon.TextInput, {
|
|
130
128
|
renderLabel: this.renderOptionalLabel((0, _formatMessage.default)('Instructions')),
|
|
131
129
|
type: "text",
|
|
132
130
|
onChange: this.onTextInputChange('instructions'),
|
|
@@ -134,14 +132,13 @@ var StimulusEditInfo = (_dec = (0, _quizCommon.withStyleOverrides)(_styles.defau
|
|
|
134
132
|
"data-automation": "sdk-stimulus-instructions-input"
|
|
135
133
|
})), (0, _emotion.jsx)("div", {
|
|
136
134
|
css: this.props.styles.section
|
|
137
|
-
}, (0, _emotion.jsx)(
|
|
138
|
-
id: stimulusBodyId
|
|
139
|
-
label: (0, _formatMessage.default)('Content')
|
|
135
|
+
}, (0, _emotion.jsx)(_quizCommon.FormField, {
|
|
136
|
+
id: stimulusBodyId
|
|
140
137
|
}, (0, _emotion.jsx)(_quizRce.RichContentInput, {
|
|
141
138
|
actsAsInput: true,
|
|
142
|
-
label:
|
|
139
|
+
label: (0, _formatMessage.default)('Content'),
|
|
140
|
+
isRequired: true,
|
|
143
141
|
messages: this.inputErrors('body'),
|
|
144
|
-
placeholder: (0, _formatMessage.default)('Add Stimulus Content...'),
|
|
145
142
|
textareaId: textAreaId,
|
|
146
143
|
defaultContent: stimulus.get('body'),
|
|
147
144
|
onKeyUp: this.onBodyChange,
|
|
@@ -157,7 +154,7 @@ var StimulusEditInfo = (_dec = (0, _quizCommon.withStyleOverrides)(_styles.defau
|
|
|
157
154
|
summary: (0, _formatMessage.default)('Options')
|
|
158
155
|
}, this.props.stimulusOrientationEnabled ? this.renderStimulusOrientationSelect() : null, (0, _emotion.jsx)("div", {
|
|
159
156
|
css: this.props.styles.section
|
|
160
|
-
}, (0, _emotion.jsx)(
|
|
157
|
+
}, (0, _emotion.jsx)(_quizCommon.TextInput, {
|
|
161
158
|
renderLabel: this.renderOptionalLabel((0, _formatMessage.default)('Source URL'), (0, _formatMessage.default)('(optional - not visible to students)')),
|
|
162
159
|
type: "text",
|
|
163
160
|
onChange: this.onTextInputChange('sourceUrl'),
|
|
@@ -13,7 +13,6 @@ var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/creat
|
|
|
13
13
|
var _react = _interopRequireWildcard(require("react"));
|
|
14
14
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
15
15
|
var _debounce = _interopRequireDefault(require("lodash/fp/debounce"));
|
|
16
|
-
var _uiSelect = require("@instructure/ui-select");
|
|
17
16
|
var _uiSpinner = require("@instructure/ui-spinner");
|
|
18
17
|
var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/es/format-message"));
|
|
19
18
|
var _quizCommon = require("@instructure/quiz-common");
|
|
@@ -91,7 +90,7 @@ var GenericAsyncSearch = /*#__PURE__*/function (_Component) {
|
|
|
91
90
|
};
|
|
92
91
|
_this.actualOptions = function () {
|
|
93
92
|
return _this.state.options.map(function (option) {
|
|
94
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
93
|
+
return /*#__PURE__*/_react.default.createElement(_quizCommon.Select.Option, {
|
|
95
94
|
id: option.id,
|
|
96
95
|
key: option.id,
|
|
97
96
|
isHighlighted: option.id === _this.state.highlightedOptionId
|
|
@@ -107,7 +106,7 @@ var GenericAsyncSearch = /*#__PURE__*/function (_Component) {
|
|
|
107
106
|
return _this.state.inputValue === '' ? (0, _formatMessage.default)('Write to search') : (0, _formatMessage.default)('No Results');
|
|
108
107
|
};
|
|
109
108
|
_this.emptyOrLoadingOption = function () {
|
|
110
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
109
|
+
return /*#__PURE__*/_react.default.createElement(_quizCommon.Select.Option, {
|
|
111
110
|
id: _quizCommon.SELECT_EMPTY_OPTION,
|
|
112
111
|
key: _quizCommon.SELECT_EMPTY_OPTION
|
|
113
112
|
}, _this.state.isLoading ? /*#__PURE__*/_react.default.createElement(_uiSpinner.Spinner, {
|
|
@@ -141,7 +140,7 @@ var GenericAsyncSearch = /*#__PURE__*/function (_Component) {
|
|
|
141
140
|
}, {
|
|
142
141
|
key: "render",
|
|
143
142
|
value: function render() {
|
|
144
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
143
|
+
return /*#__PURE__*/_react.default.createElement(_quizCommon.Select, {
|
|
145
144
|
"data-automation": this.props.selectAutomation,
|
|
146
145
|
renderLabel: this.props.label,
|
|
147
146
|
placeholder: this.props.placeholder,
|
|
@@ -13,7 +13,6 @@ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits
|
|
|
13
13
|
var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper"));
|
|
14
14
|
var _react = _interopRequireWildcard(require("react"));
|
|
15
15
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
16
|
-
var _uiSelect = require("@instructure/ui-select");
|
|
17
16
|
var _index = _interopRequireDefault(require("../TagWrapper/index.js"));
|
|
18
17
|
var _differenceBy = _interopRequireDefault(require("lodash/differenceBy"));
|
|
19
18
|
var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/es/format-message"));
|
|
@@ -181,7 +180,7 @@ var TagSelect = /*#__PURE__*/function (_Component) {
|
|
|
181
180
|
tagSuggestions = _this$props2.tagSuggestions;
|
|
182
181
|
var notSelectedTagSuggestions = (0, _differenceBy.default)(tagSuggestions, tags, 'value');
|
|
183
182
|
var options = notSelectedTagSuggestions.map(function (tag) {
|
|
184
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
183
|
+
return /*#__PURE__*/_react.default.createElement(_quizCommon.Select.Option, {
|
|
185
184
|
key: _this3.encodeTag(tag),
|
|
186
185
|
id: _this3.encodeTag(tag),
|
|
187
186
|
isHighlighted: _this3.encodeTag(tag) === _this3.state.highlightedOptionId
|
|
@@ -193,7 +192,7 @@ var TagSelect = /*#__PURE__*/function (_Component) {
|
|
|
193
192
|
return tag.value === inputValue;
|
|
194
193
|
})) {
|
|
195
194
|
if (allowNewTags && inputValue.length > 0) {
|
|
196
|
-
options.push(/*#__PURE__*/_react.default.createElement(
|
|
195
|
+
options.push(/*#__PURE__*/_react.default.createElement(_quizCommon.Select.Option, {
|
|
197
196
|
id: this.encodeTag({
|
|
198
197
|
value: inputValue
|
|
199
198
|
}),
|
|
@@ -207,7 +206,7 @@ var TagSelect = /*#__PURE__*/function (_Component) {
|
|
|
207
206
|
}
|
|
208
207
|
}
|
|
209
208
|
if (options.length === 0) {
|
|
210
|
-
options.push(/*#__PURE__*/_react.default.createElement(
|
|
209
|
+
options.push(/*#__PURE__*/_react.default.createElement(_quizCommon.Select.Option, {
|
|
211
210
|
id: _quizCommon.SELECT_EMPTY_OPTION,
|
|
212
211
|
key: _quizCommon.SELECT_EMPTY_OPTION
|
|
213
212
|
}, this.emptyOption()));
|
|
@@ -220,7 +219,7 @@ var TagSelect = /*#__PURE__*/function (_Component) {
|
|
|
220
219
|
var _this$state = this.state,
|
|
221
220
|
inputValue = _this$state.inputValue,
|
|
222
221
|
isShowingOptions = _this$state.isShowingOptions;
|
|
223
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
222
|
+
return /*#__PURE__*/_react.default.createElement(_quizCommon.Select, {
|
|
224
223
|
renderLabel: (0, _formatMessage.default)('Tags and Metadata'),
|
|
225
224
|
inputValue: inputValue,
|
|
226
225
|
isShowingOptions: isShowingOptions,
|
|
@@ -144,7 +144,8 @@ var TimeUnitsInput = /*#__PURE__*/function (_Component) {
|
|
|
144
144
|
newHours = _breakdownSeconds4.hours,
|
|
145
145
|
newMinutes = _breakdownSeconds4.minutes;
|
|
146
146
|
if (_this.state.shouldResetOnNormalize) {
|
|
147
|
-
_this
|
|
147
|
+
var _this$props$onReset, _this$props;
|
|
148
|
+
(_this$props$onReset = (_this$props = _this.props).onReset) === null || _this$props$onReset === void 0 ? void 0 : _this$props$onReset.call(_this$props);
|
|
148
149
|
}
|
|
149
150
|
_this.setState({
|
|
150
151
|
days: newDays,
|
package/lib/index.js
CHANGED
|
@@ -82,6 +82,8 @@ var _exportNames = {
|
|
|
82
82
|
TagWrapper: true,
|
|
83
83
|
RetryGradePassbackButton: true,
|
|
84
84
|
GenericAsyncSearch: true,
|
|
85
|
+
MaskedTextInput: true,
|
|
86
|
+
AccessCodeTextInput: true,
|
|
85
87
|
config: true,
|
|
86
88
|
Fetcher: true,
|
|
87
89
|
httpHeaders: true,
|
|
@@ -673,6 +675,18 @@ Object.defineProperty(exports, "GenericAsyncSearch", {
|
|
|
673
675
|
return _GenericAsyncSearch.GenericAsyncSearch;
|
|
674
676
|
}
|
|
675
677
|
});
|
|
678
|
+
Object.defineProperty(exports, "MaskedTextInput", {
|
|
679
|
+
enumerable: true,
|
|
680
|
+
get: function get() {
|
|
681
|
+
return _index58.MaskedTextInput;
|
|
682
|
+
}
|
|
683
|
+
});
|
|
684
|
+
Object.defineProperty(exports, "AccessCodeTextInput", {
|
|
685
|
+
enumerable: true,
|
|
686
|
+
get: function get() {
|
|
687
|
+
return _index59.AccessCodeTextInput;
|
|
688
|
+
}
|
|
689
|
+
});
|
|
676
690
|
Object.defineProperty(exports, "config", {
|
|
677
691
|
enumerable: true,
|
|
678
692
|
get: function get() {
|
|
@@ -784,7 +798,7 @@ Object.defineProperty(exports, "formatTime", {
|
|
|
784
798
|
Object.defineProperty(exports, "generateImportModalId", {
|
|
785
799
|
enumerable: true,
|
|
786
800
|
get: function get() {
|
|
787
|
-
return
|
|
801
|
+
return _index60.generateImportModalId;
|
|
788
802
|
}
|
|
789
803
|
});
|
|
790
804
|
Object.defineProperty(exports, "TimerService", {
|
|
@@ -1533,6 +1547,8 @@ var _index55 = require("./common/components/shared/FormattedDuration/index.js");
|
|
|
1533
1547
|
var _index56 = _interopRequireDefault(require("./common/components/shared/TagWrapper/index.js"));
|
|
1534
1548
|
var _index57 = require("./moderating/components/resources/RetryGradePassbackButton/index.js");
|
|
1535
1549
|
var _GenericAsyncSearch = require("./common/components/shared/GenericAsyncSearch/GenericAsyncSearch.js");
|
|
1550
|
+
var _index58 = require("./common/components/MaskedTextInput/index.js");
|
|
1551
|
+
var _index59 = require("./common/components/AccessCodeTextInput/index.js");
|
|
1536
1552
|
var _config = require("./config.js");
|
|
1537
1553
|
var _Fetcher = require("./common/util/Fetcher.js");
|
|
1538
1554
|
var _httpHeaders = require("./common/util/httpHeaders.js");
|
|
@@ -1545,7 +1561,7 @@ var _interactionTypePropsHelper = require("./common/util/interactionTypePropsHel
|
|
|
1545
1561
|
var _generateDisplayPositions = require("./common/util/generateDisplayPositions.js");
|
|
1546
1562
|
var _makeScrollable = require("./common/components/shared/functionality/makeScrollable.js");
|
|
1547
1563
|
var _formatTimespan = require("./common/util/formatTimespan.js");
|
|
1548
|
-
var
|
|
1564
|
+
var _index60 = require("./common/components/ImportModal/index.js");
|
|
1549
1565
|
var _TimerService = require("./common/util/TimerService.js");
|
|
1550
1566
|
var _TimeRecordingService = require("./common/util/TimeRecordingService.js");
|
|
1551
1567
|
var _windowChecks = require("./common/util/windowChecks.js");
|
|
@@ -1592,15 +1608,15 @@ var _rce2 = require("./common/selectors/rce.js");
|
|
|
1592
1608
|
var _quizSessions4 = require("./common/selectors/quizSessions.js");
|
|
1593
1609
|
var _sessionItems = require("./common/selectors/sessionItems.js");
|
|
1594
1610
|
var _sessionItemResults = require("./common/selectors/sessionItemResults.js");
|
|
1595
|
-
var
|
|
1596
|
-
Object.keys(
|
|
1611
|
+
var _index61 = require("./common/records/index.js");
|
|
1612
|
+
Object.keys(_index61).forEach(function (key) {
|
|
1597
1613
|
if (key === "default" || key === "__esModule") return;
|
|
1598
1614
|
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
1599
|
-
if (key in exports && exports[key] ===
|
|
1615
|
+
if (key in exports && exports[key] === _index61[key]) return;
|
|
1600
1616
|
Object.defineProperty(exports, key, {
|
|
1601
1617
|
enumerable: true,
|
|
1602
1618
|
get: function get() {
|
|
1603
|
-
return
|
|
1619
|
+
return _index61[key];
|
|
1604
1620
|
}
|
|
1605
1621
|
});
|
|
1606
1622
|
});
|
|
@@ -14,7 +14,7 @@ var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/creat
|
|
|
14
14
|
var _react = _interopRequireWildcard(require("react"));
|
|
15
15
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
16
16
|
var _uiView = require("@instructure/ui-view");
|
|
17
|
-
var
|
|
17
|
+
var _quizCommon = require("@instructure/quiz-common");
|
|
18
18
|
var _index = _interopRequireDefault(require("../../../../../common/components/shared/TimeUnitsInput/index.js"));
|
|
19
19
|
var _index2 = _interopRequireDefault(require("../ExtraTimeMultiplier/index.js"));
|
|
20
20
|
var _index3 = require("../../../../../common/components/shared/FormattedDuration/index.js");
|
|
@@ -75,22 +75,22 @@ var ExtraTimeSettings = /*#__PURE__*/function (_Component) {
|
|
|
75
75
|
return /*#__PURE__*/_react.default.createElement(_uiView.View, {
|
|
76
76
|
display: "block",
|
|
77
77
|
margin: "medium none"
|
|
78
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
78
|
+
}, /*#__PURE__*/_react.default.createElement(_quizCommon.SimpleSelect, {
|
|
79
79
|
renderLabel: (0, _formatMessage.default)('Time adjustments'),
|
|
80
80
|
assistiveText: (0, _formatMessage.default)('4 options available. Use arrow keys to navigate options.'),
|
|
81
81
|
value: timeAdjustmentType,
|
|
82
82
|
onChange: this.onChangeTimeAdjustmentType,
|
|
83
83
|
"data-automation": "sdk-moderation-time-dropdown"
|
|
84
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
84
|
+
}, /*#__PURE__*/_react.default.createElement(_quizCommon.SimpleSelect.Option, {
|
|
85
85
|
id: "extra-time-settings-select-option-none",
|
|
86
86
|
value: "none"
|
|
87
|
-
}, (0, _formatMessage.default)('None')), /*#__PURE__*/_react.default.createElement(
|
|
87
|
+
}, (0, _formatMessage.default)('None')), /*#__PURE__*/_react.default.createElement(_quizCommon.SimpleSelect.Option, {
|
|
88
88
|
id: "extra-time-settings-select-option-additional-time",
|
|
89
89
|
value: "extraTimeEnabled"
|
|
90
|
-
}, (0, _formatMessage.default)('Give additional time')), /*#__PURE__*/_react.default.createElement(
|
|
90
|
+
}, (0, _formatMessage.default)('Give additional time')), /*#__PURE__*/_react.default.createElement(_quizCommon.SimpleSelect.Option, {
|
|
91
91
|
id: "extra-time-settings-select-option-remove-time",
|
|
92
92
|
value: "disableTimer"
|
|
93
|
-
}, (0, _formatMessage.default)('Remove time limit (unlimited)')), /*#__PURE__*/_react.default.createElement(
|
|
93
|
+
}, (0, _formatMessage.default)('Remove time limit (unlimited)')), /*#__PURE__*/_react.default.createElement(_quizCommon.SimpleSelect.Option, {
|
|
94
94
|
id: "extra-time-settings-select-option-time-multiplier",
|
|
95
95
|
value: "timerMultiplierEnabled"
|
|
96
96
|
}, (0, _formatMessage.default)('Time limit multiplier'))), timeAdjustmentType === 'extraTimeEnabled' && /*#__PURE__*/_react.default.createElement(_index.default, {
|
|
@@ -102,7 +102,7 @@ var ExtraTimeSettings = /*#__PURE__*/function (_Component) {
|
|
|
102
102
|
minutesLabel: (0, _formatMessage.default)('Minutes'),
|
|
103
103
|
minutesDataAutomation: "sdk-moderation-time-minutes",
|
|
104
104
|
description: (0, _formatMessage.default)('Additional time'),
|
|
105
|
-
margin: "medium none"
|
|
105
|
+
margin: "medium none none none"
|
|
106
106
|
}), timeAdjustmentType === 'timerMultiplierEnabled' && /*#__PURE__*/_react.default.createElement(_index2.default, {
|
|
107
107
|
onChange: this.onChangeMultiplier,
|
|
108
108
|
timerMultiplierValue: timerSettings.timerMultiplierValue,
|
|
@@ -12,7 +12,6 @@ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits
|
|
|
12
12
|
var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper"));
|
|
13
13
|
var _react = _interopRequireWildcard(require("react"));
|
|
14
14
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
15
|
-
var _uiText = require("@instructure/ui-text");
|
|
16
15
|
var _uiTooltip = require("@instructure/ui-tooltip");
|
|
17
16
|
var _uiModal = require("@instructure/ui-modal");
|
|
18
17
|
var _uiTruncateText = require("@instructure/ui-truncate-text");
|
|
@@ -21,8 +20,6 @@ var _uiView = require("@instructure/ui-view");
|
|
|
21
20
|
var _uiButtons = require("@instructure/ui-buttons");
|
|
22
21
|
var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/es/format-message"));
|
|
23
22
|
var _uiA11yContent = require("@instructure/ui-a11y-content");
|
|
24
|
-
var _featureCheck = require("../../../../common/util/featureCheck.js");
|
|
25
|
-
var _index = require("../../../../common/components/shared/IfFeature/index.js");
|
|
26
23
|
var AccommodationModal = /*#__PURE__*/function (_Component) {
|
|
27
24
|
(0, _inherits2.default)(AccommodationModal, _Component);
|
|
28
25
|
var _super = (0, _createSuper2.default)(AccommodationModal);
|
|
@@ -65,7 +62,7 @@ var AccommodationModal = /*#__PURE__*/function (_Component) {
|
|
|
65
62
|
}, _this.props.studentName));
|
|
66
63
|
};
|
|
67
64
|
_this.renderHeading = function () {
|
|
68
|
-
if (
|
|
65
|
+
if (_this.props.atteqApplyChangesToCurrentQuizAttemptsEnabled) {
|
|
69
66
|
return /*#__PURE__*/_react.default.createElement(_uiHeading.Heading, null, /*#__PURE__*/_react.default.createElement(_uiA11yContent.ScreenReaderContent, null, (0, _formatMessage.default)('Student Accommodation')), (0, _formatMessage.default)('Student Accommodation'));
|
|
70
67
|
}
|
|
71
68
|
var _this$props = _this.props,
|
|
@@ -92,7 +89,7 @@ var AccommodationModal = /*#__PURE__*/function (_Component) {
|
|
|
92
89
|
(0, _createClass2.default)(AccommodationModal, [{
|
|
93
90
|
key: "labelText",
|
|
94
91
|
value: function labelText() {
|
|
95
|
-
if (
|
|
92
|
+
if (this.props.atteqApplyChangesToCurrentQuizAttemptsEnabled) {
|
|
96
93
|
return (0, _formatMessage.default)('Student Accommodation');
|
|
97
94
|
}
|
|
98
95
|
return this.props.studentName || (0, _formatMessage.default)('Accommodations Modal');
|
|
@@ -101,7 +98,6 @@ var AccommodationModal = /*#__PURE__*/function (_Component) {
|
|
|
101
98
|
key: "render",
|
|
102
99
|
value: function render() {
|
|
103
100
|
var _this$props2 = this.props,
|
|
104
|
-
studentName = _this$props2.studentName,
|
|
105
101
|
open = _this$props2.open,
|
|
106
102
|
closeModal = _this$props2.closeModal,
|
|
107
103
|
mountNode = _this$props2.mountNode,
|
|
@@ -117,12 +113,7 @@ var AccommodationModal = /*#__PURE__*/function (_Component) {
|
|
|
117
113
|
placement: "end",
|
|
118
114
|
offset: "medium",
|
|
119
115
|
screenReaderLabel: (0, _formatMessage.default)('Close')
|
|
120
|
-
}), this.renderHeading()), /*#__PURE__*/_react.default.createElement(_uiModal.Modal.Body, null, /*#__PURE__*/_react.default.createElement(
|
|
121
|
-
name: "atteq_apply_changes_to_current_quiz_attempts"
|
|
122
|
-
}, /*#__PURE__*/_react.default.createElement(_uiText.Text, {
|
|
123
|
-
weight: "bold",
|
|
124
|
-
as: "h2"
|
|
125
|
-
}, studentName)), children), /*#__PURE__*/_react.default.createElement(_uiModal.Modal.Footer, null, /*#__PURE__*/_react.default.createElement(_uiButtons.Button, {
|
|
116
|
+
}), this.renderHeading()), /*#__PURE__*/_react.default.createElement(_uiModal.Modal.Body, null, children), /*#__PURE__*/_react.default.createElement(_uiModal.Modal.Footer, null, /*#__PURE__*/_react.default.createElement(_uiButtons.Button, {
|
|
126
117
|
onClick: this.cancelAction,
|
|
127
118
|
margin: "xxx-small",
|
|
128
119
|
"data-automation": "sdk-moderation-cancel"
|
|
@@ -146,7 +137,8 @@ AccommodationModal.propTypes = {
|
|
|
146
137
|
onDismiss: _propTypes.default.func,
|
|
147
138
|
mountNode: _propTypes.default.string,
|
|
148
139
|
// this is just to fix chromatic
|
|
149
|
-
children: _propTypes.default.oneOfType([_propTypes.default.node, _propTypes.default.arrayOf(_propTypes.default.node)])
|
|
140
|
+
children: _propTypes.default.oneOfType([_propTypes.default.node, _propTypes.default.arrayOf(_propTypes.default.node)]),
|
|
141
|
+
atteqApplyChangesToCurrentQuizAttemptsEnabled: _propTypes.default.bool.isRequired
|
|
150
142
|
};
|
|
151
143
|
AccommodationModal.defaultProps = {
|
|
152
144
|
children: [],
|
|
@@ -332,7 +332,8 @@ var ModerateTable = (_dec = (0, _quizCommon.withStyleOverrides)(_styles.default,
|
|
|
332
332
|
css: this.props.styles.page
|
|
333
333
|
}, (0, _emotion.jsx)(_index4.default, {
|
|
334
334
|
onClose: this.onCloseTray,
|
|
335
|
-
onSave: this.props.onSaveTray
|
|
335
|
+
onSave: this.props.onSaveTray,
|
|
336
|
+
atteqApplyChangesToCurrentQuizAttemptsEnabled: this.props.atteqApplyChangesToCurrentQuizAttemptsEnabled
|
|
336
337
|
}, (0, _emotion.jsx)(_uiFlex.Flex.Item, null, !this.props.anonymousGrading && _ref6), this.props.children), this.renderContent());
|
|
337
338
|
}
|
|
338
339
|
}]);
|
|
@@ -387,7 +388,8 @@ var ModerateTable = (_dec = (0, _quizCommon.withStyleOverrides)(_styles.default,
|
|
|
387
388
|
getQuizSessions: _propTypes.default.func.isRequired,
|
|
388
389
|
addSuccess: _propTypes.default.func.isRequired,
|
|
389
390
|
styles: _propTypes.default.object,
|
|
390
|
-
makeStyles: _propTypes.default.func
|
|
391
|
+
makeStyles: _propTypes.default.func,
|
|
392
|
+
atteqApplyChangesToCurrentQuizAttemptsEnabled: _propTypes.default.bool.isRequired
|
|
391
393
|
}, _ModerateTable.defaultProps = {
|
|
392
394
|
anonymousGrading: false,
|
|
393
395
|
children: void 0,
|