@instructure/quiz-core 22.14.0 → 22.15.0

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.
@@ -8,7 +8,7 @@ import { handleQuizResponse } from '../../common/api/callHandlers';
8
8
  import { getUploadUrl, sendFileToS3 } from '../../common/api/fileUpload';
9
9
  import { interactionTypeFetch } from '../../common/api/interactionTypes';
10
10
  import { getExistingQuizAndItems, quizFetchHandler } from '../../common/api/quizzes';
11
- var config = require('../../config');
11
+ import config from '../../config';
12
12
  var quizApiEndpoint = '/api/quizzes';
13
13
 
14
14
  // ==== CALLBACKS ====
@@ -111,7 +111,8 @@ function UnstyledAddContentBody(_ref) {
111
111
  textAlign: "start",
112
112
  renderIcon: IconAiSolid,
113
113
  onClick: (_slotProps$quizGenera2 = slotProps.quizGenerationButton) === null || _slotProps$quizGenera2 === void 0 ? void 0 : _slotProps$quizGenera2.onClick,
114
- disabled: (_slotProps$quizGenera3 = slotProps.quizGenerationButton) === null || _slotProps$quizGenera3 === void 0 ? void 0 : _slotProps$quizGenera3.disabled
114
+ disabled: (_slotProps$quizGenera3 = slotProps.quizGenerationButton) === null || _slotProps$quizGenera3 === void 0 ? void 0 : _slotProps$quizGenera3.disabled,
115
+ "data-automation": "sdk-interaction-button-ai"
115
116
  }, t('Generate with AI'))));
116
117
  };
117
118
  return jsx("div", {
@@ -1,4 +1,5 @@
1
1
  import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
2
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
3
  import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
3
4
  import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
4
5
  import _createClass from "@babel/runtime/helpers/esm/createClass";
@@ -6,6 +7,8 @@ import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConst
6
7
  import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
7
8
  import _inherits from "@babel/runtime/helpers/esm/inherits";
8
9
  import _regeneratorRuntime from "@babel/runtime/regenerator";
10
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
11
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
9
12
  function _callSuper(_this, derived, args) {
10
13
  function isNativeReflectConstruct() {
11
14
  if (typeof Reflect === "undefined" || !Reflect.construct) return false;
@@ -20,7 +23,15 @@ function _callSuper(_this, derived, args) {
20
23
  derived = _getPrototypeOf(derived);
21
24
  return _possibleConstructorReturn(_this, isNativeReflectConstruct() ? Reflect.construct(derived, args || [], _getPrototypeOf(_this).constructor) : derived.apply(_this, args));
22
25
  }
26
+ /**
27
+ * Returns a class that extends the Fetcher class to handle DynamoDB pagination.
28
+ *
29
+ * @param {Function} Fetcher - The Fetcher class to extend
30
+ * @param {Object.<string, any>} optionalParams - Optional query parameters to pass to the request
31
+ * @returns {Function} - A new class that extends Fetcher with pagination capabilities
32
+ */
23
33
  export function withDynamoPagination(Fetcher) {
34
+ var optionalParams = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
24
35
  return /*#__PURE__*/function (_Fetcher) {
25
36
  function _class() {
26
37
  var _this2;
@@ -58,10 +69,10 @@ export function withDynamoPagination(Fetcher) {
58
69
  ancillary = [];
59
70
  case 3:
60
71
  _context.next = 5;
61
- return this.get(url, {
72
+ return this.get(url, _objectSpread({
62
73
  lastEvaluatedHashKey: lastEvaluatedHashKey,
63
74
  lastEvaluatedRangeKey: lastEvaluatedRangeKey
64
- });
75
+ }, optionalParams));
65
76
  case 5:
66
77
  response = _context.sent;
67
78
  responses.push(response);
package/es/index.js CHANGED
@@ -27,6 +27,7 @@ export { BuildingButtons } from './building/components/layout/header/BuildingBut
27
27
  export { AccommodationModal } from './moderating/components/resources/AccommodationsModal';
28
28
  export { ExtraAttemptSettings } from './moderating/components/resources/AccommodationsModal/ExtraAttemptSettings';
29
29
  export { ExtraTimeSettings } from './moderating/components/resources/AccommodationsModal/ExtraTimeSettings';
30
+ export { ReduceAnswerChoicesSettings } from './moderating/components/resources/AccommodationsModal/ReduceAnswerChoicesSettings';
30
31
  export { PreviewFrame } from './common/components/PreviewFrame';
31
32
  export { SDKHeaderCalculator } from './common/components/SDKHeaderCalculator';
32
33
  export { QuizzesSpinner } from './common/components/shared/spinner/Spinner';
@@ -106,7 +107,7 @@ export { toErrors } from './common/util/instUIMessages';
106
107
  export { elementsForSelectors } from './common/util/ElementsForSelectors';
107
108
  export { formatTime } from './common/util/formatTimespan';
108
109
  export { connect } from './common/react-redux';
109
- export { breakdownSeconds, HOUR_IN_SECONDS } from './common/components/shared/FormattedDuration';
110
+ export { breakdownSeconds, HOUR_IN_SECONDS, MINUTE_IN_SECONDS } from './common/components/shared/FormattedDuration';
110
111
  export { sessionStore } from './common/util/sessionStore';
111
112
  export { printWithCss, ensureImagesLoaded } from './common/util/printUtils';
112
113
  export { ensureRCEContentIsLoaded } from './common/util/rceChecker';
@@ -4,10 +4,9 @@ import { handleQuizSessionEventsResponse } from '../../common/api/callHandlers';
4
4
  import { QUIZ_SESSION_EVENTS_FETCH_CALL } from '@instructure/quiz-common';
5
5
  export function getQuizSessionEvents(quizSessionId, launchToken) {
6
6
  var url = "/api/quiz_sessions/".concat(quizSessionId, "/quiz_session_events");
7
- if (launchToken) {
8
- url += "?launch_token=".concat(launchToken);
9
- }
10
- var fetcher = Reflect.construct(withDynamoPagination(Fetcher), [{
7
+ var fetcher = Reflect.construct(withDynamoPagination(Fetcher, launchToken ? {
8
+ launchToken: launchToken
9
+ } : {}), [{
11
10
  callType: QUIZ_SESSION_EVENTS_FETCH_CALL
12
11
  }]);
13
12
  return function (dispatch, getState) {
@@ -19,7 +19,6 @@ function _callSuper(_this, derived, args) {
19
19
  derived = _getPrototypeOf(derived);
20
20
  return _possibleConstructorReturn(_this, isNativeReflectConstruct() ? Reflect.construct(derived, args || [], _getPrototypeOf(_this).constructor) : derived.apply(_this, args));
21
21
  }
22
- /* eslint-disable no-unused-vars */
23
22
  /** @jsx jsx */
24
23
  import React, { Component } from 'react';
25
24
  import PropTypes from 'prop-types';
@@ -31,7 +30,6 @@ import t from '@instructure/quiz-i18n/format-message';
31
30
  import { Text } from '@instructure/ui-text';
32
31
  import { Heading } from '@instructure/ui-heading';
33
32
  import Legend from '../../../../charts/Legend';
34
- import { number } from 'sinon/lib/sinon/match';
35
33
  import { withStyleOverrides } from '@instructure/quiz-common';
36
34
  export var ScoreDistribution = (_dec = withStyleOverrides(generateStyle, generateComponentTheme), _dec(_class = (_ScoreDistribution = /*#__PURE__*/function (_Component) {
37
35
  function ScoreDistribution() {
@@ -40,7 +40,7 @@ var _callHandlers = require("../../common/api/callHandlers");
40
40
  var _fileUpload = require("../../common/api/fileUpload");
41
41
  var _interactionTypes = require("../../common/api/interactionTypes");
42
42
  var _quizzes = require("../../common/api/quizzes");
43
- var config = require('../../config');
43
+ var _config = _interopRequireDefault(require("../../config"));
44
44
  var quizApiEndpoint = '/api/quizzes';
45
45
 
46
46
  // ==== CALLBACKS ====
@@ -122,7 +122,7 @@ function startNewQuiz(contextId) {
122
122
  return function (dispatch, getState) {
123
123
  var newQuizData = JSON.stringify({
124
124
  title: 'Add Title...',
125
- context_id: contextId || config.defaultContextId
125
+ context_id: contextId || _config["default"].defaultContextId
126
126
  });
127
127
  var params = {
128
128
  body: newQuizData
@@ -121,7 +121,8 @@ function UnstyledAddContentBody(_ref) {
121
121
  textAlign: "start",
122
122
  renderIcon: _uiIcons.IconAiSolid,
123
123
  onClick: (_slotProps$quizGenera2 = slotProps.quizGenerationButton) === null || _slotProps$quizGenera2 === void 0 ? void 0 : _slotProps$quizGenera2.onClick,
124
- disabled: (_slotProps$quizGenera3 = slotProps.quizGenerationButton) === null || _slotProps$quizGenera3 === void 0 ? void 0 : _slotProps$quizGenera3.disabled
124
+ disabled: (_slotProps$quizGenera3 = slotProps.quizGenerationButton) === null || _slotProps$quizGenera3 === void 0 ? void 0 : _slotProps$quizGenera3.disabled,
125
+ "data-automation": "sdk-interaction-button-ai"
125
126
  }, (0, _formatMessage["default"])('Generate with AI'))));
126
127
  };
127
128
  return (0, _emotion.jsx)("div", {
@@ -8,12 +8,15 @@ exports["default"] = void 0;
8
8
  exports.withDynamoPagination = withDynamoPagination;
9
9
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
10
10
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
11
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
12
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
12
13
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
14
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
14
15
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
15
16
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
16
17
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
18
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
19
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
17
20
  function _callSuper(_this, derived, args) {
18
21
  function isNativeReflectConstruct() {
19
22
  if (typeof Reflect === "undefined" || !Reflect.construct) return false;
@@ -28,7 +31,15 @@ function _callSuper(_this, derived, args) {
28
31
  derived = (0, _getPrototypeOf2["default"])(derived);
29
32
  return (0, _possibleConstructorReturn2["default"])(_this, isNativeReflectConstruct() ? Reflect.construct(derived, args || [], (0, _getPrototypeOf2["default"])(_this).constructor) : derived.apply(_this, args));
30
33
  }
34
+ /**
35
+ * Returns a class that extends the Fetcher class to handle DynamoDB pagination.
36
+ *
37
+ * @param {Function} Fetcher - The Fetcher class to extend
38
+ * @param {Object.<string, any>} optionalParams - Optional query parameters to pass to the request
39
+ * @returns {Function} - A new class that extends Fetcher with pagination capabilities
40
+ */
31
41
  function withDynamoPagination(Fetcher) {
42
+ var optionalParams = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
32
43
  return /*#__PURE__*/function (_Fetcher) {
33
44
  function _class() {
34
45
  var _this2;
@@ -66,10 +77,10 @@ function withDynamoPagination(Fetcher) {
66
77
  ancillary = [];
67
78
  case 3:
68
79
  _context.next = 5;
69
- return this.get(url, {
80
+ return this.get(url, _objectSpread({
70
81
  lastEvaluatedHashKey: lastEvaluatedHashKey,
71
82
  lastEvaluatedRangeKey: lastEvaluatedRangeKey
72
- });
83
+ }, optionalParams));
73
84
  case 5:
74
85
  response = _context.sent;
75
86
  responses.push(response);
package/lib/index.js CHANGED
@@ -23,6 +23,7 @@ var _exportNames = {
23
23
  AccommodationModal: true,
24
24
  ExtraAttemptSettings: true,
25
25
  ExtraTimeSettings: true,
26
+ ReduceAnswerChoicesSettings: true,
26
27
  PreviewFrame: true,
27
28
  SDKHeaderCalculator: true,
28
29
  QuizzesSpinner: true,
@@ -77,6 +78,7 @@ var _exportNames = {
77
78
  FormattedTimer: true,
78
79
  breakdownSeconds: true,
79
80
  HOUR_IN_SECONDS: true,
81
+ MINUTE_IN_SECONDS: true,
80
82
  TagWrapper: true,
81
83
  RetryGradePassbackButton: true,
82
84
  GenericAsyncSearch: true,
@@ -417,6 +419,12 @@ Object.defineProperty(exports, "LocalStoreService", {
417
419
  return _localStoreService.LocalStoreService;
418
420
  }
419
421
  });
422
+ Object.defineProperty(exports, "MINUTE_IN_SECONDS", {
423
+ enumerable: true,
424
+ get: function get() {
425
+ return _FormattedDuration.MINUTE_IN_SECONDS;
426
+ }
427
+ });
420
428
  Object.defineProperty(exports, "MaskedTextInput", {
421
429
  enumerable: true,
422
430
  get: function get() {
@@ -555,6 +563,12 @@ Object.defineProperty(exports, "QuizzesSpinner", {
555
563
  return _Spinner.QuizzesSpinner;
556
564
  }
557
565
  });
566
+ Object.defineProperty(exports, "ReduceAnswerChoicesSettings", {
567
+ enumerable: true,
568
+ get: function get() {
569
+ return _ReduceAnswerChoicesSettings.ReduceAnswerChoicesSettings;
570
+ }
571
+ });
558
572
  Object.defineProperty(exports, "ReportCard", {
559
573
  enumerable: true,
560
574
  get: function get() {
@@ -1541,6 +1555,7 @@ var _BuildingButtons = require("./building/components/layout/header/BuildingButt
1541
1555
  var _AccommodationsModal = require("./moderating/components/resources/AccommodationsModal");
1542
1556
  var _ExtraAttemptSettings = require("./moderating/components/resources/AccommodationsModal/ExtraAttemptSettings");
1543
1557
  var _ExtraTimeSettings = require("./moderating/components/resources/AccommodationsModal/ExtraTimeSettings");
1558
+ var _ReduceAnswerChoicesSettings = require("./moderating/components/resources/AccommodationsModal/ReduceAnswerChoicesSettings");
1544
1559
  var _PreviewFrame = require("./common/components/PreviewFrame");
1545
1560
  var _SDKHeaderCalculator = require("./common/components/SDKHeaderCalculator");
1546
1561
  var _Spinner = require("./common/components/shared/spinner/Spinner");
@@ -11,10 +11,9 @@ var _callHandlers = require("../../common/api/callHandlers");
11
11
  var _quizCommon = require("@instructure/quiz-common");
12
12
  function getQuizSessionEvents(quizSessionId, launchToken) {
13
13
  var url = "/api/quiz_sessions/".concat(quizSessionId, "/quiz_session_events");
14
- if (launchToken) {
15
- url += "?launch_token=".concat(launchToken);
16
- }
17
- var fetcher = Reflect.construct((0, _withDynamoPagination["default"])(_Fetcher["default"]), [{
14
+ var fetcher = Reflect.construct((0, _withDynamoPagination["default"])(_Fetcher["default"], launchToken ? {
15
+ launchToken: launchToken
16
+ } : {}), [{
18
17
  callType: _quizCommon.QUIZ_SESSION_EVENTS_FETCH_CALL
19
18
  }]);
20
19
  return function (dispatch, getState) {
@@ -21,10 +21,8 @@ var _formatMessage = _interopRequireDefault(require("@instructure/quiz-i18n/form
21
21
  var _uiText = require("@instructure/ui-text");
22
22
  var _uiHeading = require("@instructure/ui-heading");
23
23
  var _Legend = _interopRequireDefault(require("../../../../charts/Legend"));
24
- var _match = require("sinon/lib/sinon/match");
25
24
  var _quizCommon = require("@instructure/quiz-common");
26
25
  var _dec, _class, _ScoreDistribution;
27
- /* eslint-disable no-unused-vars */
28
26
  /** @jsx jsx */
29
27
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
30
28
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
package/package.json CHANGED
@@ -1,11 +1,17 @@
1
1
  {
2
2
  "name": "@instructure/quiz-core",
3
- "version": "22.14.0",
3
+ "version": "22.15.0",
4
4
  "license": "MIT",
5
5
  "description": "The Quiz React SDK by Instructure Inc.",
6
6
  "author": "Instructure, Inc. Engineering and Product Design",
7
- "main": "lib/index.js",
8
- "module": "es/index.js",
7
+ "main": "./lib/index.js",
8
+ "module": "./es/index.js",
9
+ "exports": {
10
+ ".": {
11
+ "import": "./es/index.js",
12
+ "require": "./lib/index.js"
13
+ }
14
+ },
9
15
  "repository": {
10
16
  "type": "git",
11
17
  "url": "https://gerrit.instructure.com/quizzes-ui.git"
@@ -111,12 +117,12 @@
111
117
  "store": "^1.3.20",
112
118
  "striptags": "^2.0.0",
113
119
  "uuid": "^3.2.1",
114
- "@instructure/quiz-common": "22.14.0",
115
- "@instructure/quiz-i18n": "22.14.0",
116
- "@instructure/quiz-interactions": "22.14.0",
117
- "@instructure/quiz-number-input": "22.14.0",
118
- "@instructure/quiz-rce": "22.14.0",
119
- "instructure-validations": "22.14.0"
120
+ "@instructure/quiz-common": "22.15.0",
121
+ "@instructure/quiz-i18n": "22.15.0",
122
+ "@instructure/quiz-interactions": "22.15.0",
123
+ "@instructure/quiz-number-input": "22.15.0",
124
+ "@instructure/quiz-rce": "22.15.0",
125
+ "instructure-validations": "22.15.0"
120
126
  },
121
127
  "devDependencies": {
122
128
  "@instructure/ui-axe-check": "10.17.0",
@@ -145,7 +151,7 @@
145
151
  "sinon": "^6.1.3",
146
152
  "sinon-chai": "^3.3.0",
147
153
  "@instructure/quiz-scripts": "21.0.0",
148
- "quiz-presets": "22.14.0"
154
+ "quiz-presets": "22.15.0"
149
155
  },
150
156
  "peerDependencies": {
151
157
  "react": "^15 || ^16"