@instructure/quiz-core 17.63.1-rc.3 → 17.63.1-rc.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -46,17 +46,17 @@ var _propTypes2 = require("../propTypes.js");
46
46
  var _dec, _class, _class2, _temp;
47
47
 
48
48
  var styles = {
49
- componentId: 'eJSiT',
49
+ componentId: 'boQPo',
50
50
  template: function template(theme) {
51
- return "\n\n.eJSiT_bqdH{column-gap:5px;display:flex;justify-content:space-between;padding:".concat(theme.metricsPadding || 'inherit', " 0}\n\n.eJSiT_fbIL{border-radius:").concat(theme.cardBorderRadius || 'inherit', ";box-shadow:").concat(theme.cardBoxShadow || 'inherit', ";display:inline-flex;flex-direction:column;margin:").concat(theme.cardMargin || 'inherit', ";padding:").concat(theme.cardPadding || 'inherit', ";width:").concat(theme.cardWidth || 'inherit', "}\n\n.eJSiT_blRb{max-width:160px;padding-right:10px}");
51
+ return "\n\n.boQPo_bqdH{column-gap:5px;display:flex;justify-content:space-between;padding-bottom:".concat(theme.metricsPadding || 'inherit', "}\n\n.boQPo_PFlN{border-radius:").concat(theme.cardBorderRadius || 'inherit', ";box-shadow:").concat(theme.cardBoxShadow || 'inherit', ";display:inline-flex;flex-direction:column;margin:").concat(theme.cardMargin || 'inherit', ";padding:").concat(theme.cardPadding || 'inherit', ";width:").concat(theme.cardWidth || 'inherit', "}\n\n.boQPo_blRb{max-width:160px;padding-right:10px}\n\n.boQPo_bxzy{border-bottom:1px solid ").concat(theme.quizSummaryBorderBottomColor || 'inherit', ";margin-bottom:15px;padding-bottom:15px}\n\n.boQPo_dKIc{padding-bottom:15px}\n\n.boQPo_cGHR{align-self:flex-end}");
52
52
  },
53
- 'metricsContainer': 'eJSiT_bqdH',
54
- 'card': 'eJSiT_fbIL',
55
- 'dateContainer': 'eJSiT_blRb'
53
+ 'metricsContainer': 'boQPo_bqdH',
54
+ 'reportCard': 'boQPo_PFlN',
55
+ 'dateContainer': 'boQPo_blRb',
56
+ 'quizAnalysisSummary': 'boQPo_bxzy',
57
+ 'titleContainer': 'boQPo_dKIc',
58
+ 'spinnerContainer': 'boQPo_cGHR'
56
59
  };
57
-
58
- var _ref = /*#__PURE__*/_react.default.createElement(_Spinner.default, null);
59
-
60
60
  var NewQuizAndItemAnalysisReportCardPresenter = (_dec = (0, _uiThemeable.themeable)(_theme.default, styles), _dec(_class = (_temp = _class2 = /*#__PURE__*/function (_Component) {
61
61
  (0, _inherits2.default)(NewQuizAndItemAnalysisReportCardPresenter, _Component);
62
62
 
@@ -97,20 +97,14 @@ var NewQuizAndItemAnalysisReportCardPresenter = (_dec = (0, _uiThemeable.themeab
97
97
  }));
98
98
  };
99
99
 
100
- return _this;
101
- }
102
-
103
- (0, _createClass2.default)(NewQuizAndItemAnalysisReportCardPresenter, [{
104
- key: "renderContent",
105
- value: function renderContent() {
106
- var _this$props = this.props,
107
- name = _this$props.name,
108
- href = _this$props.href,
109
- quizAnalysis = _this$props.quizAnalysis;
110
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_uiText.Text, {
111
- size: "medium",
112
- weight: "bold"
113
- }, name), this.renderMetrics(), /*#__PURE__*/_react.default.createElement(_uiFlex.Flex, {
100
+ _this.renderQuizAnalysisSummary = function () {
101
+ var _this$props = _this.props,
102
+ quizAnalysis = _this$props.quizAnalysis,
103
+ itemAnalyses = _this$props.itemAnalyses,
104
+ href = _this$props.href;
105
+ return /*#__PURE__*/_react.default.createElement("div", {
106
+ className: styles.quizAnalysisSummary
107
+ }, _this.renderMetrics(), /*#__PURE__*/_react.default.createElement(_uiFlex.Flex, {
114
108
  direction: "row",
115
109
  justifyItems: "space-between"
116
110
  }, /*#__PURE__*/_react.default.createElement("div", {
@@ -118,18 +112,66 @@ var NewQuizAndItemAnalysisReportCardPresenter = (_dec = (0, _uiThemeable.themeab
118
112
  }, /*#__PURE__*/_react.default.createElement(_index3.AnalysisUpdateDate, {
119
113
  date: quizAnalysis.created_timestamp,
120
114
  multiline: true
121
- })), /*#__PURE__*/_react.default.createElement(_uiLink.Link, {
115
+ })), quizAnalysis && itemAnalyses && /*#__PURE__*/_react.default.createElement(_uiLink.Link, {
122
116
  href: href
123
117
  }, /*#__PURE__*/_react.default.createElement(_uiText.Text, {
124
118
  size: "small"
125
119
  }, (0, _formatMessage.default)('View Report')))));
126
- }
127
- }, {
120
+ };
121
+
122
+ _this.renderSpinner = function (mainText) {
123
+ return /*#__PURE__*/_react.default.createElement(_Spinner.default, {
124
+ size: "x-small",
125
+ color: "brand",
126
+ minHeight: "0",
127
+ mainText: mainText,
128
+ fontSize: "x-small"
129
+ });
130
+ };
131
+
132
+ _this.renderReportCardFooter = function () {
133
+ var _this$props2 = _this.props,
134
+ generationInProgress = _this$props2.generationInProgress,
135
+ generateReports = _this$props2.generateReports,
136
+ analysisError = _this$props2.analysisError;
137
+ return /*#__PURE__*/_react.default.createElement(_uiFlex.Flex, {
138
+ direction: "row",
139
+ justifyItems: "space-between"
140
+ }, /*#__PURE__*/_react.default.createElement(_uiFlex.Flex.Item, {
141
+ shouldShrink: true
142
+ }, analysisError && !generationInProgress && /*#__PURE__*/_react.default.createElement(_uiText.Text, {
143
+ size: "x-small",
144
+ lineHeight: "fit",
145
+ weight: "bold",
146
+ color: "danger"
147
+ }, analysisError)), /*#__PURE__*/_react.default.createElement(_uiFlex.Flex.Item, null, generationInProgress ? _this.renderSpinner((0, _formatMessage.default)('Generation In Progress')) : /*#__PURE__*/_react.default.createElement(_uiLink.Link, {
148
+ onClick: generateReports,
149
+ role: "button"
150
+ }, /*#__PURE__*/_react.default.createElement(_uiText.Text, {
151
+ size: "small"
152
+ }, (0, _formatMessage.default)('Generate Report')))));
153
+ };
154
+
155
+ return _this;
156
+ }
157
+
158
+ (0, _createClass2.default)(NewQuizAndItemAnalysisReportCardPresenter, [{
128
159
  key: "render",
129
160
  value: function render() {
161
+ var _this$props3 = this.props,
162
+ fetchInProgress = _this$props3.fetchInProgress,
163
+ name = _this$props3.name,
164
+ quizAnalysis = _this$props3.quizAnalysis;
130
165
  return /*#__PURE__*/_react.default.createElement(_index.default, {
131
- className: styles.card
132
- }, this.props.quizAnalysis ? this.renderContent() : _ref);
166
+ className: styles.reportCard
167
+ }, /*#__PURE__*/_react.default.createElement("div", {
168
+ className: styles.titleContainer
169
+ }, /*#__PURE__*/_react.default.createElement(_uiText.Text, {
170
+ size: "medium",
171
+ weight: "bold"
172
+ }, name)), !fetchInProgress && quizAnalysis && this.renderQuizAnalysisSummary(), fetchInProgress && /*#__PURE__*/_react.default.createElement("div", {
173
+ className: styles.spinnerContainer
174
+ }, this.renderSpinner()), !fetchInProgress && this.renderReportCardFooter());
133
175
  }
134
176
  }]);
135
177
  NewQuizAndItemAnalysisReportCardPresenter.displayName = "NewQuizAndItemAnalysisReportCardPresenter";
@@ -137,10 +179,18 @@ var NewQuizAndItemAnalysisReportCardPresenter = (_dec = (0, _uiThemeable.themeab
137
179
  }(_react.Component), _class2.propTypes = {
138
180
  name: _propTypes.default.node,
139
181
  href: _propTypes.default.string,
140
- quizAnalysis: _propTypes2.quizAnalysisPropType
182
+ quizAnalysis: _propTypes2.quizAnalysisPropType,
183
+ itemAnalyses: _propTypes.default.arrayOf(_propTypes2.itemAnalysisPropType),
184
+ fetchInProgress: _propTypes.default.bool.isRequired,
185
+ generationInProgress: _propTypes.default.bool.isRequired,
186
+ analysisError: _propTypes.default.string,
187
+ generateReports: _propTypes.default.func.isRequired
141
188
  }, _class2.defaultProps = {
142
189
  name: void 0,
143
190
  href: void 0,
144
- quizAnalysis: void 0
191
+ analysisError: void 0,
192
+ generationInProgress: void 0,
193
+ quizAnalysis: void 0,
194
+ itemAnalyses: void 0
145
195
  }, _temp)) || _class);
146
196
  exports.NewQuizAndItemAnalysisReportCardPresenter = NewQuizAndItemAnalysisReportCardPresenter;
@@ -7,13 +7,15 @@ exports.default = generator;
7
7
 
8
8
  function generator(_ref) {
9
9
  var spacing = _ref.spacing,
10
- borders = _ref.borders;
10
+ borders = _ref.borders,
11
+ colors = _ref.colors;
11
12
  return {
12
13
  metricsPadding: spacing.medium,
13
14
  cardWidth: '16rem',
14
15
  cardPadding: spacing.medium,
15
16
  cardMargin: spacing.xSmall,
16
17
  cardBoxShadow: '1px 1px 3px 0 #ddd',
17
- cardBorderRadius: borders.radiusMedium
18
+ cardBorderRadius: borders.radiusMedium,
19
+ quizSummaryBorderBottomColor: colors.tiara
18
20
  };
19
21
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@instructure/quiz-core",
3
- "version": "17.63.1-rc.3+bb9038eca",
3
+ "version": "17.63.1-rc.5+3b1ed689c",
4
4
  "license": "MIT",
5
5
  "description": "The Quiz React SDK by Instructure Inc.",
6
6
  "author": "Instructure, Inc. Engineering and Product Design",
@@ -41,11 +41,11 @@
41
41
  ],
42
42
  "dependencies": {
43
43
  "@instructure/outcomes-ui": "^2.1.9",
44
- "@instructure/quiz-common": "17.63.1-rc.3+bb9038eca",
45
- "@instructure/quiz-i18n": "17.63.1-rc.3+bb9038eca",
46
- "@instructure/quiz-interactions": "17.63.1-rc.3+bb9038eca",
47
- "@instructure/quiz-number-input": "17.63.1-rc.3+bb9038eca",
48
- "@instructure/quiz-rce": "17.63.1-rc.3+bb9038eca",
44
+ "@instructure/quiz-common": "17.63.1-rc.5+3b1ed689c",
45
+ "@instructure/quiz-i18n": "17.63.1-rc.5+3b1ed689c",
46
+ "@instructure/quiz-interactions": "17.63.1-rc.5+3b1ed689c",
47
+ "@instructure/quiz-number-input": "17.63.1-rc.5+3b1ed689c",
48
+ "@instructure/quiz-rce": "17.63.1-rc.5+3b1ed689c",
49
49
  "@instructure/ui-a11y-content": "^7.20.0",
50
50
  "@instructure/ui-alerts": "^7.20.0",
51
51
  "@instructure/ui-avatar": "^7.20.0",
@@ -106,7 +106,7 @@
106
106
  "eventemitter3": "^3.1.0",
107
107
  "humps": "^2.0.0",
108
108
  "immutable": "^3.8.1",
109
- "instructure-validations": "17.63.1-rc.3+bb9038eca",
109
+ "instructure-validations": "17.63.1-rc.5+3b1ed689c",
110
110
  "ipaddr.js": "^1.5.4",
111
111
  "isomorphic-fetch": "^2.2.0",
112
112
  "isuuid": "^0.1.0",
@@ -157,7 +157,7 @@
157
157
  "intl": "^1.2.4",
158
158
  "jquery": "^2.2.3",
159
159
  "most-subject": "^5.3.0",
160
- "quiz-presets": "17.63.1-rc.3+bb9038eca",
160
+ "quiz-presets": "17.63.1-rc.5+3b1ed689c",
161
161
  "react": "^16.8.6",
162
162
  "react-addons-test-utils": "^15.6.2",
163
163
  "react-dom": "^16.8.6",
@@ -173,5 +173,5 @@
173
173
  "publishConfig": {
174
174
  "access": "public"
175
175
  },
176
- "gitHead": "bb9038eca17319245eda3bfde7b7a77b61c8498a"
176
+ "gitHead": "3b1ed689cbb9d38d69287f541dfa2396cc315f28"
177
177
  }