tscommons-esm-http 0.0.2

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.
Files changed (85) hide show
  1. package/dist/classes/commons-http-bad-request-error.class.d.mts +4 -0
  2. package/dist/classes/commons-http-bad-request-error.class.mjs +9 -0
  3. package/dist/classes/commons-http-bad-request-error.class.mjs.map +1 -0
  4. package/dist/classes/commons-http-conflict-error.class.d.mts +4 -0
  5. package/dist/classes/commons-http-conflict-error.class.mjs +9 -0
  6. package/dist/classes/commons-http-conflict-error.class.mjs.map +1 -0
  7. package/dist/classes/commons-http-created-success.class.d.mts +4 -0
  8. package/dist/classes/commons-http-created-success.class.mjs +8 -0
  9. package/dist/classes/commons-http-created-success.class.mjs.map +1 -0
  10. package/dist/classes/commons-http-error.class.d.mts +5 -0
  11. package/dist/classes/commons-http-error.class.mjs +10 -0
  12. package/dist/classes/commons-http-error.class.mjs.map +1 -0
  13. package/dist/classes/commons-http-forbidden-error.class.d.mts +4 -0
  14. package/dist/classes/commons-http-forbidden-error.class.mjs +9 -0
  15. package/dist/classes/commons-http-forbidden-error.class.mjs.map +1 -0
  16. package/dist/classes/commons-http-internal-server-error.class.d.mts +4 -0
  17. package/dist/classes/commons-http-internal-server-error.class.mjs +9 -0
  18. package/dist/classes/commons-http-internal-server-error.class.mjs.map +1 -0
  19. package/dist/classes/commons-http-no-content-success.class.d.mts +4 -0
  20. package/dist/classes/commons-http-no-content-success.class.mjs +8 -0
  21. package/dist/classes/commons-http-no-content-success.class.mjs.map +1 -0
  22. package/dist/classes/commons-http-not-found-error.class.d.mts +4 -0
  23. package/dist/classes/commons-http-not-found-error.class.mjs +9 -0
  24. package/dist/classes/commons-http-not-found-error.class.mjs.map +1 -0
  25. package/dist/classes/commons-http-not-implemented-error.class.d.mts +4 -0
  26. package/dist/classes/commons-http-not-implemented-error.class.mjs +9 -0
  27. package/dist/classes/commons-http-not-implemented-error.class.mjs.map +1 -0
  28. package/dist/classes/commons-http-ok-success.class.d.mts +4 -0
  29. package/dist/classes/commons-http-ok-success.class.mjs +8 -0
  30. package/dist/classes/commons-http-ok-success.class.mjs.map +1 -0
  31. package/dist/classes/commons-http-service-unavailable-error.class.d.mts +4 -0
  32. package/dist/classes/commons-http-service-unavailable-error.class.mjs +9 -0
  33. package/dist/classes/commons-http-service-unavailable-error.class.mjs.map +1 -0
  34. package/dist/classes/commons-http-success.class.d.mts +5 -0
  35. package/dist/classes/commons-http-success.class.mjs +9 -0
  36. package/dist/classes/commons-http-success.class.mjs.map +1 -0
  37. package/dist/classes/commons-http-unauthorized-error.class.d.mts +4 -0
  38. package/dist/classes/commons-http-unauthorized-error.class.mjs +9 -0
  39. package/dist/classes/commons-http-unauthorized-error.class.mjs.map +1 -0
  40. package/dist/classes/commons-http-url.class.d.mts +24 -0
  41. package/dist/classes/commons-http-url.class.mjs +86 -0
  42. package/dist/classes/commons-http-url.class.mjs.map +1 -0
  43. package/dist/enums/ecommons-http-content-type.d.mts +9 -0
  44. package/dist/enums/ecommons-http-content-type.mjs +41 -0
  45. package/dist/enums/ecommons-http-content-type.mjs.map +1 -0
  46. package/dist/enums/ecommons-http-method.d.mts +14 -0
  47. package/dist/enums/ecommons-http-method.mjs +76 -0
  48. package/dist/enums/ecommons-http-method.mjs.map +1 -0
  49. package/dist/enums/ecommons-http-response-code.d.mts +15 -0
  50. package/dist/enums/ecommons-http-response-code.mjs +69 -0
  51. package/dist/enums/ecommons-http-response-code.mjs.map +1 -0
  52. package/dist/enums/ecommons-http-response-data-type.d.mts +9 -0
  53. package/dist/enums/ecommons-http-response-data-type.mjs +41 -0
  54. package/dist/enums/ecommons-http-response-data-type.mjs.map +1 -0
  55. package/dist/helpers/commons-http-responses.d.mts +4 -0
  56. package/dist/helpers/commons-http-responses.mjs +55 -0
  57. package/dist/helpers/commons-http-responses.mjs.map +1 -0
  58. package/dist/helpers/commons-http-url.d.mts +2 -0
  59. package/dist/helpers/commons-http-url.mjs +59 -0
  60. package/dist/helpers/commons-http-url.mjs.map +1 -0
  61. package/dist/helpers/http-client-internal-helpers.d.mts +5 -0
  62. package/dist/helpers/http-client-internal-helpers.mjs +27 -0
  63. package/dist/helpers/http-client-internal-helpers.mjs.map +1 -0
  64. package/dist/index.d.mts +28 -0
  65. package/dist/index.mjs +27 -0
  66. package/dist/index.mjs.map +1 -0
  67. package/dist/services/commons-http-client.service.d.mts +41 -0
  68. package/dist/services/commons-http-client.service.mjs +141 -0
  69. package/dist/services/commons-http-client.service.mjs.map +1 -0
  70. package/dist/services/commons-streamable-http-client.service.d.mts +40 -0
  71. package/dist/services/commons-streamable-http-client.service.mjs +140 -0
  72. package/dist/services/commons-streamable-http-client.service.mjs.map +1 -0
  73. package/dist/types/tcommons-http-request-options.d.mts +10 -0
  74. package/dist/types/tcommons-http-request-options.mjs +15 -0
  75. package/dist/types/tcommons-http-request-options.mjs.map +1 -0
  76. package/dist/types/tcommons-http-url-segments.d.mts +12 -0
  77. package/dist/types/tcommons-http-url-segments.mjs +43 -0
  78. package/dist/types/tcommons-http-url-segments.mjs.map +1 -0
  79. package/dist/types/tcommons-streamable-http-observable.d.mts +6 -0
  80. package/dist/types/tcommons-streamable-http-observable.mjs +2 -0
  81. package/dist/types/tcommons-streamable-http-observable.mjs.map +1 -0
  82. package/dist/types/thttp-header-or-param-object.d.mts +3 -0
  83. package/dist/types/thttp-header-or-param-object.mjs +2 -0
  84. package/dist/types/thttp-header-or-param-object.mjs.map +1 -0
  85. package/package.json +31 -0
@@ -0,0 +1,69 @@
1
+ export var ECommonsHttpResponseCode;
2
+ (function (ECommonsHttpResponseCode) {
3
+ ECommonsHttpResponseCode[ECommonsHttpResponseCode["OK"] = 200] = "OK";
4
+ ECommonsHttpResponseCode[ECommonsHttpResponseCode["CREATED"] = 201] = "CREATED";
5
+ ECommonsHttpResponseCode[ECommonsHttpResponseCode["NO_CONTENT"] = 204] = "NO_CONTENT";
6
+ ECommonsHttpResponseCode[ECommonsHttpResponseCode["BAD_REQUEST"] = 400] = "BAD_REQUEST";
7
+ ECommonsHttpResponseCode[ECommonsHttpResponseCode["UNAUTHORIZED"] = 401] = "UNAUTHORIZED";
8
+ ECommonsHttpResponseCode[ECommonsHttpResponseCode["FORBIDDEN"] = 403] = "FORBIDDEN";
9
+ ECommonsHttpResponseCode[ECommonsHttpResponseCode["NOT_FOUND"] = 404] = "NOT_FOUND";
10
+ ECommonsHttpResponseCode[ECommonsHttpResponseCode["CONFLICT"] = 409] = "CONFLICT";
11
+ ECommonsHttpResponseCode[ECommonsHttpResponseCode["INTERNAL_SERVER_ERROR"] = 500] = "INTERNAL_SERVER_ERROR";
12
+ ECommonsHttpResponseCode[ECommonsHttpResponseCode["NOT_IMPLEMENTED"] = 501] = "NOT_IMPLEMENTED";
13
+ ECommonsHttpResponseCode[ECommonsHttpResponseCode["SERVICE_UNAVAILABLE"] = 503] = "SERVICE_UNAVAILABLE";
14
+ })(ECommonsHttpResponseCode || (ECommonsHttpResponseCode = {}));
15
+ export function fromECommonsHttpResponseCode(method) {
16
+ switch (method) {
17
+ case ECommonsHttpResponseCode.OK:
18
+ return ECommonsHttpResponseCode.OK;
19
+ case ECommonsHttpResponseCode.CREATED:
20
+ return ECommonsHttpResponseCode.CREATED;
21
+ case ECommonsHttpResponseCode.NO_CONTENT:
22
+ return ECommonsHttpResponseCode.NO_CONTENT;
23
+ case ECommonsHttpResponseCode.BAD_REQUEST:
24
+ return ECommonsHttpResponseCode.BAD_REQUEST;
25
+ case ECommonsHttpResponseCode.UNAUTHORIZED:
26
+ return ECommonsHttpResponseCode.UNAUTHORIZED;
27
+ case ECommonsHttpResponseCode.FORBIDDEN:
28
+ return ECommonsHttpResponseCode.FORBIDDEN;
29
+ case ECommonsHttpResponseCode.NOT_FOUND:
30
+ return ECommonsHttpResponseCode.NOT_FOUND;
31
+ case ECommonsHttpResponseCode.CONFLICT:
32
+ return ECommonsHttpResponseCode.CONFLICT;
33
+ case ECommonsHttpResponseCode.INTERNAL_SERVER_ERROR:
34
+ return ECommonsHttpResponseCode.INTERNAL_SERVER_ERROR;
35
+ case ECommonsHttpResponseCode.NOT_IMPLEMENTED:
36
+ return ECommonsHttpResponseCode.NOT_IMPLEMENTED;
37
+ case ECommonsHttpResponseCode.SERVICE_UNAVAILABLE:
38
+ return ECommonsHttpResponseCode.SERVICE_UNAVAILABLE;
39
+ }
40
+ throw new Error('Unknown ECommonsHttpResponseCode');
41
+ }
42
+ export function toECommonsHttpResponseCode(code) {
43
+ switch (code) {
44
+ case ECommonsHttpResponseCode.OK:
45
+ return ECommonsHttpResponseCode.OK;
46
+ case ECommonsHttpResponseCode.CREATED:
47
+ return ECommonsHttpResponseCode.CREATED;
48
+ case ECommonsHttpResponseCode.NO_CONTENT:
49
+ return ECommonsHttpResponseCode.NO_CONTENT;
50
+ case ECommonsHttpResponseCode.BAD_REQUEST:
51
+ return ECommonsHttpResponseCode.BAD_REQUEST;
52
+ case ECommonsHttpResponseCode.UNAUTHORIZED:
53
+ return ECommonsHttpResponseCode.UNAUTHORIZED;
54
+ case ECommonsHttpResponseCode.FORBIDDEN:
55
+ return ECommonsHttpResponseCode.FORBIDDEN;
56
+ case ECommonsHttpResponseCode.NOT_FOUND:
57
+ return ECommonsHttpResponseCode.NOT_FOUND;
58
+ case ECommonsHttpResponseCode.CONFLICT:
59
+ return ECommonsHttpResponseCode.CONFLICT;
60
+ case ECommonsHttpResponseCode.INTERNAL_SERVER_ERROR:
61
+ return ECommonsHttpResponseCode.INTERNAL_SERVER_ERROR;
62
+ case ECommonsHttpResponseCode.NOT_IMPLEMENTED:
63
+ return ECommonsHttpResponseCode.NOT_IMPLEMENTED;
64
+ case ECommonsHttpResponseCode.SERVICE_UNAVAILABLE:
65
+ return ECommonsHttpResponseCode.SERVICE_UNAVAILABLE;
66
+ }
67
+ return undefined;
68
+ }
69
+ //# sourceMappingURL=ecommons-http-response-code.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ecommons-http-response-code.mjs","sourceRoot":"","sources":["../../src/enums/ecommons-http-response-code.mts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,wBAYX;AAZD,WAAY,wBAAwB;IAClC,qEAAQ,CAAA;IACR,+EAAa,CAAA;IACb,qFAAgB,CAAA;IAChB,uFAAiB,CAAA;IACjB,yFAAkB,CAAA;IAClB,mFAAe,CAAA;IACf,mFAAe,CAAA;IACf,iFAAc,CAAA;IACd,2GAA2B,CAAA;IAC3B,+FAAqB,CAAA;IACrB,uGAAyB,CAAA;AAC3B,CAAC,EAZW,wBAAwB,KAAxB,wBAAwB,QAYnC;AAED,MAAM,UAAU,4BAA4B,CAAC,MAAgC;IAC5E,QAAQ,MAAM,EAAE,CAAC;QAChB,KAAK,wBAAwB,CAAC,EAAE;YAC/B,OAAO,wBAAwB,CAAC,EAAE,CAAC;QACpC,KAAK,wBAAwB,CAAC,OAAO;YACpC,OAAO,wBAAwB,CAAC,OAAO,CAAC;QACzC,KAAK,wBAAwB,CAAC,UAAU;YACvC,OAAO,wBAAwB,CAAC,UAAU,CAAC;QAC5C,KAAK,wBAAwB,CAAC,WAAW;YACxC,OAAO,wBAAwB,CAAC,WAAW,CAAC;QAC7C,KAAK,wBAAwB,CAAC,YAAY;YACzC,OAAO,wBAAwB,CAAC,YAAY,CAAC;QAC9C,KAAK,wBAAwB,CAAC,SAAS;YACtC,OAAO,wBAAwB,CAAC,SAAS,CAAC;QAC3C,KAAK,wBAAwB,CAAC,SAAS;YACtC,OAAO,wBAAwB,CAAC,SAAS,CAAC;QAC3C,KAAK,wBAAwB,CAAC,QAAQ;YACrC,OAAO,wBAAwB,CAAC,QAAQ,CAAC;QAC1C,KAAK,wBAAwB,CAAC,qBAAqB;YAClD,OAAO,wBAAwB,CAAC,qBAAqB,CAAC;QACvD,KAAK,wBAAwB,CAAC,eAAe;YAC5C,OAAO,wBAAwB,CAAC,eAAe,CAAC;QACjD,KAAK,wBAAwB,CAAC,mBAAmB;YAChD,OAAO,wBAAwB,CAAC,mBAAmB,CAAC;IACtD,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,IAAY;IACtD,QAAQ,IAAgC,EAAE,CAAC;QAC1C,KAAK,wBAAwB,CAAC,EAAE;YAC/B,OAAO,wBAAwB,CAAC,EAAE,CAAC;QACpC,KAAK,wBAAwB,CAAC,OAAO;YACpC,OAAO,wBAAwB,CAAC,OAAO,CAAC;QACzC,KAAK,wBAAwB,CAAC,UAAU;YACvC,OAAO,wBAAwB,CAAC,UAAU,CAAC;QAC5C,KAAK,wBAAwB,CAAC,WAAW;YACxC,OAAO,wBAAwB,CAAC,WAAW,CAAC;QAC7C,KAAK,wBAAwB,CAAC,YAAY;YACzC,OAAO,wBAAwB,CAAC,YAAY,CAAC;QAC9C,KAAK,wBAAwB,CAAC,SAAS;YACtC,OAAO,wBAAwB,CAAC,SAAS,CAAC;QAC3C,KAAK,wBAAwB,CAAC,SAAS;YACtC,OAAO,wBAAwB,CAAC,SAAS,CAAC;QAC3C,KAAK,wBAAwB,CAAC,QAAQ;YACrC,OAAO,wBAAwB,CAAC,QAAQ,CAAC;QAC1C,KAAK,wBAAwB,CAAC,qBAAqB;YAClD,OAAO,wBAAwB,CAAC,qBAAqB,CAAC;QACvD,KAAK,wBAAwB,CAAC,eAAe;YAC5C,OAAO,wBAAwB,CAAC,eAAe,CAAC;QACjD,KAAK,wBAAwB,CAAC,mBAAmB;YAChD,OAAO,wBAAwB,CAAC,mBAAmB,CAAC;IACtD,CAAC;IAED,OAAO,SAAS,CAAC;AAClB,CAAC"}
@@ -0,0 +1,9 @@
1
+ export declare enum ECommonsHttpResponseDataType {
2
+ STRING = "string",
3
+ UINT8ARRAY = "uint8array"
4
+ }
5
+ export declare function toECommonsHttpResponseDataType(type: string): ECommonsHttpResponseDataType | undefined;
6
+ export declare function fromECommonsHttpResponseDataType(type: ECommonsHttpResponseDataType): string;
7
+ export declare function isECommonsHttpResponseDataType(test: unknown): test is ECommonsHttpResponseDataType;
8
+ export declare function keyToECommonsHttpResponseDataType(key: string): ECommonsHttpResponseDataType;
9
+ export declare const ECOMMONS_HTTP_RESPONSE_DATA_TYPES: ECommonsHttpResponseDataType[];
@@ -0,0 +1,41 @@
1
+ import { commonsTypeIsString } from 'tscommons-esm-core';
2
+ export var ECommonsHttpResponseDataType;
3
+ (function (ECommonsHttpResponseDataType) {
4
+ ECommonsHttpResponseDataType["STRING"] = "string";
5
+ ECommonsHttpResponseDataType["UINT8ARRAY"] = "uint8array";
6
+ })(ECommonsHttpResponseDataType || (ECommonsHttpResponseDataType = {}));
7
+ export function toECommonsHttpResponseDataType(type) {
8
+ switch (type) {
9
+ case ECommonsHttpResponseDataType.STRING.toString():
10
+ return ECommonsHttpResponseDataType.STRING;
11
+ case ECommonsHttpResponseDataType.UINT8ARRAY.toString():
12
+ return ECommonsHttpResponseDataType.UINT8ARRAY;
13
+ }
14
+ return undefined;
15
+ }
16
+ export function fromECommonsHttpResponseDataType(type) {
17
+ switch (type) {
18
+ case ECommonsHttpResponseDataType.STRING:
19
+ return ECommonsHttpResponseDataType.STRING.toString();
20
+ case ECommonsHttpResponseDataType.UINT8ARRAY:
21
+ return ECommonsHttpResponseDataType.UINT8ARRAY.toString();
22
+ }
23
+ throw new Error('Unknown ECommonsHttpResponseDataType');
24
+ }
25
+ export function isECommonsHttpResponseDataType(test) {
26
+ if (!commonsTypeIsString(test))
27
+ return false;
28
+ return toECommonsHttpResponseDataType(test) !== undefined;
29
+ }
30
+ export function keyToECommonsHttpResponseDataType(key) {
31
+ switch (key) {
32
+ case 'STRING':
33
+ return ECommonsHttpResponseDataType.STRING;
34
+ case 'UINT8ARRAY':
35
+ return ECommonsHttpResponseDataType.UINT8ARRAY;
36
+ }
37
+ throw new Error(`Unable to obtain ECommonsHttpResponseDataType for key: ${key}`);
38
+ }
39
+ export const ECOMMONS_HTTP_RESPONSE_DATA_TYPES = Object.keys(ECommonsHttpResponseDataType)
40
+ .map((e) => keyToECommonsHttpResponseDataType(e));
41
+ //# sourceMappingURL=ecommons-http-response-data-type.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ecommons-http-response-data-type.mjs","sourceRoot":"","sources":["../../src/enums/ecommons-http-response-data-type.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEzD,MAAM,CAAN,IAAY,4BAGX;AAHD,WAAY,4BAA4B;IACtC,iDAAiB,CAAA;IACjB,yDAAyB,CAAA;AAC3B,CAAC,EAHW,4BAA4B,KAA5B,4BAA4B,QAGvC;AAED,MAAM,UAAU,8BAA8B,CAAC,IAAY;IAC1D,QAAQ,IAAI,EAAE,CAAC;QACd,KAAK,4BAA4B,CAAC,MAAM,CAAC,QAAQ,EAAE;YAClD,OAAO,4BAA4B,CAAC,MAAM,CAAC;QAC5C,KAAK,4BAA4B,CAAC,UAAU,CAAC,QAAQ,EAAE;YACtD,OAAO,4BAA4B,CAAC,UAAU,CAAC;IACjD,CAAC;IACD,OAAO,SAAS,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,gCAAgC,CAAC,IAAkC;IAClF,QAAQ,IAAI,EAAE,CAAC;QACd,KAAK,4BAA4B,CAAC,MAAM;YACvC,OAAO,4BAA4B,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACvD,KAAK,4BAA4B,CAAC,UAAU;YAC3C,OAAO,4BAA4B,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;IAC5D,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,IAAa;IAC3D,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IAE7C,OAAO,8BAA8B,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,iCAAiC,CAAC,GAAW;IAC5D,QAAQ,GAAG,EAAE,CAAC;QACb,KAAK,QAAQ;YACZ,OAAO,4BAA4B,CAAC,MAAM,CAAC;QAC5C,KAAK,YAAY;YAChB,OAAO,4BAA4B,CAAC,UAAU,CAAC;IACjD,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,0DAA0D,GAAG,EAAE,CAAC,CAAC;AAClF,CAAC;AAED,MAAM,CAAC,MAAM,iCAAiC,GAAmC,MAAM,CAAC,IAAI,CAAC,4BAA4B,CAAC;KACvH,GAAG,CAAC,CAAC,CAAS,EAAgC,EAAE,CAAC,iCAAiC,CAAC,CAAC,CAAC,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { CommonsHttpError } from '../classes/commons-http-error.class.mjs';
2
+ import { CommonsHttpSuccess } from '../classes/commons-http-success.class.mjs';
3
+ export declare function commonsHttpBuildErrorFromResponseCode(code: number, message: string): CommonsHttpError;
4
+ export declare function commonsHttpBuildSuccessFromResponseCode(code: number): CommonsHttpSuccess;
@@ -0,0 +1,55 @@
1
+ import { CommonsHttpError } from '../classes/commons-http-error.class.mjs';
2
+ import { CommonsHttpBadRequestError } from '../classes/commons-http-bad-request-error.class.mjs';
3
+ import { CommonsHttpUnauthorizedError } from '../classes/commons-http-unauthorized-error.class.mjs';
4
+ import { CommonsHttpForbiddenError } from '../classes/commons-http-forbidden-error.class.mjs';
5
+ import { CommonsHttpNotFoundError } from '../classes/commons-http-not-found-error.class.mjs';
6
+ import { CommonsHttpConflictError } from '../classes/commons-http-conflict-error.class.mjs';
7
+ import { CommonsHttpInternalServerError } from '../classes/commons-http-internal-server-error.class.mjs';
8
+ import { CommonsHttpNotImplementedError } from '../classes/commons-http-not-implemented-error.class.mjs';
9
+ import { CommonsHttpServiceUnavailableError } from '../classes/commons-http-service-unavailable-error.class.mjs';
10
+ import { CommonsHttpSuccess } from '../classes/commons-http-success.class.mjs';
11
+ import { CommonsHttpOkSuccess } from '../classes/commons-http-ok-success.class.mjs';
12
+ import { CommonsHttpCreatedSuccess } from '../classes/commons-http-created-success.class.mjs';
13
+ import { CommonsHttpNoContentSuccess } from '../classes/commons-http-no-content-success.class.mjs';
14
+ import { ECommonsHttpResponseCode, toECommonsHttpResponseCode } from '../enums/ecommons-http-response-code.mjs';
15
+ export function commonsHttpBuildErrorFromResponseCode(code, message) {
16
+ const httpCode = toECommonsHttpResponseCode(code);
17
+ if (httpCode === undefined) {
18
+ return new CommonsHttpError(message, code);
19
+ }
20
+ switch (httpCode) {
21
+ case ECommonsHttpResponseCode.BAD_REQUEST:
22
+ return new CommonsHttpBadRequestError(message);
23
+ case ECommonsHttpResponseCode.UNAUTHORIZED:
24
+ return new CommonsHttpUnauthorizedError(message);
25
+ case ECommonsHttpResponseCode.FORBIDDEN:
26
+ return new CommonsHttpForbiddenError(message);
27
+ case ECommonsHttpResponseCode.NOT_FOUND:
28
+ return new CommonsHttpNotFoundError(message);
29
+ case ECommonsHttpResponseCode.CONFLICT:
30
+ return new CommonsHttpConflictError(message);
31
+ case ECommonsHttpResponseCode.INTERNAL_SERVER_ERROR:
32
+ return new CommonsHttpInternalServerError(message);
33
+ case ECommonsHttpResponseCode.NOT_IMPLEMENTED:
34
+ return new CommonsHttpNotImplementedError(message);
35
+ case ECommonsHttpResponseCode.SERVICE_UNAVAILABLE:
36
+ return new CommonsHttpServiceUnavailableError(message);
37
+ }
38
+ throw new Error(`Reached unknown ECommonsHttpResponseCode state for ${httpCode}`);
39
+ }
40
+ export function commonsHttpBuildSuccessFromResponseCode(code) {
41
+ const httpCode = toECommonsHttpResponseCode(code);
42
+ if (httpCode === undefined) {
43
+ return new CommonsHttpSuccess(code);
44
+ }
45
+ switch (httpCode) {
46
+ case ECommonsHttpResponseCode.OK:
47
+ return new CommonsHttpOkSuccess();
48
+ case ECommonsHttpResponseCode.CREATED:
49
+ return new CommonsHttpCreatedSuccess();
50
+ case ECommonsHttpResponseCode.NO_CONTENT:
51
+ return new CommonsHttpNoContentSuccess();
52
+ }
53
+ throw new Error(`Reached unknown ECommonsHttpResponseCode state for ${httpCode}`);
54
+ }
55
+ //# sourceMappingURL=commons-http-responses.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commons-http-responses.mjs","sourceRoot":"","sources":["../../src/helpers/commons-http-responses.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC3E,OAAO,EAAE,0BAA0B,EAAE,MAAM,qDAAqD,CAAC;AACjG,OAAO,EAAE,4BAA4B,EAAE,MAAM,sDAAsD,CAAC;AACpG,OAAO,EAAE,yBAAyB,EAAE,MAAM,mDAAmD,CAAC;AAC9F,OAAO,EAAE,wBAAwB,EAAE,MAAM,mDAAmD,CAAC;AAC7F,OAAO,EAAE,wBAAwB,EAAE,MAAM,kDAAkD,CAAC;AAC5F,OAAO,EAAE,8BAA8B,EAAE,MAAM,yDAAyD,CAAC;AACzG,OAAO,EAAE,8BAA8B,EAAE,MAAM,yDAAyD,CAAC;AACzG,OAAO,EAAE,kCAAkC,EAAE,MAAM,6DAA6D,CAAC;AACjH,OAAO,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AAC/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,8CAA8C,CAAC;AACpF,OAAO,EAAE,yBAAyB,EAAE,MAAM,mDAAmD,CAAC;AAC9F,OAAO,EAAE,2BAA2B,EAAE,MAAM,sDAAsD,CAAC;AAEnG,OAAO,EAAE,wBAAwB,EAAE,0BAA0B,EAAE,MAAM,0CAA0C,CAAC;AAEhH,MAAM,UAAU,qCAAqC,CAAC,IAAY,EAAE,OAAe;IAClF,MAAM,QAAQ,GAAuC,0BAA0B,CAAC,IAAI,CAAC,CAAC;IACtF,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO,IAAI,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC5C,CAAC;IAED,QAAQ,QAAQ,EAAE,CAAC;QAClB,KAAK,wBAAwB,CAAC,WAAW;YACxC,OAAO,IAAI,0BAA0B,CAAC,OAAO,CAAC,CAAC;QAChD,KAAK,wBAAwB,CAAC,YAAY;YACzC,OAAO,IAAI,4BAA4B,CAAC,OAAO,CAAC,CAAC;QAClD,KAAK,wBAAwB,CAAC,SAAS;YACtC,OAAO,IAAI,yBAAyB,CAAC,OAAO,CAAC,CAAC;QAC/C,KAAK,wBAAwB,CAAC,SAAS;YACtC,OAAO,IAAI,wBAAwB,CAAC,OAAO,CAAC,CAAC;QAC9C,KAAK,wBAAwB,CAAC,QAAQ;YACrC,OAAO,IAAI,wBAAwB,CAAC,OAAO,CAAC,CAAC;QAC9C,KAAK,wBAAwB,CAAC,qBAAqB;YAClD,OAAO,IAAI,8BAA8B,CAAC,OAAO,CAAC,CAAC;QACpD,KAAK,wBAAwB,CAAC,eAAe;YAC5C,OAAO,IAAI,8BAA8B,CAAC,OAAO,CAAC,CAAC;QACpD,KAAK,wBAAwB,CAAC,mBAAmB;YAChD,OAAO,IAAI,kCAAkC,CAAC,OAAO,CAAC,CAAC;IACzD,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,sDAAsD,QAAQ,EAAE,CAAC,CAAC;AACnF,CAAC;AAED,MAAM,UAAU,uCAAuC,CAAC,IAAY;IACnE,MAAM,QAAQ,GAAuC,0BAA0B,CAAC,IAAI,CAAC,CAAC;IACtF,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAED,QAAQ,QAAQ,EAAE,CAAC;QAClB,KAAK,wBAAwB,CAAC,EAAE;YAC/B,OAAO,IAAI,oBAAoB,EAAE,CAAC;QACnC,KAAK,wBAAwB,CAAC,OAAO;YACpC,OAAO,IAAI,yBAAyB,EAAE,CAAC;QACxC,KAAK,wBAAwB,CAAC,UAAU;YACvC,OAAO,IAAI,2BAA2B,EAAE,CAAC;IAC3C,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,sDAAsD,QAAQ,EAAE,CAAC,CAAC;AACnF,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function commonsHttpUrlNormalizePath(path: string): string;
2
+ export declare function commonsHttpUrlNormalizeRelativeToAbsolute(relative: string, reference: string): string;
@@ -0,0 +1,59 @@
1
+ import { CommonsHttpUrl } from '../classes/commons-http-url.class.mjs';
2
+ export function commonsHttpUrlNormalizePath(path) {
3
+ if (path === '')
4
+ return '';
5
+ const firstSlash = path.startsWith('/');
6
+ const segments = path.split('/');
7
+ const rebuild = [];
8
+ for (const segment of segments) {
9
+ if (segment === '')
10
+ continue;
11
+ if (segment === '.')
12
+ continue;
13
+ if (segment === '..') {
14
+ if (rebuild.length > 0)
15
+ rebuild.pop();
16
+ continue;
17
+ }
18
+ rebuild.push(segment);
19
+ }
20
+ if (firstSlash)
21
+ rebuild.unshift('');
22
+ return rebuild.join('/');
23
+ }
24
+ export function commonsHttpUrlNormalizeRelativeToAbsolute(relative, reference) {
25
+ const referenceUrl = new CommonsHttpUrl(reference);
26
+ referenceUrl.pathname = commonsHttpUrlNormalizePath(referenceUrl.pathname);
27
+ if (/^[a-z]+:\/\//i.test(relative)) {
28
+ // absolute path
29
+ const relativeUrl = new CommonsHttpUrl(relative);
30
+ relativeUrl.pathname = commonsHttpUrlNormalizePath(relativeUrl.pathname);
31
+ return relativeUrl.href;
32
+ }
33
+ if (/^\/\//.test(relative)) {
34
+ // auto-http/s urls
35
+ const relativeUrl = new CommonsHttpUrl(`${referenceUrl.protocol}:${relative}`);
36
+ relativeUrl.pathname = commonsHttpUrlNormalizePath(relativeUrl.pathname);
37
+ return relativeUrl.href;
38
+ }
39
+ if (/^\//.test(relative)) {
40
+ // root urls
41
+ const relativeUrl = new CommonsHttpUrl(`${referenceUrl.origin}${relative}`);
42
+ relativeUrl.pathname = commonsHttpUrlNormalizePath(relativeUrl.pathname);
43
+ return relativeUrl.href;
44
+ }
45
+ let existing = referenceUrl.pathname;
46
+ if (existing !== '' && !existing.endsWith('/')
47
+ && relative !== '' && !/^[?#]/.test(relative)) {
48
+ // assume file, and strip it off, if there is a replacement path file
49
+ const split = existing.split('/');
50
+ split.pop();
51
+ existing = split.join('/');
52
+ }
53
+ { // scope
54
+ const relativeUrl = new CommonsHttpUrl(`${referenceUrl.origin}${existing}${/^[?#]/.test(relative) ? '' : '/'}${relative}`); // queries and anchors aren't counted for relative
55
+ relativeUrl.pathname = commonsHttpUrlNormalizePath(relativeUrl.pathname);
56
+ return relativeUrl.href;
57
+ }
58
+ }
59
+ //# sourceMappingURL=commons-http-url.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commons-http-url.mjs","sourceRoot":"","sources":["../../src/helpers/commons-http-url.mts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { TEncodedObject } from 'tscommons-esm-core';
2
+ import { THttpHeaderOrParamObject } from '../types/thttp-header-or-param-object.mjs';
3
+ import { ECommonsHttpContentType } from '../enums/ecommons-http-content-type.mjs';
4
+ export declare function commonsHttpClientInternalBuildHeadersOrParams(data: TEncodedObject | undefined): THttpHeaderOrParamObject;
5
+ export declare function commonsHttpClientInternalAppendContentType(contentType: ECommonsHttpContentType, headers: THttpHeaderOrParamObject | undefined): THttpHeaderOrParamObject;
@@ -0,0 +1,27 @@
1
+ import { commonsObjectMapObject, commonsTypeIsObject } from 'tscommons-esm-core';
2
+ import { ECommonsHttpContentType } from '../enums/ecommons-http-content-type.mjs';
3
+ export function commonsHttpClientInternalBuildHeadersOrParams(data) {
4
+ if (!data)
5
+ return {};
6
+ if (!commonsTypeIsObject(data))
7
+ throw new Error('REST data is not an object');
8
+ return commonsObjectMapObject(data, (value, _key) => {
9
+ if (value === undefined || value === null)
10
+ return '';
11
+ return value.toString(); // eslint-disable-line @typescript-eslint/no-unsafe-return, @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-unsafe-call
12
+ });
13
+ }
14
+ export function commonsHttpClientInternalAppendContentType(contentType, headers) {
15
+ // immutable; deep doesn't matter as it isn't valid for http headers anyway
16
+ const clone = headers === undefined ? {} : { ...headers };
17
+ switch (contentType) {
18
+ case ECommonsHttpContentType.FORM_URL:
19
+ clone['Content-Type'] = 'application/x-www-form-urlencoded';
20
+ break;
21
+ case ECommonsHttpContentType.JSON:
22
+ clone['Content-Type'] = 'application/json; charset=utf-8';
23
+ break;
24
+ }
25
+ return clone;
26
+ }
27
+ //# sourceMappingURL=http-client-internal-helpers.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http-client-internal-helpers.mjs","sourceRoot":"","sources":["../../src/helpers/http-client-internal-helpers.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,EAAkB,MAAM,oBAAoB,CAAC;AAIjG,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAElF,MAAM,UAAU,6CAA6C,CAAC,IAA8B;IAC3F,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAC;IACrB,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAE9E,OAAO,sBAAsB,CAC3B,IAAI,EACJ,CAAC,KAAU,EAAE,IAAY,EAAU,EAAE;QACpC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO,EAAE,CAAC;QACrD,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,yIAAyI;IACnK,CAAC,CACF,CAAC;AACH,CAAC;AAED,MAAM,UAAU,0CAA0C,CACxD,WAAoC,EACpC,OAA2C;IAE5C,2EAA2E;IAC3E,MAAM,KAAK,GAA6B,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC;IAEpF,QAAQ,WAAW,EAAE,CAAC;QACrB,KAAK,uBAAuB,CAAC,QAAQ;YACpC,KAAK,CAAC,cAAc,CAAC,GAAG,mCAAmC,CAAC;YAC5D,MAAM;QACP,KAAK,uBAAuB,CAAC,IAAI;YAChC,KAAK,CAAC,cAAc,CAAC,GAAG,iCAAiC,CAAC;YAC1D,MAAM;IACR,CAAC;IAED,OAAO,KAAK,CAAC;AACd,CAAC"}
@@ -0,0 +1,28 @@
1
+ import { commonsHttpUrlNormalizePath, commonsHttpUrlNormalizeRelativeToAbsolute } from './helpers/commons-http-url.mjs';
2
+ import { commonsHttpClientInternalBuildHeadersOrParams, commonsHttpClientInternalAppendContentType } from './helpers/http-client-internal-helpers.mjs';
3
+ import { commonsHttpBuildErrorFromResponseCode, commonsHttpBuildSuccessFromResponseCode } from './helpers/commons-http-responses.mjs';
4
+ import { CommonsHttpUrl } from './classes/commons-http-url.class.mjs';
5
+ import { CommonsHttpNotImplementedError } from './classes/commons-http-not-implemented-error.class.mjs';
6
+ import { CommonsHttpForbiddenError } from './classes/commons-http-forbidden-error.class.mjs';
7
+ import { CommonsHttpSuccess } from './classes/commons-http-success.class.mjs';
8
+ import { CommonsHttpBadRequestError } from './classes/commons-http-bad-request-error.class.mjs';
9
+ import { CommonsHttpCreatedSuccess } from './classes/commons-http-created-success.class.mjs';
10
+ import { CommonsHttpOkSuccess } from './classes/commons-http-ok-success.class.mjs';
11
+ import { CommonsHttpUnauthorizedError } from './classes/commons-http-unauthorized-error.class.mjs';
12
+ import { CommonsHttpConflictError } from './classes/commons-http-conflict-error.class.mjs';
13
+ import { CommonsHttpServiceUnavailableError } from './classes/commons-http-service-unavailable-error.class.mjs';
14
+ import { CommonsHttpNotFoundError } from './classes/commons-http-not-found-error.class.mjs';
15
+ import { CommonsHttpError } from './classes/commons-http-error.class.mjs';
16
+ import { CommonsHttpNoContentSuccess } from './classes/commons-http-no-content-success.class.mjs';
17
+ import { CommonsHttpInternalServerError } from './classes/commons-http-internal-server-error.class.mjs';
18
+ import { CommonsHttpTimeoutError, ICommonsHttpClientImplementation, CommonsHttpClientService } from './services/commons-http-client.service.mjs';
19
+ import { ICommonsStreamableHttpClientImplementation, CommonsStreamableHttpClientService } from './services/commons-streamable-http-client.service.mjs';
20
+ import { ECommonsHttpResponseCode, fromECommonsHttpResponseCode, toECommonsHttpResponseCode } from './enums/ecommons-http-response-code.mjs';
21
+ import { ECommonsHttpContentType, toECommonsHttpContentType, fromECommonsHttpContentType, isECommonsHttpContentType, keyToECommonsHttpContentType, ECOMMONS_HTTP_CONTENT_TYPES } from './enums/ecommons-http-content-type.mjs';
22
+ import { ECommonsHttpMethod, toECommonsHttpMethod, fromECommonsHttpMethod, isECommonsHttpMethod, keyToECommonsHttpMethod, ECOMMONS_HTTP_METHODS } from './enums/ecommons-http-method.mjs';
23
+ import { ECommonsHttpResponseDataType, toECommonsHttpResponseDataType, fromECommonsHttpResponseDataType, isECommonsHttpResponseDataType, keyToECommonsHttpResponseDataType, ECOMMONS_HTTP_RESPONSE_DATA_TYPES } from './enums/ecommons-http-response-data-type.mjs';
24
+ import { TCommonsHttpUrlSegments, isTCommonsHttpUrlSegments, parseTCommonsHttpUrlSegments } from './types/tcommons-http-url-segments.mjs';
25
+ import { TCommonsHttpRequestOptions, TCommonsHttpInternalRequestOptions, isTCommonsHttpRequestOptions } from './types/tcommons-http-request-options.mjs';
26
+ import { TCommonsStreamableHttpObservable } from './types/tcommons-streamable-http-observable.mjs';
27
+ import { THttpHeaderOrParamObject } from './types/thttp-header-or-param-object.mjs';
28
+ export { commonsHttpUrlNormalizePath, commonsHttpUrlNormalizeRelativeToAbsolute, commonsHttpClientInternalBuildHeadersOrParams, commonsHttpClientInternalAppendContentType, commonsHttpBuildErrorFromResponseCode, commonsHttpBuildSuccessFromResponseCode, CommonsHttpUrl, CommonsHttpNotImplementedError, CommonsHttpForbiddenError, CommonsHttpSuccess, CommonsHttpBadRequestError, CommonsHttpCreatedSuccess, CommonsHttpOkSuccess, CommonsHttpUnauthorizedError, CommonsHttpConflictError, CommonsHttpServiceUnavailableError, CommonsHttpNotFoundError, CommonsHttpError, CommonsHttpNoContentSuccess, CommonsHttpInternalServerError, CommonsHttpTimeoutError, ICommonsHttpClientImplementation, CommonsHttpClientService, ICommonsStreamableHttpClientImplementation, CommonsStreamableHttpClientService, ECommonsHttpResponseCode, fromECommonsHttpResponseCode, toECommonsHttpResponseCode, ECommonsHttpContentType, toECommonsHttpContentType, fromECommonsHttpContentType, isECommonsHttpContentType, keyToECommonsHttpContentType, ECOMMONS_HTTP_CONTENT_TYPES, ECommonsHttpMethod, toECommonsHttpMethod, fromECommonsHttpMethod, isECommonsHttpMethod, keyToECommonsHttpMethod, ECOMMONS_HTTP_METHODS, ECommonsHttpResponseDataType, toECommonsHttpResponseDataType, fromECommonsHttpResponseDataType, isECommonsHttpResponseDataType, keyToECommonsHttpResponseDataType, ECOMMONS_HTTP_RESPONSE_DATA_TYPES, TCommonsHttpUrlSegments, isTCommonsHttpUrlSegments, parseTCommonsHttpUrlSegments, TCommonsHttpRequestOptions, TCommonsHttpInternalRequestOptions, isTCommonsHttpRequestOptions, TCommonsStreamableHttpObservable, THttpHeaderOrParamObject };
package/dist/index.mjs ADDED
@@ -0,0 +1,27 @@
1
+ import { commonsHttpUrlNormalizePath, commonsHttpUrlNormalizeRelativeToAbsolute } from './helpers/commons-http-url.mjs';
2
+ import { commonsHttpClientInternalBuildHeadersOrParams, commonsHttpClientInternalAppendContentType } from './helpers/http-client-internal-helpers.mjs';
3
+ import { commonsHttpBuildErrorFromResponseCode, commonsHttpBuildSuccessFromResponseCode } from './helpers/commons-http-responses.mjs';
4
+ import { CommonsHttpUrl } from './classes/commons-http-url.class.mjs';
5
+ import { CommonsHttpNotImplementedError } from './classes/commons-http-not-implemented-error.class.mjs';
6
+ import { CommonsHttpForbiddenError } from './classes/commons-http-forbidden-error.class.mjs';
7
+ import { CommonsHttpSuccess } from './classes/commons-http-success.class.mjs';
8
+ import { CommonsHttpBadRequestError } from './classes/commons-http-bad-request-error.class.mjs';
9
+ import { CommonsHttpCreatedSuccess } from './classes/commons-http-created-success.class.mjs';
10
+ import { CommonsHttpOkSuccess } from './classes/commons-http-ok-success.class.mjs';
11
+ import { CommonsHttpUnauthorizedError } from './classes/commons-http-unauthorized-error.class.mjs';
12
+ import { CommonsHttpConflictError } from './classes/commons-http-conflict-error.class.mjs';
13
+ import { CommonsHttpServiceUnavailableError } from './classes/commons-http-service-unavailable-error.class.mjs';
14
+ import { CommonsHttpNotFoundError } from './classes/commons-http-not-found-error.class.mjs';
15
+ import { CommonsHttpError } from './classes/commons-http-error.class.mjs';
16
+ import { CommonsHttpNoContentSuccess } from './classes/commons-http-no-content-success.class.mjs';
17
+ import { CommonsHttpInternalServerError } from './classes/commons-http-internal-server-error.class.mjs';
18
+ import { CommonsHttpTimeoutError, CommonsHttpClientService } from './services/commons-http-client.service.mjs';
19
+ import { CommonsStreamableHttpClientService } from './services/commons-streamable-http-client.service.mjs';
20
+ import { ECommonsHttpResponseCode, fromECommonsHttpResponseCode, toECommonsHttpResponseCode } from './enums/ecommons-http-response-code.mjs';
21
+ import { ECommonsHttpContentType, toECommonsHttpContentType, fromECommonsHttpContentType, isECommonsHttpContentType, keyToECommonsHttpContentType, ECOMMONS_HTTP_CONTENT_TYPES } from './enums/ecommons-http-content-type.mjs';
22
+ import { ECommonsHttpMethod, toECommonsHttpMethod, fromECommonsHttpMethod, isECommonsHttpMethod, keyToECommonsHttpMethod, ECOMMONS_HTTP_METHODS } from './enums/ecommons-http-method.mjs';
23
+ import { ECommonsHttpResponseDataType, toECommonsHttpResponseDataType, fromECommonsHttpResponseDataType, isECommonsHttpResponseDataType, keyToECommonsHttpResponseDataType, ECOMMONS_HTTP_RESPONSE_DATA_TYPES } from './enums/ecommons-http-response-data-type.mjs';
24
+ import { isTCommonsHttpUrlSegments, parseTCommonsHttpUrlSegments } from './types/tcommons-http-url-segments.mjs';
25
+ import { isTCommonsHttpRequestOptions } from './types/tcommons-http-request-options.mjs';
26
+ export { commonsHttpUrlNormalizePath, commonsHttpUrlNormalizeRelativeToAbsolute, commonsHttpClientInternalBuildHeadersOrParams, commonsHttpClientInternalAppendContentType, commonsHttpBuildErrorFromResponseCode, commonsHttpBuildSuccessFromResponseCode, CommonsHttpUrl, CommonsHttpNotImplementedError, CommonsHttpForbiddenError, CommonsHttpSuccess, CommonsHttpBadRequestError, CommonsHttpCreatedSuccess, CommonsHttpOkSuccess, CommonsHttpUnauthorizedError, CommonsHttpConflictError, CommonsHttpServiceUnavailableError, CommonsHttpNotFoundError, CommonsHttpError, CommonsHttpNoContentSuccess, CommonsHttpInternalServerError, CommonsHttpTimeoutError, CommonsHttpClientService, CommonsStreamableHttpClientService, ECommonsHttpResponseCode, fromECommonsHttpResponseCode, toECommonsHttpResponseCode, ECommonsHttpContentType, toECommonsHttpContentType, fromECommonsHttpContentType, isECommonsHttpContentType, keyToECommonsHttpContentType, ECOMMONS_HTTP_CONTENT_TYPES, ECommonsHttpMethod, toECommonsHttpMethod, fromECommonsHttpMethod, isECommonsHttpMethod, keyToECommonsHttpMethod, ECOMMONS_HTTP_METHODS, ECommonsHttpResponseDataType, toECommonsHttpResponseDataType, fromECommonsHttpResponseDataType, isECommonsHttpResponseDataType, keyToECommonsHttpResponseDataType, ECOMMONS_HTTP_RESPONSE_DATA_TYPES, isTCommonsHttpUrlSegments, parseTCommonsHttpUrlSegments, isTCommonsHttpRequestOptions };
27
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../src/index.mts"],"names":[],"mappings":"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"}
@@ -0,0 +1,41 @@
1
+ import { TEncodedObject } from 'tscommons-esm-core';
2
+ import { THttpHeaderOrParamObject } from '../types/thttp-header-or-param-object.mjs';
3
+ import { TCommonsHttpRequestOptions, TCommonsHttpInternalRequestOptions } from '../types/tcommons-http-request-options.mjs';
4
+ import { ECommonsHttpContentType } from '../enums/ecommons-http-content-type.mjs';
5
+ import { ECommonsHttpResponseDataType } from '../enums/ecommons-http-response-data-type.mjs';
6
+ export declare class CommonsHttpTimeoutError extends Error {
7
+ }
8
+ export interface ICommonsHttpClientImplementation {
9
+ internalHead(url: string, params: THttpHeaderOrParamObject, headers: THttpHeaderOrParamObject, options: TCommonsHttpInternalRequestOptions): Promise<void>;
10
+ internalGet(url: string, params: THttpHeaderOrParamObject, headers: THttpHeaderOrParamObject, responseDataType: ECommonsHttpResponseDataType, options: TCommonsHttpInternalRequestOptions): Promise<string | Uint8Array>;
11
+ internalPost<B extends TEncodedObject = TEncodedObject>(url: string, body: B, params: THttpHeaderOrParamObject, headers: THttpHeaderOrParamObject, bodyDataEncoding: ECommonsHttpContentType, responseDataType: ECommonsHttpResponseDataType, options: TCommonsHttpInternalRequestOptions): Promise<string | Uint8Array>;
12
+ internalPut<B extends TEncodedObject = TEncodedObject>(url: string, body: B, params: THttpHeaderOrParamObject, headers: THttpHeaderOrParamObject, bodyDataEncoding: ECommonsHttpContentType, responseDataType: ECommonsHttpResponseDataType, options: TCommonsHttpInternalRequestOptions): Promise<string | Uint8Array>;
13
+ internalPatch<B extends TEncodedObject = TEncodedObject>(url: string, body: B, params: THttpHeaderOrParamObject, headers: THttpHeaderOrParamObject, bodyDataEncoding: ECommonsHttpContentType, responseDataType: ECommonsHttpResponseDataType, options: TCommonsHttpInternalRequestOptions): Promise<string | Uint8Array>;
14
+ internalDelete(url: string, params: THttpHeaderOrParamObject, headers: THttpHeaderOrParamObject, responseDataType: ECommonsHttpResponseDataType, options: TCommonsHttpInternalRequestOptions): Promise<string | Uint8Array>;
15
+ }
16
+ type TReattemptDebugCallback = (reattempt: number, url: string, params: TEncodedObject | undefined, headers: TEncodedObject | undefined, options: TCommonsHttpRequestOptions | undefined) => void;
17
+ export declare class CommonsHttpClientService {
18
+ private implementation;
19
+ private reattemptDebugCallback;
20
+ constructor(implementation: ICommonsHttpClientImplementation);
21
+ setReattemptDebugCallback(callback: TReattemptDebugCallback): void;
22
+ head<P extends TEncodedObject = TEncodedObject, H extends TEncodedObject = TEncodedObject>(url: string, params?: P | undefined, // the params can be explicitly undefined (none) as well as optional
23
+ headers?: H | undefined, // the headers can be explicitly undefined (none) as well as optional,
24
+ options?: TCommonsHttpRequestOptions): Promise<void>;
25
+ get<P extends TEncodedObject = TEncodedObject, H extends TEncodedObject = TEncodedObject>(url: string, params?: P | undefined, // the params can be explicitly undefined (none) as well as optional
26
+ headers?: H | undefined, // the headers can be explicitly undefined (none) as well as optional
27
+ options?: TCommonsHttpRequestOptions): Promise<string | Uint8Array>;
28
+ post<B extends TEncodedObject = TEncodedObject, P extends TEncodedObject = TEncodedObject, H extends TEncodedObject = TEncodedObject>(url: string, body: B, params?: P | undefined, // the params can be explicitly undefined (none) as well as optional
29
+ headers?: H | undefined, // the headers can be explicitly undefined (none) as well as optional
30
+ options?: TCommonsHttpRequestOptions): Promise<string | Uint8Array>;
31
+ put<B extends TEncodedObject = TEncodedObject, P extends TEncodedObject = TEncodedObject, H extends TEncodedObject = TEncodedObject>(url: string, body: B, params?: P | undefined, // the params can be explicitly undefined (none) as well as optional
32
+ headers?: H | undefined, // the headers can be explicitly undefined (none) as well as optional
33
+ options?: TCommonsHttpRequestOptions): Promise<string | Uint8Array>;
34
+ patch<B extends TEncodedObject = TEncodedObject, P extends TEncodedObject = TEncodedObject, H extends TEncodedObject = TEncodedObject>(url: string, body: B, params?: P | undefined, // the params can be explicitly undefined (none) as well as optional
35
+ headers?: H | undefined, // the headers can be explicitly undefined (none) as well as optional
36
+ options?: TCommonsHttpRequestOptions): Promise<string | Uint8Array>;
37
+ delete<P extends TEncodedObject = TEncodedObject, H extends TEncodedObject = TEncodedObject>(url: string, params?: P | undefined, // the params can be explicitly undefined (none) as well as optional
38
+ headers?: H | undefined, // the headers can be explicitly undefined (none) as well as optional
39
+ options?: TCommonsHttpRequestOptions): Promise<string | Uint8Array>;
40
+ }
41
+ export {};
@@ -0,0 +1,141 @@
1
+ import { commonsHttpClientInternalAppendContentType, commonsHttpClientInternalBuildHeadersOrParams } from '../helpers/http-client-internal-helpers.mjs';
2
+ import { ECommonsHttpContentType } from '../enums/ecommons-http-content-type.mjs';
3
+ import { ECommonsHttpResponseDataType } from '../enums/ecommons-http-response-data-type.mjs';
4
+ export class CommonsHttpTimeoutError extends Error {
5
+ }
6
+ export class CommonsHttpClientService {
7
+ implementation;
8
+ reattemptDebugCallback = (_reattempt, _url, _params, _headers, _options) => {
9
+ // do nothing by default
10
+ };
11
+ constructor(implementation) {
12
+ this.implementation = implementation;
13
+ }
14
+ setReattemptDebugCallback(callback) {
15
+ this.reattemptDebugCallback = callback;
16
+ }
17
+ async head(url, params = undefined, // the params can be explicitly undefined (none) as well as optional
18
+ headers = undefined, // the headers can be explicitly undefined (none) as well as optional,
19
+ options = {}) {
20
+ let maxReattempts = options.maxReattempts || 0;
21
+ let reattempt = 0;
22
+ while (true) {
23
+ try {
24
+ return await this.implementation.internalHead(url, commonsHttpClientInternalBuildHeadersOrParams(params), commonsHttpClientInternalBuildHeadersOrParams(headers), options);
25
+ }
26
+ catch (e) {
27
+ if (e instanceof CommonsHttpTimeoutError && maxReattempts > 0) {
28
+ maxReattempts--;
29
+ reattempt++;
30
+ this.reattemptDebugCallback(reattempt, url, params, headers, options);
31
+ continue;
32
+ }
33
+ throw e;
34
+ }
35
+ }
36
+ }
37
+ async get(url, params = undefined, // the params can be explicitly undefined (none) as well as optional
38
+ headers = undefined, // the headers can be explicitly undefined (none) as well as optional
39
+ options = {}) {
40
+ let maxReattempts = options.maxReattempts || 0;
41
+ let reattempt = 0;
42
+ while (true) {
43
+ try {
44
+ return await this.implementation.internalGet(url, commonsHttpClientInternalBuildHeadersOrParams(params), commonsHttpClientInternalBuildHeadersOrParams(headers), options.responseDataType || ECommonsHttpResponseDataType.STRING, options);
45
+ }
46
+ catch (e) {
47
+ if (e instanceof CommonsHttpTimeoutError && maxReattempts > 0) {
48
+ maxReattempts--;
49
+ reattempt++;
50
+ this.reattemptDebugCallback(reattempt, url, params, headers, options);
51
+ continue;
52
+ }
53
+ throw e;
54
+ }
55
+ }
56
+ }
57
+ post(url, body, params = undefined, // the params can be explicitly undefined (none) as well as optional
58
+ headers = undefined, // the headers can be explicitly undefined (none) as well as optional
59
+ options = {}) {
60
+ const builtHeaders = commonsHttpClientInternalAppendContentType(options.bodyDataEncoding || ECommonsHttpContentType.FORM_URL, commonsHttpClientInternalBuildHeadersOrParams(headers));
61
+ let maxReattempts = options.maxReattempts || 0;
62
+ let reattempt = 0;
63
+ while (true) {
64
+ try {
65
+ return this.implementation.internalPost(url, body, commonsHttpClientInternalBuildHeadersOrParams(params), builtHeaders, options.bodyDataEncoding || ECommonsHttpContentType.FORM_URL, options.responseDataType || ECommonsHttpResponseDataType.STRING, options);
66
+ }
67
+ catch (e) {
68
+ if (e instanceof CommonsHttpTimeoutError && maxReattempts > 0) {
69
+ maxReattempts--;
70
+ reattempt++;
71
+ this.reattemptDebugCallback(reattempt, url, params, headers, options);
72
+ continue;
73
+ }
74
+ throw e;
75
+ }
76
+ }
77
+ }
78
+ put(url, body, params = undefined, // the params can be explicitly undefined (none) as well as optional
79
+ headers = undefined, // the headers can be explicitly undefined (none) as well as optional
80
+ options = {}) {
81
+ const builtHeaders = commonsHttpClientInternalAppendContentType(options.bodyDataEncoding || ECommonsHttpContentType.FORM_URL, commonsHttpClientInternalBuildHeadersOrParams(headers));
82
+ let maxReattempts = options.maxReattempts || 0;
83
+ let reattempt = 0;
84
+ while (true) {
85
+ try {
86
+ return this.implementation.internalPut(url, body, commonsHttpClientInternalBuildHeadersOrParams(params), builtHeaders, options.bodyDataEncoding || ECommonsHttpContentType.FORM_URL, options.responseDataType || ECommonsHttpResponseDataType.STRING, options);
87
+ }
88
+ catch (e) {
89
+ if (e instanceof CommonsHttpTimeoutError && maxReattempts > 0) {
90
+ maxReattempts--;
91
+ reattempt++;
92
+ this.reattemptDebugCallback(reattempt, url, params, headers, options);
93
+ continue;
94
+ }
95
+ throw e;
96
+ }
97
+ }
98
+ }
99
+ patch(url, body, params = undefined, // the params can be explicitly undefined (none) as well as optional
100
+ headers = undefined, // the headers can be explicitly undefined (none) as well as optional
101
+ options = {}) {
102
+ const builtHeaders = commonsHttpClientInternalAppendContentType(options.bodyDataEncoding || ECommonsHttpContentType.FORM_URL, commonsHttpClientInternalBuildHeadersOrParams(headers));
103
+ let maxReattempts = options.maxReattempts || 0;
104
+ let reattempt = 0;
105
+ while (true) {
106
+ try {
107
+ return this.implementation.internalPatch(url, body, commonsHttpClientInternalBuildHeadersOrParams(params), builtHeaders, options.bodyDataEncoding || ECommonsHttpContentType.FORM_URL, options.responseDataType || ECommonsHttpResponseDataType.STRING, options);
108
+ }
109
+ catch (e) {
110
+ if (e instanceof CommonsHttpTimeoutError && maxReattempts > 0) {
111
+ maxReattempts--;
112
+ reattempt++;
113
+ this.reattemptDebugCallback(reattempt, url, params, headers, options);
114
+ continue;
115
+ }
116
+ throw e;
117
+ }
118
+ }
119
+ }
120
+ delete(url, params = undefined, // the params can be explicitly undefined (none) as well as optional
121
+ headers = undefined, // the headers can be explicitly undefined (none) as well as optional
122
+ options = {}) {
123
+ let maxReattempts = options.maxReattempts || 0;
124
+ let reattempt = 0;
125
+ while (true) {
126
+ try {
127
+ return this.implementation.internalDelete(url, commonsHttpClientInternalBuildHeadersOrParams(params), commonsHttpClientInternalBuildHeadersOrParams(headers), options.responseDataType || ECommonsHttpResponseDataType.STRING, options);
128
+ }
129
+ catch (e) {
130
+ if (e instanceof CommonsHttpTimeoutError && maxReattempts > 0) {
131
+ maxReattempts--;
132
+ reattempt++;
133
+ this.reattemptDebugCallback(reattempt, url, params, headers, options);
134
+ continue;
135
+ }
136
+ throw e;
137
+ }
138
+ }
139
+ }
140
+ }
141
+ //# sourceMappingURL=commons-http-client.service.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commons-http-client.service.mjs","sourceRoot":"","sources":["../../src/services/commons-http-client.service.mts"],"names":[],"mappings":"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"}