@instructure/quiz-core 18.5.1-rc.3 → 18.5.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.
@@ -1,5 +1,6 @@
1
1
  import _regeneratorRuntime from "@babel/runtime/regenerator";
2
2
  import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
3
+ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
3
4
  import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
4
5
  import _createClass from "@babel/runtime/helpers/esm/createClass";
5
6
  import { decamelizeKeys } from 'humps';
@@ -7,7 +8,7 @@ import queryString from 'query-string';
7
8
  import fetch from 'isomorphic-fetch';
8
9
  import t from '@instructure/quiz-i18n/es/format-message';
9
10
  import jsonify from "./jsonify.js";
10
- import { httpHeaders } from "./httpHeaders.js";
11
+ import { httpHeaders, jwtHeader } from "./httpHeaders.js";
11
12
  import store from "../../reduxStore.js";
12
13
  import { callbacksCompleteForCall, errorCallFor, startCallFor, successCallFor } from "./callHelpers.js";
13
14
  import { addError, addSuccess } from "../actions/alerts.js";
@@ -33,7 +34,8 @@ export var Fetcher = /*#__PURE__*/function () {
33
34
  successMessage = _ref.successMessage,
34
35
  onError = _ref.onError,
35
36
  cloneResponseForError = _ref.cloneResponseForError,
36
- asyncResponseHandler = _ref.asyncResponseHandler;
37
+ asyncResponseHandler = _ref.asyncResponseHandler,
38
+ injectMissingUserToken = _ref.injectMissingUserToken;
37
39
 
38
40
  _classCallCheck(this, Fetcher);
39
41
 
@@ -43,6 +45,7 @@ export var Fetcher = /*#__PURE__*/function () {
43
45
  this.cloneResponseForError = cloneResponseForError || false;
44
46
  this.callType = callType;
45
47
  this.headers = headers;
48
+ this.injectMissingUserToken = injectMissingUserToken || false;
46
49
  this.successMessage = successMessage;
47
50
  this.onError = onError;
48
51
  this.asyncResponseHandler = asyncResponseHandler || jsonify;
@@ -91,7 +94,16 @@ export var Fetcher = /*#__PURE__*/function () {
91
94
  }, {
92
95
  key: "callHeaders",
93
96
  value: function callHeaders() {
94
- return this.headers || httpHeaders(this.getState().getIn(['config', 'userToken']));
97
+ if (!this.headers) {
98
+ return httpHeaders(this.getState().getIn(['config', 'userToken']));
99
+ }
100
+
101
+ if (!this.injectMissingUserToken) {
102
+ return this.headers;
103
+ }
104
+
105
+ var userToken = this.getState().getIn(['config', 'userToken']);
106
+ return _objectSpread(_objectSpread({}, jwtHeader(userToken)), this.headers);
95
107
  }
96
108
  }, {
97
109
  key: "handleSuccess",
@@ -13,6 +13,7 @@ var getFetcher = function getFetcher(format) {
13
13
  headers: {
14
14
  'Accept': mimeType
15
15
  },
16
+ injectUserToken: true,
16
17
  asyncResponseHandler: function asyncResponseHandler(response) {
17
18
  return response;
18
19
  }
@@ -11,6 +11,8 @@ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"))
11
11
 
12
12
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
13
13
 
14
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
15
+
14
16
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
15
17
 
16
18
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
@@ -56,7 +58,8 @@ var Fetcher = /*#__PURE__*/function () {
56
58
  successMessage = _ref.successMessage,
57
59
  onError = _ref.onError,
58
60
  cloneResponseForError = _ref.cloneResponseForError,
59
- asyncResponseHandler = _ref.asyncResponseHandler;
61
+ asyncResponseHandler = _ref.asyncResponseHandler,
62
+ injectMissingUserToken = _ref.injectMissingUserToken;
60
63
 
61
64
  (0, _classCallCheck2.default)(this, Fetcher);
62
65
  // A Response body can only be read once, and is read in the onError handler
@@ -65,6 +68,7 @@ var Fetcher = /*#__PURE__*/function () {
65
68
  this.cloneResponseForError = cloneResponseForError || false;
66
69
  this.callType = callType;
67
70
  this.headers = headers;
71
+ this.injectMissingUserToken = injectMissingUserToken || false;
68
72
  this.successMessage = successMessage;
69
73
  this.onError = onError;
70
74
  this.asyncResponseHandler = asyncResponseHandler || _jsonify.default;
@@ -113,7 +117,16 @@ var Fetcher = /*#__PURE__*/function () {
113
117
  }, {
114
118
  key: "callHeaders",
115
119
  value: function callHeaders() {
116
- return this.headers || (0, _httpHeaders.httpHeaders)(this.getState().getIn(['config', 'userToken']));
120
+ if (!this.headers) {
121
+ return (0, _httpHeaders.httpHeaders)(this.getState().getIn(['config', 'userToken']));
122
+ }
123
+
124
+ if (!this.injectMissingUserToken) {
125
+ return this.headers;
126
+ }
127
+
128
+ var userToken = this.getState().getIn(['config', 'userToken']);
129
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, (0, _httpHeaders.jwtHeader)(userToken)), this.headers);
117
130
  }
118
131
  }, {
119
132
  key: "handleSuccess",
@@ -24,6 +24,7 @@ var getFetcher = function getFetcher(format) {
24
24
  headers: {
25
25
  'Accept': mimeType
26
26
  },
27
+ injectUserToken: true,
27
28
  asyncResponseHandler: function asyncResponseHandler(response) {
28
29
  return response;
29
30
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@instructure/quiz-core",
3
- "version": "18.5.1-rc.3+b23d37cd6",
3
+ "version": "18.5.1-rc.5+1553b56ba",
4
4
  "license": "MIT",
5
5
  "description": "The Quiz React SDK by Instructure Inc.",
6
6
  "author": "Instructure, Inc. Engineering and Product Design",
@@ -43,11 +43,11 @@
43
43
  "dependencies": {
44
44
  "@instructure/grading-utils": "^1.0.0",
45
45
  "@instructure/outcomes-ui": "^2.1.9",
46
- "@instructure/quiz-common": "18.5.1-rc.3+b23d37cd6",
47
- "@instructure/quiz-i18n": "18.5.1-rc.3+b23d37cd6",
48
- "@instructure/quiz-interactions": "18.5.1-rc.3+b23d37cd6",
49
- "@instructure/quiz-number-input": "18.5.1-rc.3+b23d37cd6",
50
- "@instructure/quiz-rce": "18.5.1-rc.3+b23d37cd6",
46
+ "@instructure/quiz-common": "18.5.1-rc.5+1553b56ba",
47
+ "@instructure/quiz-i18n": "18.5.1-rc.5+1553b56ba",
48
+ "@instructure/quiz-interactions": "18.5.1-rc.5+1553b56ba",
49
+ "@instructure/quiz-number-input": "18.5.1-rc.5+1553b56ba",
50
+ "@instructure/quiz-rce": "18.5.1-rc.5+1553b56ba",
51
51
  "@instructure/ui-a11y-content": "^7.22.1",
52
52
  "@instructure/ui-alerts": "^7.22.1",
53
53
  "@instructure/ui-avatar": "^7.22.1",
@@ -108,7 +108,7 @@
108
108
  "eventemitter3": "^3.1.0",
109
109
  "humps": "^2.0.0",
110
110
  "immutable": "^3.8.1",
111
- "instructure-validations": "18.5.1-rc.3+b23d37cd6",
111
+ "instructure-validations": "18.5.1-rc.5+1553b56ba",
112
112
  "ipaddr.js": "^1.5.4",
113
113
  "isomorphic-fetch": "^2.2.0",
114
114
  "isuuid": "^0.1.0",
@@ -159,7 +159,7 @@
159
159
  "intl": "^1.2.4",
160
160
  "jquery": "^2.2.3",
161
161
  "most-subject": "^5.3.0",
162
- "quiz-presets": "18.5.1-rc.3+b23d37cd6",
162
+ "quiz-presets": "18.5.1-rc.5+1553b56ba",
163
163
  "react": "^16.8.6",
164
164
  "react-addons-test-utils": "^15.6.2",
165
165
  "react-dom": "^16.8.6",
@@ -175,5 +175,5 @@
175
175
  "publishConfig": {
176
176
  "access": "public"
177
177
  },
178
- "gitHead": "b23d37cd626992f7db90c3453d1556df7b2b4cfb"
178
+ "gitHead": "1553b56ba37bfd69bb798c66ec34b3cd601ad8a3"
179
179
  }