api-def 0.6.0-alpha12 → 0.6.0-alpha15

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/cjs/Requester.js CHANGED
@@ -211,7 +211,7 @@ var makeRequest = function (context) { return __awaiter(void 0, void 0, void 0,
211
211
  });
212
212
  }); };
213
213
  var parseResponse = function (context, response, error) { return __awaiter(void 0, void 0, void 0, function () {
214
- var parsedResponse, contentType, inferredResponseType, data, decodedData;
214
+ var parsedResponse_1, contentType, inferredResponseType, data, decodedData;
215
215
  var _a;
216
216
  return __generator(this, function (_b) {
217
217
  switch (_b.label) {
@@ -219,8 +219,13 @@ var parseResponse = function (context, response, error) { return __awaiter(void
219
219
  if (!response) return [3 /*break*/, 2];
220
220
  return [4 /*yield*/, context.backend.convertResponse(context, response)];
221
221
  case 1:
222
- parsedResponse = _b.sent();
223
- contentType = response.headers["Content-Type"];
222
+ parsedResponse_1 = _b.sent();
223
+ // lowercase all header names
224
+ parsedResponse_1.headers = Object.keys(parsedResponse_1.headers).reduce(function (headers, header) {
225
+ headers[header.toLowerCase()] = parsedResponse_1.headers[header];
226
+ return headers;
227
+ }, {});
228
+ contentType = parsedResponse_1.headers["Content-Type"];
224
229
  inferredResponseType = ApiUtils_1.inferResponseType(contentType);
225
230
  if (!error) {
226
231
  // expand to array buffer once we support that in inferResponseType
@@ -228,13 +233,13 @@ var parseResponse = function (context, response, error) { return __awaiter(void
228
233
  throw RequestError_1.convertToRequestError({
229
234
  error: new Error("[api-def] Expected '" + context.responseType + "' response, got '" + inferredResponseType + "' (from 'Content-Type' of '" + contentType + "')"),
230
235
  code: RequestError_1.RequestErrorCode.REQUEST_MISMATCH_RESPONSE_TYPE,
231
- response: parsedResponse,
236
+ response: parsedResponse_1,
232
237
  });
233
238
  }
234
239
  // transform arrayBuffer to json
235
240
  if (inferredResponseType === "arraybuffer" && context.responseType === "json") {
236
- if (parsedResponse.data &&
237
- typeof parsedResponse.data === "object") {
241
+ if (parsedResponse_1.data &&
242
+ typeof parsedResponse_1.data === "object") {
238
243
  data = response.data;
239
244
  if (((_a = data.constructor) === null || _a === void 0 ? void 0 : _a.name) === "ArrayBuffer") {
240
245
  try {
@@ -245,14 +250,14 @@ var parseResponse = function (context, response, error) { return __awaiter(void
245
250
  throw RequestError_1.convertToRequestError({
246
251
  error: new Error("[api-def] Expected '" + context.responseType + "' response, got '" + inferredResponseType + "' (from 'Content-Type' of '" + contentType + "')"),
247
252
  code: RequestError_1.RequestErrorCode.REQUEST_MISMATCH_RESPONSE_TYPE,
248
- response: parsedResponse,
253
+ response: parsedResponse_1,
249
254
  });
250
255
  }
251
256
  }
252
257
  }
253
258
  }
254
259
  }
255
- return [2 /*return*/, parsedResponse];
260
+ return [2 /*return*/, parsedResponse_1];
256
261
  case 2: return [2 /*return*/, response];
257
262
  }
258
263
  });
package/esm/Requester.js CHANGED
@@ -207,7 +207,7 @@ var makeRequest = function (context) { return __awaiter(void 0, void 0, void 0,
207
207
  });
208
208
  }); };
209
209
  var parseResponse = function (context, response, error) { return __awaiter(void 0, void 0, void 0, function () {
210
- var parsedResponse, contentType, inferredResponseType, data, decodedData;
210
+ var parsedResponse_1, contentType, inferredResponseType, data, decodedData;
211
211
  var _a;
212
212
  return __generator(this, function (_b) {
213
213
  switch (_b.label) {
@@ -215,8 +215,13 @@ var parseResponse = function (context, response, error) { return __awaiter(void
215
215
  if (!response) return [3 /*break*/, 2];
216
216
  return [4 /*yield*/, context.backend.convertResponse(context, response)];
217
217
  case 1:
218
- parsedResponse = _b.sent();
219
- contentType = response.headers["Content-Type"];
218
+ parsedResponse_1 = _b.sent();
219
+ // lowercase all header names
220
+ parsedResponse_1.headers = Object.keys(parsedResponse_1.headers).reduce(function (headers, header) {
221
+ headers[header.toLowerCase()] = parsedResponse_1.headers[header];
222
+ return headers;
223
+ }, {});
224
+ contentType = parsedResponse_1.headers["Content-Type"];
220
225
  inferredResponseType = inferResponseType(contentType);
221
226
  if (!error) {
222
227
  // expand to array buffer once we support that in inferResponseType
@@ -224,13 +229,13 @@ var parseResponse = function (context, response, error) { return __awaiter(void
224
229
  throw convertToRequestError({
225
230
  error: new Error("[api-def] Expected '" + context.responseType + "' response, got '" + inferredResponseType + "' (from 'Content-Type' of '" + contentType + "')"),
226
231
  code: RequestErrorCode.REQUEST_MISMATCH_RESPONSE_TYPE,
227
- response: parsedResponse,
232
+ response: parsedResponse_1,
228
233
  });
229
234
  }
230
235
  // transform arrayBuffer to json
231
236
  if (inferredResponseType === "arraybuffer" && context.responseType === "json") {
232
- if (parsedResponse.data &&
233
- typeof parsedResponse.data === "object") {
237
+ if (parsedResponse_1.data &&
238
+ typeof parsedResponse_1.data === "object") {
234
239
  data = response.data;
235
240
  if (((_a = data.constructor) === null || _a === void 0 ? void 0 : _a.name) === "ArrayBuffer") {
236
241
  try {
@@ -241,14 +246,14 @@ var parseResponse = function (context, response, error) { return __awaiter(void
241
246
  throw convertToRequestError({
242
247
  error: new Error("[api-def] Expected '" + context.responseType + "' response, got '" + inferredResponseType + "' (from 'Content-Type' of '" + contentType + "')"),
243
248
  code: RequestErrorCode.REQUEST_MISMATCH_RESPONSE_TYPE,
244
- response: parsedResponse,
249
+ response: parsedResponse_1,
245
250
  });
246
251
  }
247
252
  }
248
253
  }
249
254
  }
250
255
  }
251
- return [2 /*return*/, parsedResponse];
256
+ return [2 /*return*/, parsedResponse_1];
252
257
  case 2: return [2 /*return*/, response];
253
258
  }
254
259
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "api-def",
3
- "version": "0.6.0-alpha12",
3
+ "version": "0.6.0-alpha15",
4
4
  "description": "Typed API definitions with middleware support",
5
5
  "main": "cjs/index.js",
6
6
  "types": "esm/index.d.ts",