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

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.
@@ -4,4 +4,7 @@ export var getFailedToFetchReports = function getFailedToFetchReports() {
4
4
  };
5
5
  export var getLastReportGenerationFailed = function getLastReportGenerationFailed() {
6
6
  return t('Report generation failed. Please try again.');
7
+ };
8
+ export var getReportGenerationFailure = function getReportGenerationFailure() {
9
+ return t('An error has occurred while generating this report. Please try again.');
7
10
  };
@@ -0,0 +1,40 @@
1
+ import _regeneratorRuntime from "@babel/runtime/regenerator";
2
+ import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
3
+ import { getReportGenerationFailure } from "./errorMessages.js";
4
+ export var generateReports = /*#__PURE__*/function () {
5
+ var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref) {
6
+ var setGenerationInProgress, setStatusPollingInProgress, generateAnalysis, filter, addError;
7
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
8
+ while (1) {
9
+ switch (_context.prev = _context.next) {
10
+ case 0:
11
+ setGenerationInProgress = _ref.setGenerationInProgress, setStatusPollingInProgress = _ref.setStatusPollingInProgress, generateAnalysis = _ref.generateAnalysis, filter = _ref.filter, addError = _ref.addError;
12
+ _context.prev = 1;
13
+ setGenerationInProgress(true);
14
+ _context.next = 5;
15
+ return generateAnalysis(filter);
16
+
17
+ case 5:
18
+ setStatusPollingInProgress(true);
19
+ _context.next = 12;
20
+ break;
21
+
22
+ case 8:
23
+ _context.prev = 8;
24
+ _context.t0 = _context["catch"](1);
25
+ addError(getReportGenerationFailure());
26
+ setGenerationInProgress(false);
27
+
28
+ case 12:
29
+ case "end":
30
+ return _context.stop();
31
+ }
32
+ }
33
+ }, _callee, null, [[1, 8]]);
34
+ }));
35
+
36
+ return function generateReports(_x) {
37
+ return _ref2.apply(this, arguments);
38
+ };
39
+ }();
40
+ export default generateReports;
@@ -6,6 +6,7 @@ import PropTypes from 'prop-types';
6
6
  import { itemAnalysisPropType, quizAnalysisPropType } from "./propTypes.js";
7
7
  import { fetchReports } from "./fetchReports.js";
8
8
  import { fetchReportsStatus } from "./fetchReportsStatus.js";
9
+ import { generateReports as triggerReportGeneration } from "./generateReports.js";
9
10
  export var withAnalysisStatePresenter = function withAnalysisStatePresenter(OriginalComponent) {
10
11
  var WithAnalysisStatePresenter = function WithAnalysisStatePresenter(_ref) {
11
12
  var quizAnalysis = _ref.quizAnalysis,
@@ -20,14 +21,14 @@ export var withAnalysisStatePresenter = function withAnalysisStatePresenter(Orig
20
21
  setGenerationInProgress = _ref.setGenerationInProgress,
21
22
  setAnalysisError = _ref.setAnalysisError,
22
23
  activeQuizId = _ref.activeQuizId,
23
- generateReport = _ref.generateReport,
24
+ generateAnalysis = _ref.generateAnalysis,
24
25
  fetchQuizAnalysis = _ref.fetchQuizAnalysis,
25
26
  fetchItemAnalyses = _ref.fetchItemAnalyses,
26
27
  fetchAnalysesStatus = _ref.fetchAnalysesStatus,
27
28
  statusPollingInProgress = _ref.statusPollingInProgress,
28
29
  setStatusPollingInProgress = _ref.setStatusPollingInProgress,
29
30
  pollingInterval = _ref.pollingInterval,
30
- passThroughProps = _objectWithoutProperties(_ref, ["quizAnalysis", "itemAnalyses", "fetchInProgress", "generationInProgress", "analysisError", "setQuizAnalysis", "addError", "setItemAnalyses", "setFetchInProgress", "setGenerationInProgress", "setAnalysisError", "activeQuizId", "generateReport", "fetchQuizAnalysis", "fetchItemAnalyses", "fetchAnalysesStatus", "statusPollingInProgress", "setStatusPollingInProgress", "pollingInterval"]);
31
+ passThroughProps = _objectWithoutProperties(_ref, ["quizAnalysis", "itemAnalyses", "fetchInProgress", "generationInProgress", "analysisError", "setQuizAnalysis", "addError", "setItemAnalyses", "setFetchInProgress", "setGenerationInProgress", "setAnalysisError", "activeQuizId", "generateAnalysis", "fetchQuizAnalysis", "fetchItemAnalyses", "fetchAnalysesStatus", "statusPollingInProgress", "setStatusPollingInProgress", "pollingInterval"]);
31
32
 
32
33
  WithAnalysisStatePresenter.displayName = "WithAnalysisStatePresenter(".concat(OriginalComponent.displayName || OriginalComponent.name, ")");
33
34
  var runningInterval = useRef(null);
@@ -64,10 +65,25 @@ export var withAnalysisStatePresenter = function withAnalysisStatePresenter(Orig
64
65
 
65
66
  function _generateReports() {
66
67
  _generateReports = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
68
+ var filter,
69
+ generationConfig,
70
+ _args2 = arguments;
67
71
  return _regeneratorRuntime.wrap(function _callee2$(_context2) {
68
72
  while (1) {
69
73
  switch (_context2.prev = _context2.next) {
70
74
  case 0:
75
+ filter = _args2.length > 0 && _args2[0] !== void 0 ? _args2[0] : 'last_attempt';
76
+ generationConfig = {
77
+ filter: filter,
78
+ generateAnalysis: generateAnalysis,
79
+ setGenerationInProgress: setGenerationInProgress,
80
+ setStatusPollingInProgress: setStatusPollingInProgress,
81
+ addError: addError
82
+ };
83
+ _context2.next = 4;
84
+ return triggerReportGeneration(generationConfig);
85
+
86
+ case 4:
71
87
  case "end":
72
88
  return _context2.stop();
73
89
  }
@@ -154,14 +170,13 @@ export var withAnalysisStatePresenter = function withAnalysisStatePresenter(Orig
154
170
  fetchAnalysesStatus: PropTypes.func.isRequired,
155
171
  addError: PropTypes.func.isRequired,
156
172
  pollingInterval: PropTypes.number.isRequired,
157
- // can be required after passed from LTI
158
- generateReport: PropTypes.func
173
+ generateAnalysis: PropTypes.func.isRequired // from LTI, f(filter: string)
174
+
159
175
  };
160
176
  WithAnalysisStatePresenter.defaultProps = {
161
177
  quizAnalysis: void 0,
162
178
  itemAnalyses: void 0,
163
- analysisError: '',
164
- generateReport: Function.prototype
179
+ analysisError: ''
165
180
  };
166
181
  return WithAnalysisStatePresenter;
167
182
  };
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.getLastReportGenerationFailed = exports.getFailedToFetchReports = void 0;
8
+ exports.getReportGenerationFailure = exports.getLastReportGenerationFailed = exports.getFailedToFetchReports = void 0;
9
9
 
10
10
  var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/es/format-message"));
11
11
 
@@ -19,4 +19,10 @@ var getLastReportGenerationFailed = function getLastReportGenerationFailed() {
19
19
  return (0, _formatMessage.default)('Report generation failed. Please try again.');
20
20
  };
21
21
 
22
- exports.getLastReportGenerationFailed = getLastReportGenerationFailed;
22
+ exports.getLastReportGenerationFailed = getLastReportGenerationFailed;
23
+
24
+ var getReportGenerationFailure = function getReportGenerationFailure() {
25
+ return (0, _formatMessage.default)('An error has occurred while generating this report. Please try again.');
26
+ };
27
+
28
+ exports.getReportGenerationFailure = getReportGenerationFailure;
@@ -0,0 +1,55 @@
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 = exports.generateReports = void 0;
9
+
10
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
+
12
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
13
+
14
+ var _errorMessages = require("./errorMessages.js");
15
+
16
+ var generateReports = /*#__PURE__*/function () {
17
+ var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(_ref) {
18
+ var setGenerationInProgress, setStatusPollingInProgress, generateAnalysis, filter, addError;
19
+ return _regenerator.default.wrap(function _callee$(_context) {
20
+ while (1) {
21
+ switch (_context.prev = _context.next) {
22
+ case 0:
23
+ setGenerationInProgress = _ref.setGenerationInProgress, setStatusPollingInProgress = _ref.setStatusPollingInProgress, generateAnalysis = _ref.generateAnalysis, filter = _ref.filter, addError = _ref.addError;
24
+ _context.prev = 1;
25
+ setGenerationInProgress(true);
26
+ _context.next = 5;
27
+ return generateAnalysis(filter);
28
+
29
+ case 5:
30
+ setStatusPollingInProgress(true);
31
+ _context.next = 12;
32
+ break;
33
+
34
+ case 8:
35
+ _context.prev = 8;
36
+ _context.t0 = _context["catch"](1);
37
+ addError((0, _errorMessages.getReportGenerationFailure)());
38
+ setGenerationInProgress(false);
39
+
40
+ case 12:
41
+ case "end":
42
+ return _context.stop();
43
+ }
44
+ }
45
+ }, _callee, null, [[1, 8]]);
46
+ }));
47
+
48
+ return function generateReports(_x) {
49
+ return _ref2.apply(this, arguments);
50
+ };
51
+ }();
52
+
53
+ exports.generateReports = generateReports;
54
+ var _default = generateReports;
55
+ exports.default = _default;
@@ -25,6 +25,8 @@ var _fetchReports = require("./fetchReports.js");
25
25
 
26
26
  var _fetchReportsStatus = require("./fetchReportsStatus.js");
27
27
 
28
+ var _generateReports2 = require("./generateReports.js");
29
+
28
30
  var withAnalysisStatePresenter = function withAnalysisStatePresenter(OriginalComponent) {
29
31
  var WithAnalysisStatePresenter = function WithAnalysisStatePresenter(_ref) {
30
32
  var quizAnalysis = _ref.quizAnalysis,
@@ -39,14 +41,14 @@ var withAnalysisStatePresenter = function withAnalysisStatePresenter(OriginalCom
39
41
  setGenerationInProgress = _ref.setGenerationInProgress,
40
42
  setAnalysisError = _ref.setAnalysisError,
41
43
  activeQuizId = _ref.activeQuizId,
42
- generateReport = _ref.generateReport,
44
+ generateAnalysis = _ref.generateAnalysis,
43
45
  fetchQuizAnalysis = _ref.fetchQuizAnalysis,
44
46
  fetchItemAnalyses = _ref.fetchItemAnalyses,
45
47
  fetchAnalysesStatus = _ref.fetchAnalysesStatus,
46
48
  statusPollingInProgress = _ref.statusPollingInProgress,
47
49
  setStatusPollingInProgress = _ref.setStatusPollingInProgress,
48
50
  pollingInterval = _ref.pollingInterval,
49
- passThroughProps = (0, _objectWithoutProperties2.default)(_ref, ["quizAnalysis", "itemAnalyses", "fetchInProgress", "generationInProgress", "analysisError", "setQuizAnalysis", "addError", "setItemAnalyses", "setFetchInProgress", "setGenerationInProgress", "setAnalysisError", "activeQuizId", "generateReport", "fetchQuizAnalysis", "fetchItemAnalyses", "fetchAnalysesStatus", "statusPollingInProgress", "setStatusPollingInProgress", "pollingInterval"]);
51
+ passThroughProps = (0, _objectWithoutProperties2.default)(_ref, ["quizAnalysis", "itemAnalyses", "fetchInProgress", "generationInProgress", "analysisError", "setQuizAnalysis", "addError", "setItemAnalyses", "setFetchInProgress", "setGenerationInProgress", "setAnalysisError", "activeQuizId", "generateAnalysis", "fetchQuizAnalysis", "fetchItemAnalyses", "fetchAnalysesStatus", "statusPollingInProgress", "setStatusPollingInProgress", "pollingInterval"]);
50
52
  WithAnalysisStatePresenter.displayName = "WithAnalysisStatePresenter(".concat(OriginalComponent.displayName || OriginalComponent.name, ")");
51
53
  var runningInterval = (0, _react.useRef)(null);
52
54
 
@@ -82,10 +84,25 @@ var withAnalysisStatePresenter = function withAnalysisStatePresenter(OriginalCom
82
84
 
83
85
  function _generateReports() {
84
86
  _generateReports = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
87
+ var filter,
88
+ generationConfig,
89
+ _args2 = arguments;
85
90
  return _regenerator.default.wrap(function _callee2$(_context2) {
86
91
  while (1) {
87
92
  switch (_context2.prev = _context2.next) {
88
93
  case 0:
94
+ filter = _args2.length > 0 && _args2[0] !== void 0 ? _args2[0] : 'last_attempt';
95
+ generationConfig = {
96
+ filter: filter,
97
+ generateAnalysis: generateAnalysis,
98
+ setGenerationInProgress: setGenerationInProgress,
99
+ setStatusPollingInProgress: setStatusPollingInProgress,
100
+ addError: addError
101
+ };
102
+ _context2.next = 4;
103
+ return (0, _generateReports2.generateReports)(generationConfig);
104
+
105
+ case 4:
89
106
  case "end":
90
107
  return _context2.stop();
91
108
  }
@@ -172,14 +189,13 @@ var withAnalysisStatePresenter = function withAnalysisStatePresenter(OriginalCom
172
189
  fetchAnalysesStatus: _propTypes.default.func.isRequired,
173
190
  addError: _propTypes.default.func.isRequired,
174
191
  pollingInterval: _propTypes.default.number.isRequired,
175
- // can be required after passed from LTI
176
- generateReport: _propTypes.default.func
192
+ generateAnalysis: _propTypes.default.func.isRequired // from LTI, f(filter: string)
193
+
177
194
  };
178
195
  WithAnalysisStatePresenter.defaultProps = {
179
196
  quizAnalysis: void 0,
180
197
  itemAnalyses: void 0,
181
- analysisError: '',
182
- generateReport: Function.prototype
198
+ analysisError: ''
183
199
  };
184
200
  return WithAnalysisStatePresenter;
185
201
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@instructure/quiz-core",
3
- "version": "17.63.1-rc.5+3b1ed689c",
3
+ "version": "17.63.1-rc.7+db67b32a0",
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.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",
44
+ "@instructure/quiz-common": "17.63.1-rc.7+db67b32a0",
45
+ "@instructure/quiz-i18n": "17.63.1-rc.7+db67b32a0",
46
+ "@instructure/quiz-interactions": "17.63.1-rc.7+db67b32a0",
47
+ "@instructure/quiz-number-input": "17.63.1-rc.7+db67b32a0",
48
+ "@instructure/quiz-rce": "17.63.1-rc.7+db67b32a0",
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.5+3b1ed689c",
109
+ "instructure-validations": "17.63.1-rc.7+db67b32a0",
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.5+3b1ed689c",
160
+ "quiz-presets": "17.63.1-rc.7+db67b32a0",
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": "3b1ed689cbb9d38d69287f541dfa2396cc315f28"
176
+ "gitHead": "db67b32a0cab3d1af9fb67bbee8acad5589578a4"
177
177
  }