@outfoxx/sunday 1.0.9 → 1.0.10

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 (234) hide show
  1. package/LICENSE.txt +203 -0
  2. package/README.md +36 -2
  3. package/build/date-time-types.d.ts +35 -0
  4. package/build/date-time-types.js +699 -0
  5. package/build/date-time-types.js.map +1 -0
  6. package/build/event-parser.d.ts +17 -0
  7. package/build/event-parser.js +151 -0
  8. package/build/event-parser.js.map +1 -0
  9. package/build/fetch-event-source.d.ts +66 -0
  10. package/build/fetch-event-source.js +365 -0
  11. package/build/fetch-event-source.js.map +1 -0
  12. package/build/fetch-request-factory.d.ts +32 -0
  13. package/build/fetch-request-factory.js +316 -0
  14. package/build/fetch-request-factory.js.map +1 -0
  15. package/build/fetch.d.ts +9 -0
  16. package/build/fetch.js +140 -0
  17. package/build/fetch.js.map +1 -0
  18. package/build/header-parameters.d.ts +3 -0
  19. package/build/header-parameters.js +82 -0
  20. package/build/header-parameters.js.map +1 -0
  21. package/build/index.d.ts +26 -0
  22. package/build/index.js +41 -0
  23. package/build/index.js.map +1 -0
  24. package/{dist → build}/logger.d.ts +9 -0
  25. package/build/logger.js +36 -0
  26. package/build/logger.js.map +1 -0
  27. package/build/media-type-codecs/any-text-decoder.d.ts +7 -0
  28. package/build/media-type-codecs/any-text-decoder.js +29 -0
  29. package/build/media-type-codecs/any-text-decoder.js.map +1 -0
  30. package/build/media-type-codecs/any-text-encoder.d.ts +6 -0
  31. package/build/media-type-codecs/any-text-encoder.js +27 -0
  32. package/build/media-type-codecs/any-text-encoder.js.map +1 -0
  33. package/build/media-type-codecs/binary-decoder.d.ts +7 -0
  34. package/build/media-type-codecs/binary-decoder.js +33 -0
  35. package/build/media-type-codecs/binary-decoder.js.map +1 -0
  36. package/build/media-type-codecs/binary-encoder.d.ts +6 -0
  37. package/build/media-type-codecs/binary-encoder.js +30 -0
  38. package/build/media-type-codecs/binary-encoder.js.map +1 -0
  39. package/build/media-type-codecs/cbor-decoder.d.ts +13 -0
  40. package/build/media-type-codecs/cbor-decoder.js +38 -0
  41. package/build/media-type-codecs/cbor-decoder.js.map +1 -0
  42. package/build/media-type-codecs/cbor-encoder.d.ts +12 -0
  43. package/build/media-type-codecs/cbor-encoder.js +36 -0
  44. package/build/media-type-codecs/cbor-encoder.js.map +1 -0
  45. package/build/media-type-codecs/cbor-tags.d.ts +6 -0
  46. package/build/media-type-codecs/cbor-tags.js +20 -0
  47. package/build/media-type-codecs/cbor-tags.js.map +1 -0
  48. package/build/media-type-codecs/default-policies.d.ts +3 -0
  49. package/build/media-type-codecs/default-policies.js +33 -0
  50. package/build/media-type-codecs/default-policies.js.map +1 -0
  51. package/build/media-type-codecs/json-decoder.d.ts +14 -0
  52. package/build/media-type-codecs/json-decoder.js +40 -0
  53. package/build/media-type-codecs/json-decoder.js.map +1 -0
  54. package/build/media-type-codecs/json-encoder.d.ts +13 -0
  55. package/build/media-type-codecs/json-encoder.js +43 -0
  56. package/build/media-type-codecs/json-encoder.js.map +1 -0
  57. package/build/media-type-codecs/media-type-decoder.d.ts +14 -0
  58. package/build/media-type-codecs/media-type-decoder.js +18 -0
  59. package/build/media-type-codecs/media-type-decoder.js.map +1 -0
  60. package/build/media-type-codecs/media-type-decoders.d.ts +16 -0
  61. package/build/media-type-codecs/media-type-decoders.js +63 -0
  62. package/build/media-type-codecs/media-type-decoders.js.map +1 -0
  63. package/build/media-type-codecs/media-type-encoder.d.ts +12 -0
  64. package/build/media-type-codecs/media-type-encoder.js +22 -0
  65. package/build/media-type-codecs/media-type-encoder.js.map +1 -0
  66. package/build/media-type-codecs/media-type-encoders.d.ts +16 -0
  67. package/build/media-type-codecs/media-type-encoders.js +65 -0
  68. package/build/media-type-codecs/media-type-encoders.js.map +1 -0
  69. package/build/media-type-codecs/www-form-url-encoder.d.ts +31 -0
  70. package/build/media-type-codecs/www-form-url-encoder.js +281 -0
  71. package/build/media-type-codecs/www-form-url-encoder.js.map +1 -0
  72. package/build/media-type.d.ts +94 -0
  73. package/build/media-type.js +305 -0
  74. package/build/media-type.js.map +1 -0
  75. package/build/problem.d.ts +35 -0
  76. package/build/problem.js +122 -0
  77. package/build/problem.js.map +1 -0
  78. package/build/request-adapters.d.ts +23 -0
  79. package/build/request-adapters.js +53 -0
  80. package/build/request-adapters.js.map +1 -0
  81. package/build/request-factory.d.ts +39 -0
  82. package/build/request-factory.js +15 -0
  83. package/build/request-factory.js.map +1 -0
  84. package/build/result-response.d.ts +4 -0
  85. package/build/result-response.js +15 -0
  86. package/build/result-response.js.map +1 -0
  87. package/build/schema-builtins.d.ts +21 -0
  88. package/build/schema-builtins.js +201 -0
  89. package/build/schema-builtins.js.map +1 -0
  90. package/build/schema-policy.d.ts +31 -0
  91. package/build/schema-policy.js +41 -0
  92. package/build/schema-policy.js.map +1 -0
  93. package/build/schema-runtime.d.ts +25 -0
  94. package/build/schema-runtime.js +77 -0
  95. package/build/schema-runtime.js.map +1 -0
  96. package/build/sunday-error.d.ts +10 -0
  97. package/build/sunday-error.js +36 -0
  98. package/build/sunday-error.js.map +1 -0
  99. package/build/url-template.js +33 -0
  100. package/build/url-template.js.map +1 -0
  101. package/build/util/async-iterables.d.ts +15 -0
  102. package/build/util/async-iterables.js +179 -0
  103. package/build/util/async-iterables.js.map +1 -0
  104. package/build/util/errors.d.ts +2 -0
  105. package/build/util/errors.js +65 -0
  106. package/build/util/errors.js.map +1 -0
  107. package/build/util/nullify.d.ts +5 -0
  108. package/build/util/nullify.js +37 -0
  109. package/build/util/nullify.js.map +1 -0
  110. package/build/util/numbers.d.ts +11 -0
  111. package/build/util/numbers.js +41 -0
  112. package/build/util/numbers.js.map +1 -0
  113. package/build/util/subscriptions.d.ts +16 -0
  114. package/build/util/subscriptions.js +78 -0
  115. package/build/util/subscriptions.js.map +1 -0
  116. package/build/util/unknowns.d.ts +2 -0
  117. package/build/util/unknowns.js +23 -0
  118. package/build/util/unknowns.js.map +1 -0
  119. package/package.json +72 -49
  120. package/dist/any-type.d.ts +0 -2
  121. package/dist/any-type.js +0 -2
  122. package/dist/any-type.js.map +0 -1
  123. package/dist/binary-decoder.d.ts +0 -6
  124. package/dist/binary-decoder.js +0 -16
  125. package/dist/binary-decoder.js.map +0 -1
  126. package/dist/binary-encoder.d.ts +0 -5
  127. package/dist/binary-encoder.js +0 -13
  128. package/dist/binary-encoder.js.map +0 -1
  129. package/dist/cbor-decoder.d.ts +0 -15
  130. package/dist/cbor-decoder.js +0 -126
  131. package/dist/cbor-decoder.js.map +0 -1
  132. package/dist/cbor-encoder.d.ts +0 -29
  133. package/dist/cbor-encoder.js +0 -81
  134. package/dist/cbor-encoder.js.map +0 -1
  135. package/dist/cbor-tags.d.ts +0 -3
  136. package/dist/cbor-tags.js +0 -4
  137. package/dist/cbor-tags.js.map +0 -1
  138. package/dist/class-type.d.ts +0 -2
  139. package/dist/class-type.js +0 -2
  140. package/dist/class-type.js.map +0 -1
  141. package/dist/date-time-types.d.ts +0 -7
  142. package/dist/date-time-types.js +0 -5
  143. package/dist/date-time-types.js.map +0 -1
  144. package/dist/fetch-event-source.d.ts +0 -52
  145. package/dist/fetch-event-source.js +0 -271
  146. package/dist/fetch-event-source.js.map +0 -1
  147. package/dist/fetch-request-factory.d.ts +0 -26
  148. package/dist/fetch-request-factory.js +0 -125
  149. package/dist/fetch-request-factory.js.map +0 -1
  150. package/dist/fetch.d.ts +0 -1
  151. package/dist/fetch.js +0 -19
  152. package/dist/fetch.js.map +0 -1
  153. package/dist/http-error.d.ts +0 -10
  154. package/dist/http-error.js +0 -45
  155. package/dist/http-error.js.map +0 -1
  156. package/dist/index.d.ts +0 -25
  157. package/dist/index.js +0 -26
  158. package/dist/index.js.map +0 -1
  159. package/dist/json-decoder.d.ts +0 -31
  160. package/dist/json-decoder.js +0 -139
  161. package/dist/json-decoder.js.map +0 -1
  162. package/dist/json-encoder.d.ts +0 -35
  163. package/dist/json-encoder.js +0 -134
  164. package/dist/json-encoder.js.map +0 -1
  165. package/dist/logger.js +0 -2
  166. package/dist/logger.js.map +0 -1
  167. package/dist/media-type-decoder.d.ts +0 -4
  168. package/dist/media-type-decoder.js +0 -2
  169. package/dist/media-type-decoder.js.map +0 -1
  170. package/dist/media-type-decoders.d.ts +0 -17
  171. package/dist/media-type-decoders.js +0 -40
  172. package/dist/media-type-decoders.js.map +0 -1
  173. package/dist/media-type-encoder.d.ts +0 -8
  174. package/dist/media-type-encoder.js +0 -6
  175. package/dist/media-type-encoder.js.map +0 -1
  176. package/dist/media-type-encoders.d.ts +0 -17
  177. package/dist/media-type-encoders.js +0 -42
  178. package/dist/media-type-encoders.js.map +0 -1
  179. package/dist/media-type.d.ts +0 -14
  180. package/dist/media-type.js +0 -18
  181. package/dist/media-type.js.map +0 -1
  182. package/dist/problem.d.ts +0 -16
  183. package/dist/problem.js +0 -11
  184. package/dist/problem.js.map +0 -1
  185. package/dist/request-factory.d.ts +0 -38
  186. package/dist/request-factory.js +0 -2
  187. package/dist/request-factory.js.map +0 -1
  188. package/dist/url-encoder.d.ts +0 -59
  189. package/dist/url-encoder.js +0 -141
  190. package/dist/url-encoder.js.map +0 -1
  191. package/dist/url-template.js +0 -18
  192. package/dist/url-template.js.map +0 -1
  193. package/dist/util/base64.d.ts +0 -5
  194. package/dist/util/base64.js +0 -64
  195. package/dist/util/base64.js.map +0 -1
  196. package/dist/util/hex.d.ts +0 -4
  197. package/dist/util/hex.js +0 -18
  198. package/dist/util/hex.js.map +0 -1
  199. package/dist/util/rxjs.d.ts +0 -2
  200. package/dist/util/rxjs.js +0 -14
  201. package/dist/util/rxjs.js.map +0 -1
  202. package/dist/util/stream-rxjs.d.ts +0 -2
  203. package/dist/util/stream-rxjs.js +0 -26
  204. package/dist/util/stream-rxjs.js.map +0 -1
  205. package/src/any-type.ts +0 -4
  206. package/src/binary-decoder.ts +0 -24
  207. package/src/binary-encoder.ts +0 -19
  208. package/src/cbor-decoder.ts +0 -148
  209. package/src/cbor-encoder.ts +0 -95
  210. package/src/cbor-tags.ts +0 -3
  211. package/src/class-type.ts +0 -3
  212. package/src/date-time-types.ts +0 -10
  213. package/src/fetch-event-source.ts +0 -387
  214. package/src/fetch-request-factory.ts +0 -225
  215. package/src/fetch.ts +0 -30
  216. package/src/http-error.ts +0 -55
  217. package/src/index.ts +0 -26
  218. package/src/json-decoder.ts +0 -164
  219. package/src/json-encoder.ts +0 -162
  220. package/src/logger.ts +0 -8
  221. package/src/media-type-decoder.ts +0 -5
  222. package/src/media-type-decoders.ts +0 -59
  223. package/src/media-type-encoder.ts +0 -16
  224. package/src/media-type-encoders.ts +0 -61
  225. package/src/media-type.ts +0 -25
  226. package/src/problem.ts +0 -25
  227. package/src/request-factory.ts +0 -76
  228. package/src/url-encoder.ts +0 -173
  229. package/src/url-template.ts +0 -21
  230. package/src/util/base64.ts +0 -77
  231. package/src/util/hex.ts +0 -15
  232. package/src/util/rxjs.ts +0 -18
  233. package/src/util/stream-rxjs.ts +0 -28
  234. /package/{dist → build}/url-template.d.ts +0 -0
@@ -1,139 +0,0 @@
1
- import { JsonParser } from '@outfoxx/jackson-js';
2
- import { DateTime } from 'luxon';
3
- import { Base64 } from './util/base64';
4
- export class JSONDecoder {
5
- constructor(numericDateDecoding) {
6
- this.numericDateDecoding = numericDateDecoding;
7
- this.parser = new JsonParser();
8
- this.dateTimeDeserializer = (key, value) => {
9
- if (value == null) {
10
- return value;
11
- }
12
- if (DateTime.isDateTime(value)) {
13
- return value;
14
- }
15
- if (value instanceof Date) {
16
- return DateTime.fromJSDate(value, { zone: 'UTC' });
17
- }
18
- if (typeof value === 'number') {
19
- if (this.numericDateDecoding ===
20
- JSONDecoder.NumericDateDecoding.MILLISECONDS_SINCE_EPOCH) {
21
- return DateTime.fromMillis(value, { zone: 'UTC' });
22
- }
23
- else if (this.numericDateDecoding ===
24
- JSONDecoder.NumericDateDecoding.SECONDS_SINCE_EPOCH) {
25
- return DateTime.fromSeconds(value, { zone: 'UTC' });
26
- }
27
- else {
28
- console.error('Unsupported date decoding format');
29
- }
30
- }
31
- if (typeof value === 'string') {
32
- return DateTime.fromISO(value, { setZone: true });
33
- }
34
- throw new Error(`Invalid date value for property ${key}`);
35
- };
36
- this.dateDeserializer = (key, value) => {
37
- if (value == null) {
38
- return value;
39
- }
40
- if (value instanceof Date) {
41
- return value;
42
- }
43
- if (typeof value === 'number') {
44
- if (this.numericDateDecoding ===
45
- JSONDecoder.NumericDateDecoding.MILLISECONDS_SINCE_EPOCH) {
46
- return new Date(value);
47
- }
48
- else if (this.numericDateDecoding ===
49
- JSONDecoder.NumericDateDecoding.SECONDS_SINCE_EPOCH) {
50
- return new Date(value * 1000);
51
- }
52
- else {
53
- console.error('Unsupported date decoding format');
54
- }
55
- }
56
- if (typeof value === 'string') {
57
- return new Date(value);
58
- }
59
- throw new Error(`Invalid date value for property ${key}`);
60
- };
61
- this.urlDeserializer = (key, value) => {
62
- if (value == null) {
63
- return value;
64
- }
65
- if (value instanceof URL) {
66
- return value;
67
- }
68
- if (typeof value === 'string') {
69
- return new URL(value);
70
- }
71
- throw Error(`Invalid URL value for property ${key}`);
72
- };
73
- this.arrayBufferDeserializer = (key, value) => {
74
- if (value == null) {
75
- return value;
76
- }
77
- if (value instanceof ArrayBuffer) {
78
- return value;
79
- }
80
- if (typeof value === 'string') {
81
- return Base64.decode(value);
82
- }
83
- throw Error(`Invalid ArrayBuffer value for property ${key}`);
84
- };
85
- this.customDeserializers = [
86
- {
87
- type: () => Date,
88
- mapper: this.dateDeserializer,
89
- },
90
- {
91
- type: () => DateTime,
92
- mapper: this.dateTimeDeserializer,
93
- },
94
- {
95
- type: () => URL,
96
- mapper: this.urlDeserializer,
97
- },
98
- {
99
- type: () => ArrayBuffer,
100
- mapper: this.arrayBufferDeserializer,
101
- },
102
- ];
103
- }
104
- static get default() {
105
- return new JSONDecoder(JSONDecoder.NumericDateDecoding.MILLISECONDS_SINCE_EPOCH);
106
- }
107
- async decode(response, type) {
108
- return this.decodeJSON(await response.json(), type);
109
- }
110
- decodeText(text, type) {
111
- return this.parser.parse(text, {
112
- deserializers: this.customDeserializers,
113
- mainCreator: () => type,
114
- });
115
- }
116
- decodeJSON(value, type) {
117
- return this.parser.transform(value, {
118
- deserializers: this.customDeserializers,
119
- mainCreator: () => type,
120
- });
121
- }
122
- }
123
- (function (JSONDecoder) {
124
- /**
125
- * Configures how numeric `Date` & `DateTime` parameters are decoded.
126
- */
127
- let NumericDateDecoding;
128
- (function (NumericDateDecoding) {
129
- /**
130
- * Decode the `Date`/`DateTime` as a UNIX timestamp (floating point seconds since epoch).
131
- */
132
- NumericDateDecoding[NumericDateDecoding["SECONDS_SINCE_EPOCH"] = 0] = "SECONDS_SINCE_EPOCH";
133
- /**
134
- * Decode the `Date`/`DateTime` as UNIX millisecond timestamp (integer milliseconds since epoch).
135
- */
136
- NumericDateDecoding[NumericDateDecoding["MILLISECONDS_SINCE_EPOCH"] = 1] = "MILLISECONDS_SINCE_EPOCH";
137
- })(NumericDateDecoding = JSONDecoder.NumericDateDecoding || (JSONDecoder.NumericDateDecoding = {}));
138
- })(JSONDecoder || (JSONDecoder = {}));
139
- //# sourceMappingURL=json-decoder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"json-decoder.js","sourceRoot":"","sources":["../src/json-decoder.ts"],"names":[],"mappings":"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"}
@@ -1,35 +0,0 @@
1
- import { MediaTypeEncoder } from './media-type-encoder';
2
- import { AnyType } from './any-type';
3
- import 'reflect-metadata';
4
- export declare class JSONEncoder implements MediaTypeEncoder {
5
- readonly dateEncoding: JSONEncoder.DateEncoding;
6
- static get default(): JSONEncoder;
7
- private readonly customSerializers;
8
- private stringifier;
9
- constructor(dateEncoding: JSONEncoder.DateEncoding);
10
- encode<T>(value: T, type?: AnyType, includeNulls?: boolean): string;
11
- encodeJSON<T>(value: T, type?: AnyType, includeNulls?: boolean): unknown;
12
- private dateTimeSerializer;
13
- private dateSerializer;
14
- private urlSerializer;
15
- private arrayBufferSerializer;
16
- }
17
- export declare namespace JSONEncoder {
18
- /**
19
- * Configures how `Date` & `DateTime` parameters are encoded.
20
- */
21
- enum DateEncoding {
22
- /**
23
- * Encode `Date`/`DateTime` values as a UNIX timestamp (floating point seconds since epoch).
24
- */
25
- SECONDS_SINCE_EPOCH = 0,
26
- /**
27
- * Encode `Date`/`DateTime` values as UNIX millisecond timestamp (integer milliseconds since epoch).
28
- */
29
- MILLISECONDS_SINCE_EPOCH = 1,
30
- /**
31
- * Encode `Date`/`DateTime` values as an ISO-8601-formatted string (in RFC 3339 format). This is the default behavior.
32
- */
33
- ISO8601 = 2
34
- }
35
- }
@@ -1,134 +0,0 @@
1
- import { DateTime } from 'luxon';
2
- import { JsonIncludeType, JsonStringifier } from '@outfoxx/jackson-js';
3
- import { Base64 } from './util/base64';
4
- import 'reflect-metadata';
5
- export class JSONEncoder {
6
- constructor(dateEncoding) {
7
- this.dateEncoding = dateEncoding;
8
- this.stringifier = new JsonStringifier();
9
- this.dateTimeSerializer = (key, value) => {
10
- if (value == null) {
11
- return null;
12
- }
13
- switch (this.dateEncoding) {
14
- case JSONEncoder.DateEncoding.ISO8601:
15
- return value.toISO();
16
- case JSONEncoder.DateEncoding.MILLISECONDS_SINCE_EPOCH:
17
- return value.toMillis();
18
- case JSONEncoder.DateEncoding.SECONDS_SINCE_EPOCH:
19
- return value.toSeconds();
20
- }
21
- };
22
- this.dateSerializer = (key, value) => {
23
- if (value == null) {
24
- return null;
25
- }
26
- switch (this.dateEncoding) {
27
- case JSONEncoder.DateEncoding.ISO8601:
28
- return value.toISOString();
29
- case JSONEncoder.DateEncoding.MILLISECONDS_SINCE_EPOCH:
30
- return value.getTime();
31
- case JSONEncoder.DateEncoding.SECONDS_SINCE_EPOCH:
32
- return value.getTime() / 1000;
33
- }
34
- };
35
- this.urlSerializer = (key, value) => {
36
- if (value == null) {
37
- return null;
38
- }
39
- return value.toString();
40
- };
41
- this.arrayBufferSerializer = (key, value) => {
42
- if (value == null) {
43
- return null;
44
- }
45
- return Base64.encode(value);
46
- };
47
- this.customSerializers = [
48
- {
49
- type: () => Date,
50
- mapper: this.dateSerializer,
51
- },
52
- {
53
- type: () => DateTime,
54
- mapper: this.dateTimeSerializer,
55
- },
56
- {
57
- type: () => URL,
58
- mapper: this.urlSerializer,
59
- },
60
- {
61
- type: () => ArrayBuffer,
62
- mapper: this.arrayBufferSerializer,
63
- },
64
- ];
65
- }
66
- static get default() {
67
- return new JSONEncoder(JSONEncoder.DateEncoding.ISO8601);
68
- }
69
- encode(value, type, includeNulls = false) {
70
- var _a;
71
- // Use natural type when subtypes exist
72
- if (Reflect.hasMetadata('jackson:defaultContextGroup:JsonSubTypes', (_a =
73
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
74
- value.constructor) !== null && _a !== void 0 ? _a : {})) {
75
- type = [Object];
76
- }
77
- return this.stringifier.stringify(value, {
78
- serializers: this.customSerializers,
79
- features: {
80
- serialization: {
81
- DEFAULT_PROPERTY_INCLUSION: {
82
- value: includeNulls
83
- ? JsonIncludeType.ALWAYS
84
- : JsonIncludeType.NON_NULL,
85
- },
86
- },
87
- },
88
- mainCreator: () => type !== null && type !== void 0 ? type : [Object],
89
- });
90
- }
91
- encodeJSON(value, type, includeNulls = false) {
92
- var _a;
93
- // Use natural type when subtypes exist
94
- if (Reflect.hasMetadata('jackson:defaultContextGroup:JsonSubTypes', (_a =
95
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
96
- value.constructor) !== null && _a !== void 0 ? _a : {})) {
97
- type = [Object];
98
- }
99
- return this.stringifier.transform(value, {
100
- serializers: this.customSerializers,
101
- features: {
102
- serialization: {
103
- DEFAULT_PROPERTY_INCLUSION: {
104
- value: includeNulls
105
- ? JsonIncludeType.ALWAYS
106
- : JsonIncludeType.NON_NULL,
107
- },
108
- },
109
- },
110
- mainCreator: () => type !== null && type !== void 0 ? type : [Object],
111
- });
112
- }
113
- }
114
- (function (JSONEncoder) {
115
- /**
116
- * Configures how `Date` & `DateTime` parameters are encoded.
117
- */
118
- let DateEncoding;
119
- (function (DateEncoding) {
120
- /**
121
- * Encode `Date`/`DateTime` values as a UNIX timestamp (floating point seconds since epoch).
122
- */
123
- DateEncoding[DateEncoding["SECONDS_SINCE_EPOCH"] = 0] = "SECONDS_SINCE_EPOCH";
124
- /**
125
- * Encode `Date`/`DateTime` values as UNIX millisecond timestamp (integer milliseconds since epoch).
126
- */
127
- DateEncoding[DateEncoding["MILLISECONDS_SINCE_EPOCH"] = 1] = "MILLISECONDS_SINCE_EPOCH";
128
- /**
129
- * Encode `Date`/`DateTime` values as an ISO-8601-formatted string (in RFC 3339 format). This is the default behavior.
130
- */
131
- DateEncoding[DateEncoding["ISO8601"] = 2] = "ISO8601";
132
- })(DateEncoding = JSONEncoder.DateEncoding || (JSONEncoder.DateEncoding = {}));
133
- })(JSONEncoder || (JSONEncoder = {}));
134
- //# sourceMappingURL=json-encoder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"json-encoder.js","sourceRoot":"","sources":["../src/json-encoder.ts"],"names":[],"mappings":"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"}
package/dist/logger.js DELETED
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=logger.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":""}
@@ -1,4 +0,0 @@
1
- import { AnyType } from './any-type';
2
- export interface MediaTypeDecoder {
3
- decode<T>(response: Response, type: AnyType): Promise<T>;
4
- }
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=media-type-decoder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"media-type-decoder.js","sourceRoot":"","sources":["../src/media-type-decoder.ts"],"names":[],"mappings":""}
@@ -1,17 +0,0 @@
1
- import { MediaTypeDecoder } from './media-type-decoder';
2
- export interface MediaTypeDecodersBuilder {
3
- addDefaults(): MediaTypeDecodersBuilder;
4
- add(mediaType: string, decoder: MediaTypeDecoder): MediaTypeDecodersBuilder;
5
- build(): MediaTypeDecoders;
6
- }
7
- export interface MediaTypeDecodersBuilderConstructor {
8
- new (): MediaTypeDecodersBuilder;
9
- }
10
- export declare class MediaTypeDecoders {
11
- private decoders;
12
- static Builder: MediaTypeDecodersBuilderConstructor;
13
- static DEFAULT: MediaTypeDecoders;
14
- constructor(decoders: Map<string, MediaTypeDecoder>);
15
- supports(mediaType: string): boolean;
16
- find(mediaType: string): MediaTypeDecoder;
17
- }
@@ -1,40 +0,0 @@
1
- import { BinaryDecoder } from './binary-decoder';
2
- import { CBORDecoder } from './cbor-decoder';
3
- import { JSONDecoder } from './json-decoder';
4
- import { MediaType } from './media-type';
5
- export class MediaTypeDecoders {
6
- constructor(decoders) {
7
- this.decoders = decoders;
8
- }
9
- supports(mediaType) {
10
- return this.decoders.has(mediaType);
11
- }
12
- find(mediaType) {
13
- const decoder = this.decoders.get(mediaType);
14
- if (!decoder) {
15
- throw Error(`Unsupported media type - ${mediaType}`);
16
- }
17
- return decoder;
18
- }
19
- }
20
- MediaTypeDecoders.Builder = class Builder {
21
- constructor() {
22
- this.decoders = new Map();
23
- }
24
- add(mediaType, decoder) {
25
- this.decoders.set(mediaType, decoder);
26
- return this;
27
- }
28
- addDefaults() {
29
- return this.add(MediaType.JSON, JSONDecoder.default)
30
- .add(MediaType.OCTET_STREAM, new BinaryDecoder())
31
- .add(MediaType.CBOR, CBORDecoder.default);
32
- }
33
- build() {
34
- return new MediaTypeDecoders(this.decoders);
35
- }
36
- };
37
- MediaTypeDecoders.DEFAULT = new MediaTypeDecoders.Builder()
38
- .addDefaults()
39
- .build();
40
- //# sourceMappingURL=media-type-decoders.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"media-type-decoders.js","sourceRoot":"","sources":["../src/media-type-decoders.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAczC,MAAM,OAAO,iBAAiB;IA4B5B,YAAoB,QAAuC;QAAvC,aAAQ,GAAR,QAAQ,CAA+B;IAAG,CAAC;IAE/D,QAAQ,CAAC,SAAiB;QACxB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,CAAC,SAAiB;QACpB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO,EAAE;YACZ,MAAM,KAAK,CAAC,4BAA4B,SAAS,EAAE,CAAC,CAAC;SACtD;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;;AAvCM,yBAAO,GAAwC,MAAM,OAAO;IAAb;QAEpD,aAAQ,GAAG,IAAI,GAAG,EAA4B,CAAC;IAmBjD,CAAC;IAjBC,GAAG,CACD,SAAiB,EACjB,OAAyB;QAEzB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC;aACjD,GAAG,CAAC,SAAS,CAAC,YAAY,EAAE,IAAI,aAAa,EAAE,CAAC;aAChD,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAC9C,CAAC;IAED,KAAK;QACH,OAAO,IAAI,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC9C,CAAC;CACF,CAAC;AAEK,yBAAO,GAAsB,IAAI,iBAAiB,CAAC,OAAO,EAAE;KAChE,WAAW,EAAE;KACb,KAAK,EAAE,CAAC"}
@@ -1,8 +0,0 @@
1
- import { AnyType } from './any-type';
2
- export interface MediaTypeEncoder {
3
- encode<T = unknown>(value: T, type: AnyType | undefined): BodyInit;
4
- }
5
- export interface URLQueryParamsEncoder extends MediaTypeEncoder {
6
- encodeQueryString(value: Record<string, unknown>): string;
7
- }
8
- export declare function isURLQueryParamsEncoder(encoder: MediaTypeEncoder | URLQueryParamsEncoder | undefined): encoder is URLQueryParamsEncoder;
@@ -1,6 +0,0 @@
1
- export function isURLQueryParamsEncoder(encoder) {
2
- var _a;
3
- const rec = encoder;
4
- return (_a = !!rec.encodeQueryString) !== null && _a !== void 0 ? _a : false;
5
- }
6
- //# sourceMappingURL=media-type-encoder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"media-type-encoder.js","sourceRoot":"","sources":["../src/media-type-encoder.ts"],"names":[],"mappings":"AAUA,MAAM,UAAU,uBAAuB,CACrC,OAA6D;;IAE7D,MAAM,GAAG,GAAI,OAA8C,CAAC;IAC5D,aAAO,CAAC,CAAC,GAAG,CAAC,iBAAiB,mCAAI,KAAK,CAAC;AAC1C,CAAC"}
@@ -1,17 +0,0 @@
1
- import { MediaTypeEncoder } from './media-type-encoder';
2
- export interface MediaTypeEncodersBuilder {
3
- addDefaults(): MediaTypeEncodersBuilder;
4
- add(mediaType: string, encoder: MediaTypeEncoder): MediaTypeEncodersBuilder;
5
- build(): MediaTypeEncoders;
6
- }
7
- export interface MediaTypeEncodersBuilderConstructor {
8
- new (): MediaTypeEncodersBuilder;
9
- }
10
- export declare class MediaTypeEncoders {
11
- private encoders;
12
- static Builder: MediaTypeEncodersBuilderConstructor;
13
- static DEFAULT: MediaTypeEncoders;
14
- constructor(encoders: Map<string, MediaTypeEncoder>);
15
- supports(mediaType: string): boolean;
16
- find(mediaType: string): MediaTypeEncoder;
17
- }
@@ -1,42 +0,0 @@
1
- import { BinaryEncoder } from './binary-encoder';
2
- import { CBOREncoder } from './cbor-encoder';
3
- import { JSONEncoder } from './json-encoder';
4
- import { MediaType } from './media-type';
5
- import { URLEncoder } from './url-encoder';
6
- export class MediaTypeEncoders {
7
- constructor(encoders) {
8
- this.encoders = encoders;
9
- }
10
- supports(mediaType) {
11
- return this.encoders.has(mediaType);
12
- }
13
- find(mediaType) {
14
- const encoder = this.encoders.get(mediaType);
15
- if (!encoder) {
16
- throw Error(`Unsupported media type - ${mediaType}`);
17
- }
18
- return encoder;
19
- }
20
- }
21
- MediaTypeEncoders.Builder = class Builder {
22
- constructor() {
23
- this.encoders = new Map();
24
- }
25
- add(mediaType, encoder) {
26
- this.encoders.set(mediaType, encoder);
27
- return this;
28
- }
29
- addDefaults() {
30
- return this.add(MediaType.JSON, JSONEncoder.default)
31
- .add(MediaType.OCTET_STREAM, BinaryEncoder.default)
32
- .add(MediaType.WWW_URL_FORM_ENCODED, URLEncoder.default)
33
- .add(MediaType.CBOR, CBOREncoder.default);
34
- }
35
- build() {
36
- return new MediaTypeEncoders(this.encoders);
37
- }
38
- };
39
- MediaTypeEncoders.DEFAULT = new MediaTypeEncoders.Builder()
40
- .addDefaults()
41
- .build();
42
- //# sourceMappingURL=media-type-encoders.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"media-type-encoders.js","sourceRoot":"","sources":["../src/media-type-encoders.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAa3C,MAAM,OAAO,iBAAiB;IA6B5B,YAAoB,QAAuC;QAAvC,aAAQ,GAAR,QAAQ,CAA+B;IAAG,CAAC;IAE/D,QAAQ,CAAC,SAAiB;QACxB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,CAAC,SAAiB;QACpB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO,EAAE;YACZ,MAAM,KAAK,CAAC,4BAA4B,SAAS,EAAE,CAAC,CAAC;SACtD;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;;AAxCM,yBAAO,GAAwC,MAAM,OAAO;IAAb;QAEpD,aAAQ,GAAG,IAAI,GAAG,EAA4B,CAAC;IAoBjD,CAAC;IAlBC,GAAG,CACD,SAAiB,EACjB,OAAyB;QAEzB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC;aACjD,GAAG,CAAC,SAAS,CAAC,YAAY,EAAE,aAAa,CAAC,OAAO,CAAC;aAClD,GAAG,CAAC,SAAS,CAAC,oBAAoB,EAAE,UAAU,CAAC,OAAO,CAAC;aACvD,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;IAC9C,CAAC;IAED,KAAK;QACH,OAAO,IAAI,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC9C,CAAC;CACF,CAAC;AAEK,yBAAO,GAAsB,IAAI,iBAAiB,CAAC,OAAO,EAAE;KAChE,WAAW,EAAE;KACb,KAAK,EAAE,CAAC"}
@@ -1,14 +0,0 @@
1
- export declare enum MediaType {
2
- TEXT = "text/plain",
3
- HTML = "text/html",
4
- JSON = "application/json",
5
- YAML = "application/yaml",
6
- CBOR = "application/cbor",
7
- OCTET_STREAM = "application/octet-stream",
8
- EVENT_STREAM = "text/event-stream",
9
- X509_CA_CERT = "application/x-x509-ca-cert",
10
- WWW_URL_FORM_ENCODED = "application/x-www-form-urlencoded",
11
- PROBLEM_JSON = "application/problem+json"
12
- }
13
- export declare function mediaType(value: string | null | undefined): string | undefined;
14
- export declare function mediaType(value: string | null | undefined, def: string): string;
@@ -1,18 +0,0 @@
1
- export var MediaType;
2
- (function (MediaType) {
3
- MediaType["TEXT"] = "text/plain";
4
- MediaType["HTML"] = "text/html";
5
- MediaType["JSON"] = "application/json";
6
- MediaType["YAML"] = "application/yaml";
7
- MediaType["CBOR"] = "application/cbor";
8
- MediaType["OCTET_STREAM"] = "application/octet-stream";
9
- MediaType["EVENT_STREAM"] = "text/event-stream";
10
- MediaType["X509_CA_CERT"] = "application/x-x509-ca-cert";
11
- MediaType["WWW_URL_FORM_ENCODED"] = "application/x-www-form-urlencoded";
12
- MediaType["PROBLEM_JSON"] = "application/problem+json";
13
- })(MediaType || (MediaType = {}));
14
- export function mediaType(value, def) {
15
- var _a;
16
- return (_a = value === null || value === void 0 ? void 0 : value.split(';')[0].trim()) !== null && _a !== void 0 ? _a : def;
17
- }
18
- //# sourceMappingURL=media-type.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"media-type.js","sourceRoot":"","sources":["../src/media-type.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,SAWX;AAXD,WAAY,SAAS;IACnB,gCAAmB,CAAA;IACnB,+BAAkB,CAAA;IAClB,sCAAyB,CAAA;IACzB,sCAAyB,CAAA;IACzB,sCAAyB,CAAA;IACzB,sDAAyC,CAAA;IACzC,+CAAkC,CAAA;IAClC,wDAA2C,CAAA;IAC3C,uEAA0D,CAAA;IAC1D,sDAAyC,CAAA;AAC3C,CAAC,EAXW,SAAS,KAAT,SAAS,QAWpB;AAQD,MAAM,UAAU,SAAS,CACvB,KAAgC,EAChC,GAAY;;IAEZ,aAAO,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,IAAI,qCAAM,GAAG,CAAC;AAC5C,CAAC"}
package/dist/problem.d.ts DELETED
@@ -1,16 +0,0 @@
1
- export interface Problem {
2
- type: string;
3
- status: number;
4
- title: string;
5
- detail: string;
6
- instance: string;
7
- [key: string]: unknown;
8
- }
9
- export declare class Problem extends Error implements Problem {
10
- type: string;
11
- status: number;
12
- title: string;
13
- detail: string;
14
- instance: string;
15
- constructor(json: Record<string, unknown>);
16
- }
package/dist/problem.js DELETED
@@ -1,11 +0,0 @@
1
- export class Problem extends Error {
2
- constructor(json) {
3
- super(`${json.status} ${json.type} - ${json.title}`);
4
- this.type = json.type;
5
- this.status = json.status;
6
- this.title = json.title;
7
- this.detail = json.detail;
8
- this.instance = json.instance;
9
- }
10
- }
11
- //# sourceMappingURL=problem.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"problem.js","sourceRoot":"","sources":["../src/problem.ts"],"names":[],"mappings":"AASA,MAAM,OAAO,OAAQ,SAAQ,KAAK;IAOhC,YAAY,IAA6B;QACvC,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QACrD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAc,CAAC;QAChC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAgB,CAAC;QACpC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAe,CAAC;QAClC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAgB,CAAC;QACpC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAkB,CAAC;IAC1C,CAAC;CACF"}
@@ -1,38 +0,0 @@
1
- import { ClassList } from '@outfoxx/jackson-js/dist/@types';
2
- import { Observable } from 'rxjs';
3
- import { AnyType } from './any-type';
4
- import { ClassType } from './class-type';
5
- import { MediaType } from './media-type';
6
- import { URLTemplate } from './url-template';
7
- export interface RequestFactory {
8
- readonly baseUrl: URLTemplate;
9
- request(requestSpec: RequestSpec<unknown>): Observable<Request>;
10
- response(request: Request, dataExpected?: boolean): Observable<Response>;
11
- response<B>(requestSpec: RequestSpec<B>, dataExpected?: boolean): Observable<Response>;
12
- result<B, R>(requestSpec: RequestSpec<B>, resultType: [ClassType<R>]): Observable<R>;
13
- result<B, R>(requestSpec: RequestSpec<B>, resultType: [ClassType<Array<unknown>>, ClassType<R>]): Observable<Array<R>>;
14
- result<B, R>(requestSpec: RequestSpec<B>, resultType: [ClassType<Set<unknown>>, ClassType<R>]): Observable<Set<R>>;
15
- result<B, R>(requestSpec: RequestSpec<B>, resultType: AnyType): Observable<R>;
16
- result<B>(requestSpec: RequestSpec<B>): Observable<void>;
17
- events(requestSpec: RequestSpec<void>): ExtEventSource;
18
- events<E>(requestSpec: RequestSpec<void>, eventTypes: EventTypes<E>): Observable<E>;
19
- }
20
- export interface ExtEventSource extends EventSource {
21
- connect(): void;
22
- }
23
- export declare type RequestMethod = 'GET' | 'PUT' | 'POST' | 'PATCH' | 'DELETE' | 'HEAD' | 'OPTIONS';
24
- export interface RequestSpec<B> {
25
- method: RequestMethod;
26
- pathTemplate: string;
27
- pathParameters?: Record<string, unknown>;
28
- queryParameters?: Record<string, unknown>;
29
- body?: B;
30
- bodyType?: AnyType;
31
- contentTypes?: (MediaType | string)[];
32
- acceptTypes?: (MediaType | string)[];
33
- headers?: HeadersInit;
34
- }
35
- export interface EventTypes<E> {
36
- [key: string]: ClassList<ClassType<E>>;
37
- }
38
- export declare type RequestAdapter = (request: Request) => Observable<Request>;
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=request-factory.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"request-factory.js","sourceRoot":"","sources":["../src/request-factory.ts"],"names":[],"mappings":""}