@instructure/quiz-core 20.19.1-rc.0 → 20.20.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.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,17 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [20.20.0](https://gerrit.instructure.com/quizzes-ui/compare/v20.19.0...v20.20.0) (2024-10-02)
7
+
8
+
9
+ ### Features
10
+
11
+ * **rce:** Allow old links to be displayed instead of new instfs links ([6d1ffd8](https://gerrit.instructure.com/quizzes-ui/commits/6d1ffd88d2ef44c0f7ca548b11cbd717b8e0774b))
12
+
13
+
14
+
15
+
16
+
6
17
  # [20.19.0](https://gerrit.instructure.com/quizzes-ui/compare/v20.18.0...v20.19.0) (2024-10-01)
7
18
 
8
19
 
@@ -2,10 +2,12 @@ import { connect } from "../../react-redux.js";
2
2
  import RceConfigProviderComponent from "./presenter.js";
3
3
  import { getRCEConfig } from "../../selectors/rce.js";
4
4
  import { setStoredRCEConfig } from "../../actions/rce.js";
5
+ import { featureOn } from "../../util/featureCheck.js";
5
6
 
6
7
  var mapStateToProps = function mapStateToProps(state, ownProps) {
7
8
  return {
8
- storedRCEConfig: getRCEConfig(state)
9
+ storedRCEConfig: getRCEConfig(state),
10
+ displayOldLinks: featureOn('instfs_display_old_links_rollback')
9
11
  };
10
12
  };
11
13
 
@@ -71,7 +71,8 @@ var RceConfigProviderComponent = function RceConfigProviderComponent(_ref2) {
71
71
  rcsJwtRefreshFn = _ref2.rcsJwtRefreshFn,
72
72
  canvasOrigin = _ref2.canvasOrigin,
73
73
  storedRCEConfig = _ref2.storedRCEConfig,
74
- setStoredRCEConfig = _ref2.setStoredRCEConfig;
74
+ setStoredRCEConfig = _ref2.setStoredRCEConfig,
75
+ displayOldLinks = _ref2.displayOldLinks;
75
76
 
76
77
  var _useState = useState(rcsJwt),
77
78
  _useState2 = _slicedToArray(_useState, 2),
@@ -105,6 +106,9 @@ var RceConfigProviderComponent = function RceConfigProviderComponent(_ref2) {
105
106
  var rendererParams = {
106
107
  canvasOrigin: canvasOrigin
107
108
  };
109
+ var flags = {
110
+ displayOldLinks: displayOldLinks
111
+ };
108
112
  useEffect(function () {
109
113
  _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
110
114
  var json;
@@ -178,12 +182,13 @@ var RceConfigProviderComponent = function RceConfigProviderComponent(_ref2) {
178
182
  }
179
183
 
180
184
  return /*#__PURE__*/React.createElement(RceConfigContext.Provider, {
181
- value: mapParamsToRceConfigContext(rcsParams, rendererParams, canvasConfig, ltiAppParams)
185
+ value: mapParamsToRceConfigContext(rcsParams, rendererParams, canvasConfig, ltiAppParams, flags)
182
186
  }, children);
183
187
  };
184
188
 
185
189
  RceConfigProviderComponent.propTypes = {
186
190
  children: PropTypes.node.isRequired,
191
+ displayOldLinks: PropTypes.bool,
187
192
  contextId: PropTypes.string,
188
193
  contextType: PropTypes.string,
189
194
  canvasUserId: PropTypes.string,
@@ -214,6 +219,7 @@ RceConfigProviderComponent.defaultProps = {
214
219
  rcsJwtRefreshFn: null,
215
220
  canvasOrigin: null,
216
221
  storedRCEConfig: null,
217
- setStoredRCEConfig: null
222
+ setStoredRCEConfig: null,
223
+ displayOldLinks: false
218
224
  };
219
225
  export default RceConfigProviderComponent;
@@ -21,12 +21,19 @@ var mapLtiApps = function mapLtiApps(canvasConfig, ltiAppParams) {
21
21
 
22
22
  var rendererEnhancement = function rendererEnhancement(rendererParams) {
23
23
  return _defineProperty({}, RceConfigKeys.canvasOrigin, (rendererParams === null || rendererParams === void 0 ? void 0 : rendererParams.canvasOrigin) || null);
24
+ }; // If you are removing the displayOldLinks feature flag, please strongly consider leaving
25
+ // the mapFeatureFlags functionality in place in case new feature flags are added in the future.
26
+
27
+
28
+ var mapFeatureFlags = function mapFeatureFlags(flags) {
29
+ return _defineProperty({}, RceConfigKeys.displayOldLinks, (flags === null || flags === void 0 ? void 0 : flags.displayOldLinks) || false);
24
30
  };
25
31
 
26
- export var mapParamsToRceConfigContext = function mapParamsToRceConfigContext(rcsParams, rendererParams, canvasConfig, ltiAppParams) {
32
+ export var mapParamsToRceConfigContext = function mapParamsToRceConfigContext(rcsParams, rendererParams, canvasConfig, ltiAppParams, flags) {
27
33
  return {
28
34
  rcs: mapRcs(rcsParams, canvasConfig),
29
35
  rendererEnhancement: rendererEnhancement(rendererParams),
30
- ltiApps: mapLtiApps(canvasConfig, ltiAppParams)
36
+ ltiApps: mapLtiApps(canvasConfig, ltiAppParams),
37
+ featureFlags: mapFeatureFlags(flags)
31
38
  };
32
39
  };
@@ -188,7 +188,8 @@ export var SDKApp = (_dec = withStyle(generateStyle, null), _dec(_class = (_temp
188
188
  canvasToolId: PropTypes.string,
189
189
  rcsHost: PropTypes.string,
190
190
  rcsJwt: PropTypes.string,
191
- rcsJwtRefreshFn: PropTypes.func
191
+ rcsJwtRefreshFn: PropTypes.func,
192
+ displayOldLinks: PropTypes.bool
192
193
  }),
193
194
  timeZone: PropTypes.string,
194
195
  translations: PropTypes.objectOf(PropTypes.shape({
@@ -15,9 +15,12 @@ var _rce = require("../../selectors/rce.js");
15
15
 
16
16
  var _rce2 = require("../../actions/rce.js");
17
17
 
18
+ var _featureCheck = require("../../util/featureCheck.js");
19
+
18
20
  var mapStateToProps = function mapStateToProps(state, ownProps) {
19
21
  return {
20
- storedRCEConfig: (0, _rce.getRCEConfig)(state)
22
+ storedRCEConfig: (0, _rce.getRCEConfig)(state),
23
+ displayOldLinks: (0, _featureCheck.featureOn)('instfs_display_old_links_rollback')
21
24
  };
22
25
  };
23
26
 
@@ -95,7 +95,8 @@ var RceConfigProviderComponent = function RceConfigProviderComponent(_ref2) {
95
95
  rcsJwtRefreshFn = _ref2.rcsJwtRefreshFn,
96
96
  canvasOrigin = _ref2.canvasOrigin,
97
97
  storedRCEConfig = _ref2.storedRCEConfig,
98
- setStoredRCEConfig = _ref2.setStoredRCEConfig;
98
+ setStoredRCEConfig = _ref2.setStoredRCEConfig,
99
+ displayOldLinks = _ref2.displayOldLinks;
99
100
 
100
101
  var _useState = (0, _react.useState)(rcsJwt),
101
102
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
@@ -129,6 +130,9 @@ var RceConfigProviderComponent = function RceConfigProviderComponent(_ref2) {
129
130
  var rendererParams = {
130
131
  canvasOrigin: canvasOrigin
131
132
  };
133
+ var flags = {
134
+ displayOldLinks: displayOldLinks
135
+ };
132
136
  (0, _react.useEffect)(function () {
133
137
  (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
134
138
  var json;
@@ -202,12 +206,13 @@ var RceConfigProviderComponent = function RceConfigProviderComponent(_ref2) {
202
206
  }
203
207
 
204
208
  return /*#__PURE__*/_react.default.createElement(_quizCommon.RceConfigContext.Provider, {
205
- value: (0, _rceConfigMapper.mapParamsToRceConfigContext)(rcsParams, rendererParams, canvasConfig, ltiAppParams)
209
+ value: (0, _rceConfigMapper.mapParamsToRceConfigContext)(rcsParams, rendererParams, canvasConfig, ltiAppParams, flags)
206
210
  }, children);
207
211
  };
208
212
 
209
213
  RceConfigProviderComponent.propTypes = {
210
214
  children: _propTypes.default.node.isRequired,
215
+ displayOldLinks: _propTypes.default.bool,
211
216
  contextId: _propTypes.default.string,
212
217
  contextType: _propTypes.default.string,
213
218
  canvasUserId: _propTypes.default.string,
@@ -238,7 +243,8 @@ RceConfigProviderComponent.defaultProps = {
238
243
  rcsJwtRefreshFn: null,
239
244
  canvasOrigin: null,
240
245
  storedRCEConfig: null,
241
- setStoredRCEConfig: null
246
+ setStoredRCEConfig: null,
247
+ displayOldLinks: false
242
248
  };
243
249
  var _default = RceConfigProviderComponent;
244
250
  exports.default = _default;
@@ -32,13 +32,20 @@ var mapLtiApps = function mapLtiApps(canvasConfig, ltiAppParams) {
32
32
 
33
33
  var rendererEnhancement = function rendererEnhancement(rendererParams) {
34
34
  return (0, _defineProperty2.default)({}, _quizCommon.RceConfigKeys.canvasOrigin, (rendererParams === null || rendererParams === void 0 ? void 0 : rendererParams.canvasOrigin) || null);
35
+ }; // If you are removing the displayOldLinks feature flag, please strongly consider leaving
36
+ // the mapFeatureFlags functionality in place in case new feature flags are added in the future.
37
+
38
+
39
+ var mapFeatureFlags = function mapFeatureFlags(flags) {
40
+ return (0, _defineProperty2.default)({}, _quizCommon.RceConfigKeys.displayOldLinks, (flags === null || flags === void 0 ? void 0 : flags.displayOldLinks) || false);
35
41
  };
36
42
 
37
- var mapParamsToRceConfigContext = function mapParamsToRceConfigContext(rcsParams, rendererParams, canvasConfig, ltiAppParams) {
43
+ var mapParamsToRceConfigContext = function mapParamsToRceConfigContext(rcsParams, rendererParams, canvasConfig, ltiAppParams, flags) {
38
44
  return {
39
45
  rcs: mapRcs(rcsParams, canvasConfig),
40
46
  rendererEnhancement: rendererEnhancement(rendererParams),
41
- ltiApps: mapLtiApps(canvasConfig, ltiAppParams)
47
+ ltiApps: mapLtiApps(canvasConfig, ltiAppParams),
48
+ featureFlags: mapFeatureFlags(flags)
42
49
  };
43
50
  };
44
51
 
@@ -214,7 +214,8 @@ var SDKApp = (_dec = (0, _emotion.withStyle)(_styles.default, null), _dec(_class
214
214
  canvasToolId: _propTypes.default.string,
215
215
  rcsHost: _propTypes.default.string,
216
216
  rcsJwt: _propTypes.default.string,
217
- rcsJwtRefreshFn: _propTypes.default.func
217
+ rcsJwtRefreshFn: _propTypes.default.func,
218
+ displayOldLinks: _propTypes.default.bool
218
219
  }),
219
220
  timeZone: _propTypes.default.string,
220
221
  translations: _propTypes.default.objectOf(_propTypes.default.shape({
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@instructure/quiz-core",
3
- "version": "20.19.1-rc.0+eaab44c3f",
3
+ "version": "20.20.0",
4
4
  "license": "MIT",
5
5
  "description": "The Quiz React SDK by Instructure Inc.",
6
6
  "author": "Instructure, Inc. Engineering and Product Design",
@@ -44,11 +44,11 @@
44
44
  "@instructure/emotion": "^8.51.0",
45
45
  "@instructure/grading-utils": "^1.0.0",
46
46
  "@instructure/outcomes-ui": "^3.2.2",
47
- "@instructure/quiz-common": "20.19.1-rc.0+eaab44c3f",
48
- "@instructure/quiz-i18n": "20.19.1-rc.0+eaab44c3f",
49
- "@instructure/quiz-interactions": "20.19.1-rc.0+eaab44c3f",
50
- "@instructure/quiz-number-input": "20.19.1-rc.0+eaab44c3f",
51
- "@instructure/quiz-rce": "20.19.1-rc.0+eaab44c3f",
47
+ "@instructure/quiz-common": "^20.20.0",
48
+ "@instructure/quiz-i18n": "^20.20.0",
49
+ "@instructure/quiz-interactions": "^20.20.0",
50
+ "@instructure/quiz-number-input": "^20.20.0",
51
+ "@instructure/quiz-rce": "^20.20.0",
52
52
  "@instructure/ui-a11y-content": "^8.51.0",
53
53
  "@instructure/ui-alerts": "^8.51.0",
54
54
  "@instructure/ui-avatar": "^8.51.0",
@@ -111,7 +111,7 @@
111
111
  "file-saver": "~2.0.5",
112
112
  "humps": "^2.0.0",
113
113
  "immutable": "^3.8.1",
114
- "instructure-validations": "20.19.1-rc.0+eaab44c3f",
114
+ "instructure-validations": "^20.20.0",
115
115
  "ipaddr.js": "^1.5.4",
116
116
  "isomorphic-fetch": "^2.2.0",
117
117
  "isuuid": "^0.1.0",
@@ -142,7 +142,7 @@
142
142
  "uuid": "^3.2.1"
143
143
  },
144
144
  "devDependencies": {
145
- "@instructure/quiz-scripts": "20.19.0",
145
+ "@instructure/quiz-scripts": "^20.20.0",
146
146
  "@instructure/ui-axe-check": "^8.51.0",
147
147
  "@instructure/ui-babel-preset": "^7.22.1",
148
148
  "@instructure/ui-scripts": "^7.22.1",
@@ -161,7 +161,7 @@
161
161
  "jquery": "^2.2.3",
162
162
  "karma-junit-reporter": "^2.0.1",
163
163
  "most-subject": "^5.3.0",
164
- "quiz-presets": "20.19.1-rc.0+eaab44c3f",
164
+ "quiz-presets": "^20.20.0",
165
165
  "react": "^16.8.6",
166
166
  "react-addons-test-utils": "^15.6.2",
167
167
  "react-dom": "^16.8.6",
@@ -177,5 +177,5 @@
177
177
  "publishConfig": {
178
178
  "access": "public"
179
179
  },
180
- "gitHead": "eaab44c3f0c644240cfaac2e20e95337dee7125e"
180
+ "gitHead": "8c9acbf30a56f00c5109d1670f6d1b88a41fc519"
181
181
  }