@utiliread/http 1.14.3 → 1.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.
@@ -29,14 +29,20 @@ var HttpError = /** @class */ (function (_super) {
29
29
  Object.setPrototypeOf(_this, HttpError.prototype);
30
30
  return _this;
31
31
  }
32
+ Object.defineProperty(HttpError.prototype, "hasDetails", {
33
+ get: function () {
34
+ var _a, _b;
35
+ var contentType = (_b = (_a = this.response) === null || _a === void 0 ? void 0 : _a.rawResponse) === null || _b === void 0 ? void 0 : _b.headers.get("Content-Type");
36
+ return contentType === null || contentType === void 0 ? void 0 : contentType.includes("application/problem+json");
37
+ },
38
+ enumerable: false,
39
+ configurable: true
40
+ });
32
41
  HttpError.prototype.details = function () {
33
42
  var _a;
34
43
  var rawResponse = (_a = this.response) === null || _a === void 0 ? void 0 : _a.rawResponse;
35
- if (rawResponse) {
36
- var contentType = rawResponse.headers.get("Content-Type");
37
- if (contentType && contentType.includes("application/problem+json")) {
38
- return rawResponse.json().then(function (details) { return details; });
39
- }
44
+ if (rawResponse && this.hasDetails) {
45
+ return rawResponse.json().then(function (details) { return details; });
40
46
  }
41
47
  return Promise.reject(new Error("There are no problem details in the response"));
42
48
  };
@@ -1 +1 @@
1
- {"version":3,"file":"http-error.js","sourceRoot":"","sources":["../../src/http-error.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAGA;IAA+B,6BAAK;IAChC,mBAAmB,UAAkB,EAAU,QAA8C;QAA9C,yBAAA,EAAA,oBAA8C;QAA7F,YACI,kBAAM,sCAAoC,UAAY,CAAC,SAM1D;QAPkB,gBAAU,GAAV,UAAU,CAAQ;QAAU,cAAQ,GAAR,QAAQ,CAAsC;QAEzF,KAAI,CAAC,IAAI,GAAG,WAAW,CAAC;QAExB,wEAAwE;QACxE,mJAAmJ;QACnJ,MAAM,CAAC,cAAc,CAAC,KAAI,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;;IACrD,CAAC;IAED,2BAAO,GAAP;;QACI,IAAM,WAAW,GAAG,MAAA,IAAI,CAAC,QAAQ,0CAAE,WAAW,CAAC;QAE/C,IAAI,WAAW,EAAE;YACb,IAAM,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;YAC5D,IAAI,WAAW,IAAI,WAAW,CAAC,QAAQ,CAAC,0BAA0B,CAAC,EAAE;gBACjE,OAAO,WAAW,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,UAAA,OAAO,IAAI,OAAU,OAAO,EAAjB,CAAiB,CAAC,CAAC;aAChE;SACJ;QAED,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC,CAAC;IACrF,CAAC;IACL,gBAAC;AAAD,CAAC,AAtBD,CAA+B,KAAK,GAsBnC;AAtBY,8BAAS"}
1
+ {"version":3,"file":"http-error.js","sourceRoot":"","sources":["../../src/http-error.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAGA;IAA+B,6BAAK;IAMhC,mBAAmB,UAAkB,EAAU,QAA8C;QAA9C,yBAAA,EAAA,oBAA8C;QAA7F,YACI,kBAAM,sCAAoC,UAAY,CAAC,SAM1D;QAPkB,gBAAU,GAAV,UAAU,CAAQ;QAAU,cAAQ,GAAR,QAAQ,CAAsC;QAEzF,KAAI,CAAC,IAAI,GAAG,WAAW,CAAC;QAExB,wEAAwE;QACxE,mJAAmJ;QACnJ,MAAM,CAAC,cAAc,CAAC,KAAI,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;;IACrD,CAAC;IAZD,sBAAI,iCAAU;aAAd;;YACI,IAAM,WAAW,GAAG,MAAA,MAAA,IAAI,CAAC,QAAQ,0CAAE,WAAW,0CAAE,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;YAC5E,OAAO,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,QAAQ,CAAC,0BAA0B,CAAC,CAAC;QAC7D,CAAC;;;OAAA;IAWD,2BAAO,GAAP;;QACI,IAAM,WAAW,GAAG,MAAA,IAAI,CAAC,QAAQ,0CAAE,WAAW,CAAC;QAE/C,IAAI,WAAW,IAAI,IAAI,CAAC,UAAU,EAAE;YAChC,OAAO,WAAW,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,UAAA,OAAO,IAAI,OAAU,OAAO,EAAjB,CAAiB,CAAC,CAAC;SAChE;QAED,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC,CAAC;IACrF,CAAC;IACL,gBAAC;AAAD,CAAC,AAxBD,CAA+B,KAAK,GAwBnC;AAxBY,8BAAS"}
@@ -1 +1 @@
1
- {"version":3,"file":"http-response.js","sourceRoot":"","sources":["../../src/http-response.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,2CAAyC;AAEzC;IAiCI,sBAAmB,WAAqB;QAArB,gBAAW,GAAX,WAAW,CAAU;IACxC,CAAC;IAjCD,sBAAI,6BAAG;aAAP;YACI,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC;QAChC,CAAC;;;OAAA;IAED,sBAAI,oCAAU;aAAd;YACI,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;QACnC,CAAC;;;OAAA;IAED,sBAAI,iCAAO;aAAX;YACI,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;QACpC,CAAC;;;OAAA;IAED,sBAAI,yCAAe;aAAnB;YACI,OAAO,IAAI,CAAC,UAAU,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;QAC3D,CAAC;;;OAAA;IAED,sBAAI,sCAAY;aAAhB;YACI,OAAO,IAAI,CAAC,UAAU,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;QAC3D,CAAC;;;OAAA;IAED,sBAAI,uCAAa;aAAjB;YACI,OAAO,IAAI,CAAC,UAAU,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;QAC3D,CAAC;;;OAAA;IAED,sBAAI,uCAAa;aAAjB;YACI,OAAO,IAAI,CAAC,UAAU,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;QAC3D,CAAC;;;OAAA;IAED,sBAAI,uCAAa;aAAjB;YACI,OAAO,IAAI,CAAC,UAAU,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;QAC3D,CAAC;;;OAAA;IAKD,iDAA0B,GAA1B;QACI,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACpB,MAAM,IAAI,sBAAS,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;SAC9C;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IACL,mBAAC;AAAD,CAAC,AA3CD,IA2CC;AA3CY,oCAAY;AA6CzB;IAAwC,mCAAY;IAChD,yBAAY,WAAqB,EAAU,OAA+C;QAA1F,YACI,kBAAM,WAAW,CAAC,SACrB;QAF0C,aAAO,GAAP,OAAO,CAAwC;;IAE1F,CAAC;IAED,iCAAO,GAAP;QACI,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IACL,sBAAC;AAAD,CAAC,AARD,CAAwC,YAAY,GAQnD;AARY,0CAAe"}
1
+ {"version":3,"file":"http-response.js","sourceRoot":"","sources":["../../src/http-response.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,2CAAyC;AAEzC;IAiCE,sBAAmB,WAAqB;QAArB,gBAAW,GAAX,WAAW,CAAU;IAAG,CAAC;IAhC5C,sBAAI,6BAAG;aAAP;YACE,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC;QAC9B,CAAC;;;OAAA;IAED,sBAAI,oCAAU;aAAd;YACE,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;QACjC,CAAC;;;OAAA;IAED,sBAAI,iCAAO;aAAX;YACE,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;QAClC,CAAC;;;OAAA;IAED,sBAAI,yCAAe;aAAnB;YACE,OAAO,IAAI,CAAC,UAAU,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;QACzD,CAAC;;;OAAA;IAED,sBAAI,sCAAY;aAAhB;YACE,OAAO,IAAI,CAAC,UAAU,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;QACzD,CAAC;;;OAAA;IAED,sBAAI,uCAAa;aAAjB;YACE,OAAO,IAAI,CAAC,UAAU,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;QACzD,CAAC;;;OAAA;IAED,sBAAI,uCAAa;aAAjB;YACE,OAAO,IAAI,CAAC,UAAU,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;QACzD,CAAC;;;OAAA;IAED,sBAAI,uCAAa;aAAjB;YACE,OAAO,IAAI,CAAC,UAAU,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;QACzD,CAAC;;;OAAA;IAIM,iDAA0B,GAAjC;QACE,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACtB,MAAM,IAAI,sBAAS,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;SAC5C;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IACH,mBAAC;AAAD,CAAC,AA1CD,IA0CC;AA1CY,oCAAY;AA4CzB;IAAwC,mCAAY;IAClD,yBACE,WAAqB,EACb,OAA+C;QAFzD,YAIE,kBAAM,WAAW,CAAC,SACnB;QAHS,aAAO,GAAP,OAAO,CAAwC;;IAGzD,CAAC;IAED,iCAAO,GAAP;QACE,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IACH,sBAAC;AAAD,CAAC,AAXD,CAAwC,YAAY,GAWnD;AAXY,0CAAe"}
@@ -3,6 +3,7 @@ import { ProblemDetails } from './problem-details';
3
3
  export declare class HttpError extends Error {
4
4
  statusCode: number;
5
5
  private response;
6
+ get hasDetails(): boolean | undefined;
6
7
  constructor(statusCode: number, response?: HttpResponse | undefined);
7
8
  details<TDetails = ProblemDetails>(): Promise<TDetails>;
8
9
  }
@@ -26,14 +26,20 @@ var HttpError = /** @class */ (function (_super) {
26
26
  Object.setPrototypeOf(_this, HttpError.prototype);
27
27
  return _this;
28
28
  }
29
+ Object.defineProperty(HttpError.prototype, "hasDetails", {
30
+ get: function () {
31
+ var _a, _b;
32
+ var contentType = (_b = (_a = this.response) === null || _a === void 0 ? void 0 : _a.rawResponse) === null || _b === void 0 ? void 0 : _b.headers.get("Content-Type");
33
+ return contentType === null || contentType === void 0 ? void 0 : contentType.includes("application/problem+json");
34
+ },
35
+ enumerable: false,
36
+ configurable: true
37
+ });
29
38
  HttpError.prototype.details = function () {
30
39
  var _a;
31
40
  var rawResponse = (_a = this.response) === null || _a === void 0 ? void 0 : _a.rawResponse;
32
- if (rawResponse) {
33
- var contentType = rawResponse.headers.get("Content-Type");
34
- if (contentType && contentType.includes("application/problem+json")) {
35
- return rawResponse.json().then(function (details) { return details; });
36
- }
41
+ if (rawResponse && this.hasDetails) {
42
+ return rawResponse.json().then(function (details) { return details; });
37
43
  }
38
44
  return Promise.reject(new Error("There are no problem details in the response"));
39
45
  };
@@ -1 +1 @@
1
- {"version":3,"file":"http-error.js","sourceRoot":"","sources":["../../src/http-error.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAGA;IAA+B,6BAAK;IAChC,mBAAmB,UAAkB,EAAU,QAA8C;QAA9C,yBAAA,EAAA,oBAA8C;QAA7F,YACI,kBAAM,sCAAoC,UAAY,CAAC,SAM1D;QAPkB,gBAAU,GAAV,UAAU,CAAQ;QAAU,cAAQ,GAAR,QAAQ,CAAsC;QAEzF,KAAI,CAAC,IAAI,GAAG,WAAW,CAAC;QAExB,wEAAwE;QACxE,mJAAmJ;QACnJ,MAAM,CAAC,cAAc,CAAC,KAAI,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;;IACrD,CAAC;IAED,2BAAO,GAAP;;QACI,IAAM,WAAW,GAAG,MAAA,IAAI,CAAC,QAAQ,0CAAE,WAAW,CAAC;QAE/C,IAAI,WAAW,EAAE;YACb,IAAM,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;YAC5D,IAAI,WAAW,IAAI,WAAW,CAAC,QAAQ,CAAC,0BAA0B,CAAC,EAAE;gBACjE,OAAO,WAAW,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,UAAA,OAAO,IAAI,OAAU,OAAO,EAAjB,CAAiB,CAAC,CAAC;aAChE;SACJ;QAED,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC,CAAC;IACrF,CAAC;IACL,gBAAC;AAAD,CAAC,AAtBD,CAA+B,KAAK,GAsBnC"}
1
+ {"version":3,"file":"http-error.js","sourceRoot":"","sources":["../../src/http-error.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAGA;IAA+B,6BAAK;IAMhC,mBAAmB,UAAkB,EAAU,QAA8C;QAA9C,yBAAA,EAAA,oBAA8C;QAA7F,YACI,kBAAM,sCAAoC,UAAY,CAAC,SAM1D;QAPkB,gBAAU,GAAV,UAAU,CAAQ;QAAU,cAAQ,GAAR,QAAQ,CAAsC;QAEzF,KAAI,CAAC,IAAI,GAAG,WAAW,CAAC;QAExB,wEAAwE;QACxE,mJAAmJ;QACnJ,MAAM,CAAC,cAAc,CAAC,KAAI,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;;IACrD,CAAC;IAZD,sBAAI,iCAAU;aAAd;;YACI,IAAM,WAAW,GAAG,MAAA,MAAA,IAAI,CAAC,QAAQ,0CAAE,WAAW,0CAAE,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;YAC5E,OAAO,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,QAAQ,CAAC,0BAA0B,CAAC,CAAC;QAC7D,CAAC;;;OAAA;IAWD,2BAAO,GAAP;;QACI,IAAM,WAAW,GAAG,MAAA,IAAI,CAAC,QAAQ,0CAAE,WAAW,CAAC;QAE/C,IAAI,WAAW,IAAI,IAAI,CAAC,UAAU,EAAE;YAChC,OAAO,WAAW,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,UAAA,OAAO,IAAI,OAAU,OAAO,EAAjB,CAAiB,CAAC,CAAC;SAChE;QAED,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC,CAAC;IACrF,CAAC;IACL,gBAAC;AAAD,CAAC,AAxBD,CAA+B,KAAK,GAwBnC"}
@@ -1 +1 @@
1
- {"version":3,"file":"http-response.js","sourceRoot":"","sources":["../../src/http-response.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC;IAiCI,sBAAmB,WAAqB;QAArB,gBAAW,GAAX,WAAW,CAAU;IACxC,CAAC;IAjCD,sBAAI,6BAAG;aAAP;YACI,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC;QAChC,CAAC;;;OAAA;IAED,sBAAI,oCAAU;aAAd;YACI,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;QACnC,CAAC;;;OAAA;IAED,sBAAI,iCAAO;aAAX;YACI,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;QACpC,CAAC;;;OAAA;IAED,sBAAI,yCAAe;aAAnB;YACI,OAAO,IAAI,CAAC,UAAU,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;QAC3D,CAAC;;;OAAA;IAED,sBAAI,sCAAY;aAAhB;YACI,OAAO,IAAI,CAAC,UAAU,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;QAC3D,CAAC;;;OAAA;IAED,sBAAI,uCAAa;aAAjB;YACI,OAAO,IAAI,CAAC,UAAU,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;QAC3D,CAAC;;;OAAA;IAED,sBAAI,uCAAa;aAAjB;YACI,OAAO,IAAI,CAAC,UAAU,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;QAC3D,CAAC;;;OAAA;IAED,sBAAI,uCAAa;aAAjB;YACI,OAAO,IAAI,CAAC,UAAU,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;QAC3D,CAAC;;;OAAA;IAKD,iDAA0B,GAA1B;QACI,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACpB,MAAM,IAAI,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;SAC9C;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IACL,mBAAC;AAAD,CAAC,AA3CD,IA2CC;;AAED;IAAwC,mCAAY;IAChD,yBAAY,WAAqB,EAAU,OAA+C;QAA1F,YACI,kBAAM,WAAW,CAAC,SACrB;QAF0C,aAAO,GAAP,OAAO,CAAwC;;IAE1F,CAAC;IAED,iCAAO,GAAP;QACI,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IACL,sBAAC;AAAD,CAAC,AARD,CAAwC,YAAY,GAQnD"}
1
+ {"version":3,"file":"http-response.js","sourceRoot":"","sources":["../../src/http-response.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC;IAiCE,sBAAmB,WAAqB;QAArB,gBAAW,GAAX,WAAW,CAAU;IAAG,CAAC;IAhC5C,sBAAI,6BAAG;aAAP;YACE,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC;QAC9B,CAAC;;;OAAA;IAED,sBAAI,oCAAU;aAAd;YACE,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;QACjC,CAAC;;;OAAA;IAED,sBAAI,iCAAO;aAAX;YACE,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;QAClC,CAAC;;;OAAA;IAED,sBAAI,yCAAe;aAAnB;YACE,OAAO,IAAI,CAAC,UAAU,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;QACzD,CAAC;;;OAAA;IAED,sBAAI,sCAAY;aAAhB;YACE,OAAO,IAAI,CAAC,UAAU,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;QACzD,CAAC;;;OAAA;IAED,sBAAI,uCAAa;aAAjB;YACE,OAAO,IAAI,CAAC,UAAU,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;QACzD,CAAC;;;OAAA;IAED,sBAAI,uCAAa;aAAjB;YACE,OAAO,IAAI,CAAC,UAAU,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;QACzD,CAAC;;;OAAA;IAED,sBAAI,uCAAa;aAAjB;YACE,OAAO,IAAI,CAAC,UAAU,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC;QACzD,CAAC;;;OAAA;IAIM,iDAA0B,GAAjC;QACE,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACtB,MAAM,IAAI,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;SAC5C;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IACH,mBAAC;AAAD,CAAC,AA1CD,IA0CC;;AAED;IAAwC,mCAAY;IAClD,yBACE,WAAqB,EACb,OAA+C;QAFzD,YAIE,kBAAM,WAAW,CAAC,SACnB;QAHS,aAAO,GAAP,OAAO,CAAwC;;IAGzD,CAAC;IAED,iCAAO,GAAP;QACE,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IACH,sBAAC;AAAD,CAAC,AAXD,CAAwC,YAAY,GAWnD"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@utiliread/http",
3
- "version": "1.14.3",
3
+ "version": "1.15.0",
4
4
  "main": "dist/cjs/index.js",
5
5
  "module": "dist/esm/index.js",
6
6
  "types": "dist/esm/index.d.ts",
package/src/http-error.ts CHANGED
@@ -2,6 +2,11 @@ import { HttpResponse } from './http-response';
2
2
  import { ProblemDetails } from './problem-details';
3
3
 
4
4
  export class HttpError extends Error {
5
+ get hasDetails() {
6
+ const contentType = this.response?.rawResponse?.headers.get("Content-Type");
7
+ return contentType?.includes("application/problem+json");
8
+ }
9
+
5
10
  constructor(public statusCode: number, private response: HttpResponse | undefined = undefined) {
6
11
  super(`The response was not successful: ${statusCode}`);
7
12
  this.name = 'HttpError';
@@ -14,11 +19,8 @@ export class HttpError extends Error {
14
19
  details<TDetails = ProblemDetails>() {
15
20
  const rawResponse = this.response?.rawResponse;
16
21
 
17
- if (rawResponse) {
18
- const contentType = rawResponse.headers.get("Content-Type");
19
- if (contentType && contentType.includes("application/problem+json")) {
20
- return rawResponse.json().then(details => <TDetails>details);
21
- }
22
+ if (rawResponse && this.hasDetails) {
23
+ return rawResponse.json().then(details => <TDetails>details);
22
24
  }
23
25
 
24
26
  return Promise.reject(new Error("There are no problem details in the response"));