@utiliread/http 1.17.3 → 1.17.6

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 (143) hide show
  1. package/dist/cjs/event-aggregator.js +30 -0
  2. package/dist/cjs/event-aggregator.js.map +1 -0
  3. package/dist/cjs/events.js +19 -0
  4. package/dist/cjs/events.js.map +1 -0
  5. package/dist/cjs/helpers.js +16 -0
  6. package/dist/cjs/helpers.js.map +1 -0
  7. package/dist/cjs/http-builder.js +192 -0
  8. package/dist/cjs/http-builder.js.map +1 -0
  9. package/dist/cjs/http-error.js +30 -0
  10. package/dist/cjs/http-error.js.map +1 -0
  11. package/dist/cjs/http-response.js +51 -0
  12. package/dist/cjs/http-response.js.map +1 -0
  13. package/dist/cjs/http.js +96 -0
  14. package/dist/cjs/http.js.map +1 -0
  15. package/dist/cjs/http.spec.js +69 -0
  16. package/dist/cjs/http.spec.js.map +1 -0
  17. package/dist/cjs/index.js +38 -0
  18. package/dist/cjs/index.js.map +1 -0
  19. package/dist/cjs/json/index.js +74 -0
  20. package/dist/cjs/json/index.js.map +1 -0
  21. package/dist/cjs/jsonpatch/index.js +15 -0
  22. package/dist/cjs/jsonpatch/index.js.map +1 -0
  23. package/dist/cjs/mapping.js +37 -0
  24. package/dist/cjs/mapping.js.map +1 -0
  25. package/dist/cjs/msgpack/index.js +35 -0
  26. package/dist/cjs/msgpack/index.js.map +1 -0
  27. package/dist/cjs/pagination.js +3 -0
  28. package/dist/cjs/pagination.js.map +1 -0
  29. package/dist/cjs/problem-details.js +3 -0
  30. package/dist/cjs/problem-details.js.map +1 -0
  31. package/dist/cjs/query-string.js +66 -0
  32. package/dist/cjs/query-string.js.map +1 -0
  33. package/dist/cjs/query-string.spec.js +52 -0
  34. package/dist/cjs/query-string.spec.js.map +1 -0
  35. package/dist/cjs/status-codes.js +71 -0
  36. package/dist/cjs/status-codes.js.map +1 -0
  37. package/dist/cjs/timeout-error.js +14 -0
  38. package/dist/cjs/timeout-error.js.map +1 -0
  39. package/dist/esm/event-aggregator.d.ts +11 -0
  40. package/dist/esm/event-aggregator.js +26 -0
  41. package/dist/esm/event-aggregator.js.map +1 -0
  42. package/dist/esm/events.d.ts +11 -0
  43. package/dist/esm/events.js +15 -0
  44. package/dist/esm/events.js.map +1 -0
  45. package/dist/esm/helpers.d.ts +5 -0
  46. package/dist/esm/helpers.js +10 -0
  47. package/dist/esm/helpers.js.map +1 -0
  48. package/dist/esm/http-builder.d.ts +60 -0
  49. package/dist/esm/http-builder.js +187 -0
  50. package/dist/esm/http-builder.js.map +1 -0
  51. package/dist/esm/http-error.d.ts +10 -0
  52. package/dist/esm/http-error.js +26 -0
  53. package/dist/esm/http-error.js.map +1 -0
  54. package/dist/esm/http-response.d.ts +18 -0
  55. package/dist/esm/http-response.js +46 -0
  56. package/dist/esm/http-response.js.map +1 -0
  57. package/dist/esm/http.d.ts +33 -0
  58. package/dist/esm/http.js +92 -0
  59. package/dist/esm/http.js.map +1 -0
  60. package/dist/esm/http.spec.d.ts +1 -0
  61. package/dist/esm/http.spec.js +67 -0
  62. package/dist/esm/http.spec.js.map +1 -0
  63. package/dist/esm/index.d.ts +15 -0
  64. package/dist/esm/index.js +11 -0
  65. package/dist/esm/index.js.map +1 -0
  66. package/dist/esm/json/index.d.ts +15 -0
  67. package/dist/esm/json/index.js +72 -0
  68. package/dist/esm/json/index.js.map +1 -0
  69. package/dist/{jsonpatch.d.ts → esm/jsonpatch/index.d.ts} +9 -10
  70. package/dist/esm/jsonpatch/index.js +13 -0
  71. package/dist/esm/jsonpatch/index.js.map +1 -0
  72. package/dist/esm/mapping.d.ts +9 -0
  73. package/dist/esm/mapping.js +32 -0
  74. package/dist/esm/mapping.js.map +1 -0
  75. package/dist/esm/msgpack/index.d.ts +8 -0
  76. package/dist/esm/msgpack/index.js +33 -0
  77. package/dist/esm/msgpack/index.js.map +1 -0
  78. package/dist/esm/pagination.d.ts +23 -0
  79. package/dist/esm/pagination.js +2 -0
  80. package/dist/esm/pagination.js.map +1 -0
  81. package/dist/esm/problem-details.d.ts +7 -0
  82. package/dist/esm/problem-details.js +2 -0
  83. package/dist/esm/problem-details.js.map +1 -0
  84. package/dist/esm/query-string.d.ts +6 -0
  85. package/dist/esm/query-string.js +62 -0
  86. package/dist/esm/query-string.js.map +1 -0
  87. package/dist/esm/query-string.spec.d.ts +1 -0
  88. package/dist/esm/query-string.spec.js +50 -0
  89. package/dist/esm/query-string.spec.js.map +1 -0
  90. package/dist/esm/status-codes.d.ts +67 -0
  91. package/dist/esm/status-codes.js +68 -0
  92. package/dist/esm/status-codes.js.map +1 -0
  93. package/dist/esm/timeout-error.d.ts +3 -0
  94. package/dist/esm/timeout-error.js +10 -0
  95. package/dist/esm/timeout-error.js.map +1 -0
  96. package/json.d.ts +1 -1
  97. package/jsonpatch.d.ts +1 -1
  98. package/msgpack.d.ts +1 -1
  99. package/package.json +20 -27
  100. package/plugins/json/src/index.ts +17 -19
  101. package/plugins/json/tsconfig.cjs.json +8 -0
  102. package/plugins/json/tsconfig.json +4 -2
  103. package/plugins/jsonpatch/tsconfig.cjs.json +8 -0
  104. package/plugins/jsonpatch/tsconfig.json +4 -2
  105. package/plugins/msgpack/src/index.ts +12 -13
  106. package/plugins/msgpack/tsconfig.cjs.json +8 -0
  107. package/plugins/msgpack/tsconfig.json +4 -2
  108. package/src/index.ts +1 -1
  109. package/src/mapping.d.ts +9 -0
  110. package/src/mapping.js +32 -0
  111. package/src/mapping.js.map +1 -0
  112. package/tsconfig.cjs.json +8 -0
  113. package/tsconfig.json +13 -3
  114. package/dist/index.d.ts +0 -227
  115. package/dist/index.d.ts.map +0 -1
  116. package/dist/index.js +0 -534
  117. package/dist/index.js.map +0 -1
  118. package/dist/index.mjs +0 -507
  119. package/dist/index.mjs.map +0 -1
  120. package/dist/json.d.ts +0 -15
  121. package/dist/json.d.ts.map +0 -1
  122. package/dist/json.js +0 -100
  123. package/dist/json.js.map +0 -1
  124. package/dist/json.mjs +0 -100
  125. package/dist/json.mjs.map +0 -1
  126. package/dist/jsonpatch.d.ts.map +0 -1
  127. package/dist/jsonpatch.js +0 -18
  128. package/dist/jsonpatch.js.map +0 -1
  129. package/dist/jsonpatch.mjs +0 -18
  130. package/dist/jsonpatch.mjs.map +0 -1
  131. package/dist/msgpack.d.ts +0 -9
  132. package/dist/msgpack.d.ts.map +0 -1
  133. package/dist/msgpack.js +0 -62
  134. package/dist/msgpack.js.map +0 -1
  135. package/dist/msgpack.mjs +0 -62
  136. package/dist/msgpack.mjs.map +0 -1
  137. package/plugins/json/package-lock.json +0 -145
  138. package/plugins/json/package.json +0 -11
  139. package/plugins/jsonpatch/package-lock.json +0 -124
  140. package/plugins/jsonpatch/package.json +0 -13
  141. package/plugins/msgpack/package-lock.json +0 -134
  142. package/plugins/msgpack/package.json +0 -12
  143. package/tsconfig.test.json +0 -7
package/dist/json.js DELETED
@@ -1,100 +0,0 @@
1
- var $hjeo4$utilireadhttp = require("@utiliread/http");
2
- var $hjeo4$utilireadjson = require("@utiliread/json");
3
-
4
-
5
-
6
- function $832885d3f99065b6$export$27b49540aaa79f4f(deserialize, typeOrMap) {
7
- if (!typeOrMap) return (x)=>x
8
- ;
9
- if ($832885d3f99065b6$var$isZeroArgumentFunction(typeOrMap)) // It cannot be a factory function if it takes no arguments,
10
- // so it must be a (zero argument) type (constructor)
11
- return (x)=>{
12
- const bound = deserialize(x, typeOrMap);
13
- // The server cannot produce the undefined result
14
- if (bound === undefined) throw Error("The model factory created a undefined result");
15
- return bound;
16
- };
17
- return typeOrMap;
18
- }
19
- function $832885d3f99065b6$export$bf53df0dfe06e237(deserialize, typeOrMap) {
20
- const nullableFactory = $832885d3f99065b6$export$27b49540aaa79f4f(deserialize, typeOrMap);
21
- return (x)=>{
22
- const result = nullableFactory(x);
23
- if (result === null) throw Error("The model factory created a null result");
24
- return result;
25
- };
26
- }
27
- function $832885d3f99065b6$var$isZeroArgumentFunction(typeCtor) {
28
- return typeCtor.length === 0;
29
- }
30
-
31
-
32
- $hjeo4$utilireadhttp.HttpBuilder.prototype.withJson = function(content) {
33
- this.message.content = $hjeo4$utilireadjson.serialize(content);
34
- this.message.contentType = "application/json";
35
- return this;
36
- };
37
- $hjeo4$utilireadhttp.HttpBuilderOfT.prototype.withJson = function(content) {
38
- this.message.content = $hjeo4$utilireadjson.serialize(content);
39
- this.message.contentType = "application/json";
40
- return this;
41
- };
42
- $hjeo4$utilireadhttp.HttpBuilder.prototype.expectJson = function(typeOrMapper) {
43
- this.message.headers.set("Accept", "application/json");
44
- return this.useHandler((response)=>{
45
- return response.rawResponse.json().then((x)=>$832885d3f99065b6$export$bf53df0dfe06e237($hjeo4$utilireadjson.deserialize, typeOrMapper)(x)
46
- );
47
- });
48
- };
49
- $hjeo4$utilireadhttp.HttpBuilder.prototype.expectJsonArray = function(typeOrMapper) {
50
- this.message.headers.set("Accept", "application/json");
51
- return this.useHandler((response)=>{
52
- return response.rawResponse.json().then((x)=>{
53
- const itemFactory = $832885d3f99065b6$export$bf53df0dfe06e237($hjeo4$utilireadjson.deserialize, typeOrMapper);
54
- return x.map(itemFactory);
55
- });
56
- });
57
- };
58
- $hjeo4$utilireadhttp.HttpBuilder.prototype.expectJsonNullableArray = function(typeOrMapper) {
59
- this.message.headers.set("Accept", "application/json");
60
- return this.useHandler((response)=>{
61
- return response.rawResponse.json().then((x)=>{
62
- const itemFactory = $832885d3f99065b6$export$27b49540aaa79f4f($hjeo4$utilireadjson.deserialize, typeOrMapper);
63
- return x.map(itemFactory);
64
- });
65
- });
66
- };
67
- $hjeo4$utilireadhttp.HttpBuilder.prototype.expectJsonPaginationResult = function(typeOrMapper) {
68
- this.message.headers.set("Accept", "application/json");
69
- return this.useHandler((response)=>{
70
- return response.rawResponse.json().then((x)=>{
71
- const itemFactory = $832885d3f99065b6$export$bf53df0dfe06e237($hjeo4$utilireadjson.deserialize, typeOrMapper);
72
- return {
73
- meta: {
74
- pageCount: x.meta.pageCount,
75
- pageSize: x.meta.pageSize,
76
- totalItems: x.meta.totalItems
77
- },
78
- data: x.data.map(itemFactory)
79
- };
80
- });
81
- });
82
- };
83
- $hjeo4$utilireadhttp.HttpBuilder.prototype.expectJsonInfinitePaginationResult = function(typeOrMapper) {
84
- this.message.headers.set("Accept", "application/json");
85
- return this.useHandler((response)=>{
86
- return response.rawResponse.json().then((x)=>{
87
- const itemFactory = $832885d3f99065b6$export$bf53df0dfe06e237($hjeo4$utilireadjson.deserialize, typeOrMapper);
88
- return {
89
- meta: {
90
- pageSize: x.meta.pageSize,
91
- continuationToken: x.meta.continuationToken
92
- },
93
- data: x.data.map(itemFactory)
94
- };
95
- });
96
- });
97
- };
98
-
99
-
100
- //# sourceMappingURL=json.js.map
package/dist/json.js.map DELETED
@@ -1 +0,0 @@
1
- {"mappings":"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","sources":["plugins/json/src/index.ts","src/mapping.ts"],"sourcesContent":["import { HttpBuilder, HttpBuilderOfT } from \"@utiliread/http\";\r\nimport type {\r\n InfinitePaginationResult,\r\n PaginationResult,\r\n} from \"../../../src/pagination\";\r\nimport { deserialize, serialize } from \"@utiliread/json\";\r\nimport type { TypeOrMapper } from \"../../../src/mapping\";\r\nimport { getMapper, getNullableMapper } from \"../../../src/mapping\";\r\n\r\n// https://www.typescriptlang.org/docs/handbook/declaration-merging.html#module-augmentation\r\ndeclare module \"@utiliread/http\" {\r\n interface HttpBuilder {\r\n withJson(content: any): this;\r\n\r\n expectJson<T>(typeOrMapper?: TypeOrMapper<T>): HttpBuilderOfT<T>;\r\n expectJsonArray<T>(typeOrMapper: TypeOrMapper<T>): HttpBuilderOfT<T[]>;\r\n expectJsonNullableArray<T>(\r\n typeOrMapper: TypeOrMapper<T>\r\n ): HttpBuilderOfT<(T | null)[]>;\r\n expectJsonPaginationResult<T>(\r\n typeOrMapper: TypeOrMapper<T>\r\n ): HttpBuilderOfT<PaginationResult<T>>;\r\n expectJsonInfinitePaginationResult<T>(\r\n typeOrMapper: TypeOrMapper<T>\r\n ): HttpBuilderOfT<InfinitePaginationResult<T>>;\r\n }\r\n interface HttpBuilderOfT<T> {\r\n withJson(content: any): this;\r\n }\r\n}\r\n\r\nHttpBuilder.prototype.withJson = function (this: HttpBuilder, content: any) {\r\n this.message.content = serialize(content);\r\n this.message.contentType = \"application/json\";\r\n return this;\r\n};\r\n\r\nHttpBuilderOfT.prototype.withJson = function <T>(\r\n this: HttpBuilderOfT<T>,\r\n content: any\r\n) {\r\n this.message.content = serialize(content);\r\n this.message.contentType = \"application/json\";\r\n return this;\r\n};\r\n\r\nHttpBuilder.prototype.expectJson = function <T>(\r\n this: HttpBuilder,\r\n typeOrMapper?: TypeOrMapper<T>\r\n) {\r\n this.message.headers.set(\"Accept\", \"application/json\");\r\n return this.useHandler((response) => {\r\n return response.rawResponse\r\n .json()\r\n .then((x) => getMapper(deserialize, typeOrMapper)(x));\r\n });\r\n};\r\n\r\nHttpBuilder.prototype.expectJsonArray = function <T>(\r\n this: HttpBuilder,\r\n typeOrMapper: TypeOrMapper<T>\r\n) {\r\n this.message.headers.set(\"Accept\", \"application/json\");\r\n return this.useHandler((response) => {\r\n return response.rawResponse.json().then((x: any[]) => {\r\n const itemFactory = getMapper(deserialize, typeOrMapper);\r\n return x.map(itemFactory);\r\n });\r\n });\r\n};\r\n\r\nHttpBuilder.prototype.expectJsonNullableArray = function <T>(\r\n this: HttpBuilder,\r\n typeOrMapper: TypeOrMapper<T>\r\n): HttpBuilderOfT<(T | null)[]> {\r\n this.message.headers.set(\"Accept\", \"application/json\");\r\n return this.useHandler((response) => {\r\n return response.rawResponse.json().then((x: any[]) => {\r\n const itemFactory = getNullableMapper(deserialize, typeOrMapper);\r\n return x.map(itemFactory);\r\n });\r\n });\r\n};\r\n\r\nHttpBuilder.prototype.expectJsonPaginationResult = function <T>(\r\n this: HttpBuilder,\r\n typeOrMapper: TypeOrMapper<T>\r\n) {\r\n this.message.headers.set(\"Accept\", \"application/json\");\r\n return this.useHandler((response) => {\r\n return response.rawResponse.json().then((x: PaginationResult<any>) => {\r\n const itemFactory = getMapper(deserialize, typeOrMapper);\r\n return {\r\n meta: {\r\n pageCount: x.meta.pageCount,\r\n pageSize: x.meta.pageSize,\r\n totalItems: x.meta.totalItems,\r\n },\r\n data: x.data.map(itemFactory),\r\n };\r\n });\r\n });\r\n};\r\n\r\nHttpBuilder.prototype.expectJsonInfinitePaginationResult = function <T>(\r\n this: HttpBuilder,\r\n typeOrMapper: TypeOrMapper<T>\r\n) {\r\n this.message.headers.set(\"Accept\", \"application/json\");\r\n return this.useHandler((response) => {\r\n return response.rawResponse\r\n .json()\r\n .then((x: InfinitePaginationResult<any>) => {\r\n const itemFactory = getMapper(deserialize, typeOrMapper);\r\n return {\r\n meta: {\r\n pageSize: x.meta.pageSize,\r\n continuationToken: x.meta.continuationToken,\r\n },\r\n data: x.data.map(itemFactory),\r\n };\r\n });\r\n });\r\n};\r\n","type DeserializeFn<T> = (source: any, type: Type<T>) => T | null | undefined;\nexport type Type<T> = { new(): T };\nexport type Mapper<T> = ((source: any) => T);\nexport type TypeOrMapper<T> = Type<T> | Mapper<T>;\n\nexport function getNullableMapper<T>(deserialize: DeserializeFn<T>, typeOrMap: Type<T> | Mapper<T> | undefined): Mapper<T | null> {\n if (!typeOrMap) {\n return (x: any) => <T>x;\n }\n\n if (isZeroArgumentFunction(typeOrMap)) {\n // It cannot be a factory function if it takes no arguments,\n // so it must be a (zero argument) type (constructor)\n return (x: any) => {\n const bound = deserialize(x, typeOrMap);\n\n // The server cannot produce the undefined result\n if (bound === undefined) {\n throw Error(\"The model factory created a undefined result\");\n }\n\n return bound;\n }\n }\n\n return typeOrMap;\n}\n\nexport function getMapper<T>(deserialize: DeserializeFn<T>, typeOrMap: Type<T> | Mapper<T> | undefined): Mapper<T> {\n const nullableFactory = getNullableMapper(deserialize, typeOrMap);\n return (x: any) => {\n const result = nullableFactory(x);\n\n if (result === null) {\n throw Error(\"The model factory created a null result\");\n }\n\n return result;\n };\n}\n\nfunction isZeroArgumentFunction<T>(typeCtor: Function): typeCtor is { new(): T } {\n return typeCtor.length === 0;\n}"],"names":[],"version":3,"file":"json.js.map"}
package/dist/json.mjs DELETED
@@ -1,100 +0,0 @@
1
- import {HttpBuilder as $017Lt$HttpBuilder, HttpBuilderOfT as $017Lt$HttpBuilderOfT} from "@utiliread/http";
2
- import {serialize as $017Lt$serialize, deserialize as $017Lt$deserialize} from "@utiliread/json";
3
-
4
-
5
-
6
- function $526ffc2cb67c58ff$export$27b49540aaa79f4f(deserialize, typeOrMap) {
7
- if (!typeOrMap) return (x)=>x
8
- ;
9
- if ($526ffc2cb67c58ff$var$isZeroArgumentFunction(typeOrMap)) // It cannot be a factory function if it takes no arguments,
10
- // so it must be a (zero argument) type (constructor)
11
- return (x)=>{
12
- const bound = deserialize(x, typeOrMap);
13
- // The server cannot produce the undefined result
14
- if (bound === undefined) throw Error("The model factory created a undefined result");
15
- return bound;
16
- };
17
- return typeOrMap;
18
- }
19
- function $526ffc2cb67c58ff$export$bf53df0dfe06e237(deserialize, typeOrMap) {
20
- const nullableFactory = $526ffc2cb67c58ff$export$27b49540aaa79f4f(deserialize, typeOrMap);
21
- return (x)=>{
22
- const result = nullableFactory(x);
23
- if (result === null) throw Error("The model factory created a null result");
24
- return result;
25
- };
26
- }
27
- function $526ffc2cb67c58ff$var$isZeroArgumentFunction(typeCtor) {
28
- return typeCtor.length === 0;
29
- }
30
-
31
-
32
- $017Lt$HttpBuilder.prototype.withJson = function(content) {
33
- this.message.content = $017Lt$serialize(content);
34
- this.message.contentType = "application/json";
35
- return this;
36
- };
37
- $017Lt$HttpBuilderOfT.prototype.withJson = function(content) {
38
- this.message.content = $017Lt$serialize(content);
39
- this.message.contentType = "application/json";
40
- return this;
41
- };
42
- $017Lt$HttpBuilder.prototype.expectJson = function(typeOrMapper) {
43
- this.message.headers.set("Accept", "application/json");
44
- return this.useHandler((response)=>{
45
- return response.rawResponse.json().then((x)=>$526ffc2cb67c58ff$export$bf53df0dfe06e237($017Lt$deserialize, typeOrMapper)(x)
46
- );
47
- });
48
- };
49
- $017Lt$HttpBuilder.prototype.expectJsonArray = function(typeOrMapper) {
50
- this.message.headers.set("Accept", "application/json");
51
- return this.useHandler((response)=>{
52
- return response.rawResponse.json().then((x)=>{
53
- const itemFactory = $526ffc2cb67c58ff$export$bf53df0dfe06e237($017Lt$deserialize, typeOrMapper);
54
- return x.map(itemFactory);
55
- });
56
- });
57
- };
58
- $017Lt$HttpBuilder.prototype.expectJsonNullableArray = function(typeOrMapper) {
59
- this.message.headers.set("Accept", "application/json");
60
- return this.useHandler((response)=>{
61
- return response.rawResponse.json().then((x)=>{
62
- const itemFactory = $526ffc2cb67c58ff$export$27b49540aaa79f4f($017Lt$deserialize, typeOrMapper);
63
- return x.map(itemFactory);
64
- });
65
- });
66
- };
67
- $017Lt$HttpBuilder.prototype.expectJsonPaginationResult = function(typeOrMapper) {
68
- this.message.headers.set("Accept", "application/json");
69
- return this.useHandler((response)=>{
70
- return response.rawResponse.json().then((x)=>{
71
- const itemFactory = $526ffc2cb67c58ff$export$bf53df0dfe06e237($017Lt$deserialize, typeOrMapper);
72
- return {
73
- meta: {
74
- pageCount: x.meta.pageCount,
75
- pageSize: x.meta.pageSize,
76
- totalItems: x.meta.totalItems
77
- },
78
- data: x.data.map(itemFactory)
79
- };
80
- });
81
- });
82
- };
83
- $017Lt$HttpBuilder.prototype.expectJsonInfinitePaginationResult = function(typeOrMapper) {
84
- this.message.headers.set("Accept", "application/json");
85
- return this.useHandler((response)=>{
86
- return response.rawResponse.json().then((x)=>{
87
- const itemFactory = $526ffc2cb67c58ff$export$bf53df0dfe06e237($017Lt$deserialize, typeOrMapper);
88
- return {
89
- meta: {
90
- pageSize: x.meta.pageSize,
91
- continuationToken: x.meta.continuationToken
92
- },
93
- data: x.data.map(itemFactory)
94
- };
95
- });
96
- });
97
- };
98
-
99
-
100
- //# sourceMappingURL=json.mjs.map
package/dist/json.mjs.map DELETED
@@ -1 +0,0 @@
1
- {"mappings":"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","sources":["plugins/json/src/index.ts","src/mapping.ts"],"sourcesContent":["import { HttpBuilder, HttpBuilderOfT } from \"@utiliread/http\";\r\nimport type {\r\n InfinitePaginationResult,\r\n PaginationResult,\r\n} from \"../../../src/pagination\";\r\nimport { deserialize, serialize } from \"@utiliread/json\";\r\nimport type { TypeOrMapper } from \"../../../src/mapping\";\r\nimport { getMapper, getNullableMapper } from \"../../../src/mapping\";\r\n\r\n// https://www.typescriptlang.org/docs/handbook/declaration-merging.html#module-augmentation\r\ndeclare module \"@utiliread/http\" {\r\n interface HttpBuilder {\r\n withJson(content: any): this;\r\n\r\n expectJson<T>(typeOrMapper?: TypeOrMapper<T>): HttpBuilderOfT<T>;\r\n expectJsonArray<T>(typeOrMapper: TypeOrMapper<T>): HttpBuilderOfT<T[]>;\r\n expectJsonNullableArray<T>(\r\n typeOrMapper: TypeOrMapper<T>\r\n ): HttpBuilderOfT<(T | null)[]>;\r\n expectJsonPaginationResult<T>(\r\n typeOrMapper: TypeOrMapper<T>\r\n ): HttpBuilderOfT<PaginationResult<T>>;\r\n expectJsonInfinitePaginationResult<T>(\r\n typeOrMapper: TypeOrMapper<T>\r\n ): HttpBuilderOfT<InfinitePaginationResult<T>>;\r\n }\r\n interface HttpBuilderOfT<T> {\r\n withJson(content: any): this;\r\n }\r\n}\r\n\r\nHttpBuilder.prototype.withJson = function (this: HttpBuilder, content: any) {\r\n this.message.content = serialize(content);\r\n this.message.contentType = \"application/json\";\r\n return this;\r\n};\r\n\r\nHttpBuilderOfT.prototype.withJson = function <T>(\r\n this: HttpBuilderOfT<T>,\r\n content: any\r\n) {\r\n this.message.content = serialize(content);\r\n this.message.contentType = \"application/json\";\r\n return this;\r\n};\r\n\r\nHttpBuilder.prototype.expectJson = function <T>(\r\n this: HttpBuilder,\r\n typeOrMapper?: TypeOrMapper<T>\r\n) {\r\n this.message.headers.set(\"Accept\", \"application/json\");\r\n return this.useHandler((response) => {\r\n return response.rawResponse\r\n .json()\r\n .then((x) => getMapper(deserialize, typeOrMapper)(x));\r\n });\r\n};\r\n\r\nHttpBuilder.prototype.expectJsonArray = function <T>(\r\n this: HttpBuilder,\r\n typeOrMapper: TypeOrMapper<T>\r\n) {\r\n this.message.headers.set(\"Accept\", \"application/json\");\r\n return this.useHandler((response) => {\r\n return response.rawResponse.json().then((x: any[]) => {\r\n const itemFactory = getMapper(deserialize, typeOrMapper);\r\n return x.map(itemFactory);\r\n });\r\n });\r\n};\r\n\r\nHttpBuilder.prototype.expectJsonNullableArray = function <T>(\r\n this: HttpBuilder,\r\n typeOrMapper: TypeOrMapper<T>\r\n): HttpBuilderOfT<(T | null)[]> {\r\n this.message.headers.set(\"Accept\", \"application/json\");\r\n return this.useHandler((response) => {\r\n return response.rawResponse.json().then((x: any[]) => {\r\n const itemFactory = getNullableMapper(deserialize, typeOrMapper);\r\n return x.map(itemFactory);\r\n });\r\n });\r\n};\r\n\r\nHttpBuilder.prototype.expectJsonPaginationResult = function <T>(\r\n this: HttpBuilder,\r\n typeOrMapper: TypeOrMapper<T>\r\n) {\r\n this.message.headers.set(\"Accept\", \"application/json\");\r\n return this.useHandler((response) => {\r\n return response.rawResponse.json().then((x: PaginationResult<any>) => {\r\n const itemFactory = getMapper(deserialize, typeOrMapper);\r\n return {\r\n meta: {\r\n pageCount: x.meta.pageCount,\r\n pageSize: x.meta.pageSize,\r\n totalItems: x.meta.totalItems,\r\n },\r\n data: x.data.map(itemFactory),\r\n };\r\n });\r\n });\r\n};\r\n\r\nHttpBuilder.prototype.expectJsonInfinitePaginationResult = function <T>(\r\n this: HttpBuilder,\r\n typeOrMapper: TypeOrMapper<T>\r\n) {\r\n this.message.headers.set(\"Accept\", \"application/json\");\r\n return this.useHandler((response) => {\r\n return response.rawResponse\r\n .json()\r\n .then((x: InfinitePaginationResult<any>) => {\r\n const itemFactory = getMapper(deserialize, typeOrMapper);\r\n return {\r\n meta: {\r\n pageSize: x.meta.pageSize,\r\n continuationToken: x.meta.continuationToken,\r\n },\r\n data: x.data.map(itemFactory),\r\n };\r\n });\r\n });\r\n};\r\n","type DeserializeFn<T> = (source: any, type: Type<T>) => T | null | undefined;\nexport type Type<T> = { new(): T };\nexport type Mapper<T> = ((source: any) => T);\nexport type TypeOrMapper<T> = Type<T> | Mapper<T>;\n\nexport function getNullableMapper<T>(deserialize: DeserializeFn<T>, typeOrMap: Type<T> | Mapper<T> | undefined): Mapper<T | null> {\n if (!typeOrMap) {\n return (x: any) => <T>x;\n }\n\n if (isZeroArgumentFunction(typeOrMap)) {\n // It cannot be a factory function if it takes no arguments,\n // so it must be a (zero argument) type (constructor)\n return (x: any) => {\n const bound = deserialize(x, typeOrMap);\n\n // The server cannot produce the undefined result\n if (bound === undefined) {\n throw Error(\"The model factory created a undefined result\");\n }\n\n return bound;\n }\n }\n\n return typeOrMap;\n}\n\nexport function getMapper<T>(deserialize: DeserializeFn<T>, typeOrMap: Type<T> | Mapper<T> | undefined): Mapper<T> {\n const nullableFactory = getNullableMapper(deserialize, typeOrMap);\n return (x: any) => {\n const result = nullableFactory(x);\n\n if (result === null) {\n throw Error(\"The model factory created a null result\");\n }\n\n return result;\n };\n}\n\nfunction isZeroArgumentFunction<T>(typeCtor: Function): typeCtor is { new(): T } {\n return typeCtor.length === 0;\n}"],"names":[],"version":3,"file":"json.mjs.map"}
@@ -1 +0,0 @@
1
- {"mappings":"AAKA,OAAe,iBAAiB,CAAC;IAC/B,UAAU,WAAW;QACnB,aAAa,CAAC,UAAU,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;KAC9C;IACD,UAAU,cAAc,CAAC,CAAC;QACxB,aAAa,CAAC,UAAU,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;KAC9C;CACF","sources":["plugins/jsonpatch/src/plugins/jsonpatch/src/index.ts","plugins/jsonpatch/src/index.ts"],"sourcesContent":[null,"import { HttpBuilder, HttpBuilderOfT } from \"@utiliread/http\";\r\nimport { serialize } from \"@utiliread/json\";\r\nimport type { Operation } from \"@utiliread/jsonpatch\";\r\n\r\n// https://www.typescriptlang.org/docs/handbook/declaration-merging.html#module-augmentation\r\ndeclare module \"@utiliread/http\" {\r\n interface HttpBuilder {\r\n withJsonPatch(operations: Operation[]): this;\r\n }\r\n interface HttpBuilderOfT<T> {\r\n withJsonPatch(operations: Operation[]): this;\r\n }\r\n}\r\n\r\nHttpBuilder.prototype.withJsonPatch = function (\r\n this: HttpBuilder,\r\n operations: Operation[]\r\n) {\r\n this.message.content = serialize(operations);\r\n this.message.contentType = \"application/json-patch+json\";\r\n return this;\r\n};\r\n\r\nHttpBuilderOfT.prototype.withJsonPatch = function <T>(\r\n this: HttpBuilderOfT<T>,\r\n operations: Operation[]\r\n) {\r\n this.message.content = serialize(operations);\r\n this.message.contentType = \"application/json-patch+json\";\r\n return this;\r\n};\r\n"],"names":[],"version":3,"file":"jsonpatch.d.ts.map"}
package/dist/jsonpatch.js DELETED
@@ -1,18 +0,0 @@
1
- var $lxUpO$utilireadhttp = require("@utiliread/http");
2
- var $lxUpO$utilireadjson = require("@utiliread/json");
3
-
4
-
5
-
6
- $lxUpO$utilireadhttp.HttpBuilder.prototype.withJsonPatch = function(operations) {
7
- this.message.content = $lxUpO$utilireadjson.serialize(operations);
8
- this.message.contentType = "application/json-patch+json";
9
- return this;
10
- };
11
- $lxUpO$utilireadhttp.HttpBuilderOfT.prototype.withJsonPatch = function(operations) {
12
- this.message.content = $lxUpO$utilireadjson.serialize(operations);
13
- this.message.contentType = "application/json-patch+json";
14
- return this;
15
- };
16
-
17
-
18
- //# sourceMappingURL=jsonpatch.js.map
@@ -1 +0,0 @@
1
- {"mappings":";;;AAAA;;AAcA,gCAAW,CAAC,SAAS,CAAC,aAAa,GAAG,SAEpC,UAAuB,EACvB;IACA,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,8BAAS,CAAC,UAAU,CAAC,CAAC;IAC7C,IAAI,CAAC,OAAO,CAAC,WAAW,GAAG,6BAA6B,CAAC;IACzD,OAAO,IAAI,CAAC;CACb,CAAC;AAEF,mCAAc,CAAC,SAAS,CAAC,aAAa,GAAG,SAEvC,UAAuB,EACvB;IACA,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,8BAAS,CAAC,UAAU,CAAC,CAAC;IAC7C,IAAI,CAAC,OAAO,CAAC,WAAW,GAAG,6BAA6B,CAAC;IACzD,OAAO,IAAI,CAAC;CACb,CAAC","sources":["plugins/jsonpatch/src/index.ts"],"sourcesContent":["import { HttpBuilder, HttpBuilderOfT } from \"@utiliread/http\";\r\nimport { serialize } from \"@utiliread/json\";\r\nimport type { Operation } from \"@utiliread/jsonpatch\";\r\n\r\n// https://www.typescriptlang.org/docs/handbook/declaration-merging.html#module-augmentation\r\ndeclare module \"@utiliread/http\" {\r\n interface HttpBuilder {\r\n withJsonPatch(operations: Operation[]): this;\r\n }\r\n interface HttpBuilderOfT<T> {\r\n withJsonPatch(operations: Operation[]): this;\r\n }\r\n}\r\n\r\nHttpBuilder.prototype.withJsonPatch = function (\r\n this: HttpBuilder,\r\n operations: Operation[]\r\n) {\r\n this.message.content = serialize(operations);\r\n this.message.contentType = \"application/json-patch+json\";\r\n return this;\r\n};\r\n\r\nHttpBuilderOfT.prototype.withJsonPatch = function <T>(\r\n this: HttpBuilderOfT<T>,\r\n operations: Operation[]\r\n) {\r\n this.message.content = serialize(operations);\r\n this.message.contentType = \"application/json-patch+json\";\r\n return this;\r\n};\r\n"],"names":[],"version":3,"file":"jsonpatch.js.map"}
@@ -1,18 +0,0 @@
1
- import {HttpBuilder as $8CiR8$HttpBuilder, HttpBuilderOfT as $8CiR8$HttpBuilderOfT} from "@utiliread/http";
2
- import {serialize as $8CiR8$serialize} from "@utiliread/json";
3
-
4
-
5
-
6
- $8CiR8$HttpBuilder.prototype.withJsonPatch = function(operations) {
7
- this.message.content = $8CiR8$serialize(operations);
8
- this.message.contentType = "application/json-patch+json";
9
- return this;
10
- };
11
- $8CiR8$HttpBuilderOfT.prototype.withJsonPatch = function(operations) {
12
- this.message.content = $8CiR8$serialize(operations);
13
- this.message.contentType = "application/json-patch+json";
14
- return this;
15
- };
16
-
17
-
18
- //# sourceMappingURL=jsonpatch.mjs.map
@@ -1 +0,0 @@
1
- {"mappings":";;;AAAA;;AAcA,kBAAW,CAAC,SAAS,CAAC,aAAa,GAAG,SAEpC,UAAuB,EACvB;IACA,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,gBAAS,CAAC,UAAU,CAAC,CAAC;IAC7C,IAAI,CAAC,OAAO,CAAC,WAAW,GAAG,6BAA6B,CAAC;IACzD,OAAO,IAAI,CAAC;CACb,CAAC;AAEF,qBAAc,CAAC,SAAS,CAAC,aAAa,GAAG,SAEvC,UAAuB,EACvB;IACA,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,gBAAS,CAAC,UAAU,CAAC,CAAC;IAC7C,IAAI,CAAC,OAAO,CAAC,WAAW,GAAG,6BAA6B,CAAC;IACzD,OAAO,IAAI,CAAC;CACb,CAAC","sources":["plugins/jsonpatch/src/index.ts"],"sourcesContent":["import { HttpBuilder, HttpBuilderOfT } from \"@utiliread/http\";\r\nimport { serialize } from \"@utiliread/json\";\r\nimport type { Operation } from \"@utiliread/jsonpatch\";\r\n\r\n// https://www.typescriptlang.org/docs/handbook/declaration-merging.html#module-augmentation\r\ndeclare module \"@utiliread/http\" {\r\n interface HttpBuilder {\r\n withJsonPatch(operations: Operation[]): this;\r\n }\r\n interface HttpBuilderOfT<T> {\r\n withJsonPatch(operations: Operation[]): this;\r\n }\r\n}\r\n\r\nHttpBuilder.prototype.withJsonPatch = function (\r\n this: HttpBuilder,\r\n operations: Operation[]\r\n) {\r\n this.message.content = serialize(operations);\r\n this.message.contentType = \"application/json-patch+json\";\r\n return this;\r\n};\r\n\r\nHttpBuilderOfT.prototype.withJsonPatch = function <T>(\r\n this: HttpBuilderOfT<T>,\r\n operations: Operation[]\r\n) {\r\n this.message.content = serialize(operations);\r\n this.message.contentType = \"application/json-patch+json\";\r\n return this;\r\n};\r\n"],"names":[],"version":3,"file":"jsonpatch.mjs.map"}
package/dist/msgpack.d.ts DELETED
@@ -1,9 +0,0 @@
1
- module "@utiliread/http" {
2
- interface HttpBuilder {
3
- expectMessagePack<T>(typeOrMapper?: TypeOrMapper<T>): HttpBuilderOfT<T>;
4
- expectMessagePackArray<T>(typeOrMapper?: TypeOrMapper<T>): HttpBuilderOfT<T[]>;
5
- streamMessagePackArray<T>(typeOrMapper?: TypeOrMapper<T>): HttpBuilderOfT<AsyncGenerator<T, void, unknown>>;
6
- }
7
- }
8
-
9
- //# sourceMappingURL=msgpack.d.ts.map
@@ -1 +0,0 @@
1
- {"mappings":"ACOA,OAAe,iBAAiB,CAAC;IAC/B,UAAU,WAAW;QACnB,iBAAiB,CAAC,CAAC,EAAE,YAAY,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;QACxE,sBAAsB,CAAC,CAAC,EACtB,YAAY,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,GAC7B,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC;QACvB,sBAAsB,CAAC,CAAC,EACtB,YAAY,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,GAC7B,cAAc,CAAC,cAAc,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;KACrD;CACF","sources":["plugins/msgpack/src/src/mapping.ts","plugins/msgpack/src/plugins/msgpack/src/index.ts","plugins/msgpack/src/index.ts"],"sourcesContent":[null,null,"import { deserialize } from \"@utiliread/msgpack\";\r\nimport { HttpBuilder, HttpBuilderOfT, HttpResponse } from \"@utiliread/http\";\r\nimport { decodeArrayStream, decodeAsync } from \"@msgpack/msgpack\";\r\nimport type { TypeOrMapper } from \"../../../src/mapping\";\r\nimport { getMapper } from \"../../../src/mapping\";\r\n\r\n// https://www.typescriptlang.org/docs/handbook/declaration-merging.html#module-augmentation\r\ndeclare module \"@utiliread/http\" {\r\n interface HttpBuilder {\r\n expectMessagePack<T>(typeOrMapper?: TypeOrMapper<T>): HttpBuilderOfT<T>;\r\n expectMessagePackArray<T>(\r\n typeOrMapper?: TypeOrMapper<T>\r\n ): HttpBuilderOfT<T[]>;\r\n streamMessagePackArray<T>(\r\n typeOrMapper?: TypeOrMapper<T>\r\n ): HttpBuilderOfT<AsyncGenerator<T, void, unknown>>;\r\n }\r\n}\r\n\r\nHttpBuilder.prototype.expectMessagePack = function <T>(\r\n this: HttpBuilder,\r\n typeOrMapper?: TypeOrMapper<T>\r\n) {\r\n this.message.headers.set(\"Accept\", \"application/x-msgpack\");\r\n return this.useHandler(async (response) => {\r\n const itemFactory = getMapper(deserialize, typeOrMapper);\r\n const decoded = await decodeAsync(response.rawResponse.body!);\r\n return itemFactory(decoded);\r\n });\r\n};\r\n\r\nHttpBuilder.prototype.expectMessagePackArray = function <T>(\r\n this: HttpBuilder,\r\n typeOrMapper?: TypeOrMapper<T>\r\n) {\r\n this.message.headers.set(\"Accept\", \"application/x-msgpack\");\r\n return this.useHandler(async (response) => {\r\n const items: T[] = [];\r\n const itemFactory = getMapper(deserialize, typeOrMapper);\r\n for await (const item of decodeArrayStream(response.rawResponse.body!)) {\r\n items.push(itemFactory(item));\r\n }\r\n return items;\r\n });\r\n};\r\n\r\nHttpBuilder.prototype.streamMessagePackArray = function <T>(\r\n this: HttpBuilder,\r\n typeOrMapper?: TypeOrMapper<T>\r\n) {\r\n this.message.headers.set(\"Accept\", \"application/x-msgpack\");\r\n\r\n async function* handler(response: HttpResponse) {\r\n const itemFactory = getMapper(deserialize, typeOrMapper);\r\n for await (const item of decodeArrayStream(response.rawResponse.body!)) {\r\n yield itemFactory(item);\r\n }\r\n }\r\n\r\n return this.useHandler((response) => Promise.resolve(handler(response)));\r\n};\r\n"],"names":[],"version":3,"file":"msgpack.d.ts.map"}
package/dist/msgpack.js DELETED
@@ -1,62 +0,0 @@
1
- var $aEV4B$utilireadmsgpack = require("@utiliread/msgpack");
2
- var $aEV4B$utilireadhttp = require("@utiliread/http");
3
- var $aEV4B$msgpackmsgpack = require("@msgpack/msgpack");
4
-
5
-
6
-
7
-
8
- function $832885d3f99065b6$export$27b49540aaa79f4f(deserialize, typeOrMap) {
9
- if (!typeOrMap) return (x)=>x
10
- ;
11
- if ($832885d3f99065b6$var$isZeroArgumentFunction(typeOrMap)) // It cannot be a factory function if it takes no arguments,
12
- // so it must be a (zero argument) type (constructor)
13
- return (x)=>{
14
- const bound = deserialize(x, typeOrMap);
15
- // The server cannot produce the undefined result
16
- if (bound === undefined) throw Error("The model factory created a undefined result");
17
- return bound;
18
- };
19
- return typeOrMap;
20
- }
21
- function $832885d3f99065b6$export$bf53df0dfe06e237(deserialize, typeOrMap) {
22
- const nullableFactory = $832885d3f99065b6$export$27b49540aaa79f4f(deserialize, typeOrMap);
23
- return (x)=>{
24
- const result = nullableFactory(x);
25
- if (result === null) throw Error("The model factory created a null result");
26
- return result;
27
- };
28
- }
29
- function $832885d3f99065b6$var$isZeroArgumentFunction(typeCtor) {
30
- return typeCtor.length === 0;
31
- }
32
-
33
-
34
- $aEV4B$utilireadhttp.HttpBuilder.prototype.expectMessagePack = function(typeOrMapper) {
35
- this.message.headers.set("Accept", "application/x-msgpack");
36
- return this.useHandler(async (response)=>{
37
- const itemFactory = $832885d3f99065b6$export$bf53df0dfe06e237($aEV4B$utilireadmsgpack.deserialize, typeOrMapper);
38
- const decoded = await $aEV4B$msgpackmsgpack.decodeAsync(response.rawResponse.body);
39
- return itemFactory(decoded);
40
- });
41
- };
42
- $aEV4B$utilireadhttp.HttpBuilder.prototype.expectMessagePackArray = function(typeOrMapper) {
43
- this.message.headers.set("Accept", "application/x-msgpack");
44
- return this.useHandler(async (response)=>{
45
- const items = [];
46
- const itemFactory = $832885d3f99065b6$export$bf53df0dfe06e237($aEV4B$utilireadmsgpack.deserialize, typeOrMapper);
47
- for await (const item of $aEV4B$msgpackmsgpack.decodeArrayStream(response.rawResponse.body))items.push(itemFactory(item));
48
- return items;
49
- });
50
- };
51
- $aEV4B$utilireadhttp.HttpBuilder.prototype.streamMessagePackArray = function(typeOrMapper) {
52
- this.message.headers.set("Accept", "application/x-msgpack");
53
- async function* handler(response) {
54
- const itemFactory = $832885d3f99065b6$export$bf53df0dfe06e237($aEV4B$utilireadmsgpack.deserialize, typeOrMapper);
55
- for await (const item of $aEV4B$msgpackmsgpack.decodeArrayStream(response.rawResponse.body))yield itemFactory(item);
56
- }
57
- return this.useHandler((response)=>Promise.resolve(handler(response))
58
- );
59
- };
60
-
61
-
62
- //# sourceMappingURL=msgpack.js.map
@@ -1 +0,0 @@
1
- {"mappings":";;;;AAAA;;;ACKO,SAAS,yCAAiB,CAAI,WAA6B,EAAE,SAA0C,EAAoB;IAC9H,IAAI,CAAC,SAAS,EACV,OAAO,CAAC,CAAM,GAAQ,CAAC;IAAA,CAAC;IAG5B,IAAI,4CAAsB,CAAC,SAAS,CAAC,EACjC,4DAA4D;IAC5D,qDAAqD;IACrD,OAAO,CAAC,CAAM,GAAK;QACf,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,EAAE,SAAS,CAAC,AAAC;QAExC,iDAAiD;QACjD,IAAI,KAAK,KAAK,SAAS,EACnB,MAAM,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAGhE,OAAO,KAAK,CAAC;KAChB,CAAA;IAGL,OAAO,SAAS,CAAC;CACpB;AAEM,SAAS,yCAAS,CAAI,WAA6B,EAAE,SAA0C,EAAa;IAC/G,MAAM,eAAe,GAAG,yCAAiB,CAAC,WAAW,EAAE,SAAS,CAAC,AAAC;IAClE,OAAO,CAAC,CAAM,GAAK;QACf,MAAM,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC,AAAC;QAElC,IAAI,MAAM,KAAK,IAAI,EACf,MAAM,KAAK,CAAC,yCAAyC,CAAC,CAAC;QAG3D,OAAO,MAAM,CAAC;KACjB,CAAC;CACL;AAED,SAAS,4CAAsB,CAAI,QAAkB,EAA4B;IAC7E,OAAO,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC;CAChC;;;ADxBD,gCAAW,CAAC,SAAS,CAAC,iBAAiB,GAAG,SAExC,YAA8B,EAC9B;IACA,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,uBAAuB,CAAC,CAAC;IAC5D,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,QAAQ,GAAK;QACzC,MAAM,WAAW,GAAG,yCAAS,CAAC,mCAAW,EAAE,YAAY,CAAC,AAAC;QACzD,MAAM,OAAO,GAAG,MAAM,iCAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAE,AAAC;QAC9D,OAAO,WAAW,CAAC,OAAO,CAAC,CAAC;KAC7B,CAAC,CAAC;CACJ,CAAC;AAEF,gCAAW,CAAC,SAAS,CAAC,sBAAsB,GAAG,SAE7C,YAA8B,EAC9B;IACA,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,uBAAuB,CAAC,CAAC;IAC5D,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,QAAQ,GAAK;QACzC,MAAM,KAAK,GAAQ,EAAE,AAAC;QACtB,MAAM,WAAW,GAAG,yCAAS,CAAC,mCAAW,EAAE,YAAY,CAAC,AAAC;QACzD,WAAW,MAAM,IAAI,IAAI,uCAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAE,CACpE,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;QAEhC,OAAO,KAAK,CAAC;KACd,CAAC,CAAC;CACJ,CAAC;AAEF,gCAAW,CAAC,SAAS,CAAC,sBAAsB,GAAG,SAE7C,YAA8B,EAC9B;IACA,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,uBAAuB,CAAC,CAAC;IAE5D,gBAAgB,OAAO,CAAC,QAAsB,EAAE;QAC9C,MAAM,WAAW,GAAG,yCAAS,CAAC,mCAAW,EAAE,YAAY,CAAC,AAAC;QACzD,WAAW,MAAM,IAAI,IAAI,uCAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAE,CACpE,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC;KAE3B;IAED,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,GAAK,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAAA,CAAC,CAAC;CAC1E,CAAC","sources":["plugins/msgpack/src/index.ts","src/mapping.ts"],"sourcesContent":["import { deserialize } from \"@utiliread/msgpack\";\r\nimport { HttpBuilder, HttpBuilderOfT, HttpResponse } from \"@utiliread/http\";\r\nimport { decodeArrayStream, decodeAsync } from \"@msgpack/msgpack\";\r\nimport type { TypeOrMapper } from \"../../../src/mapping\";\r\nimport { getMapper } from \"../../../src/mapping\";\r\n\r\n// https://www.typescriptlang.org/docs/handbook/declaration-merging.html#module-augmentation\r\ndeclare module \"@utiliread/http\" {\r\n interface HttpBuilder {\r\n expectMessagePack<T>(typeOrMapper?: TypeOrMapper<T>): HttpBuilderOfT<T>;\r\n expectMessagePackArray<T>(\r\n typeOrMapper?: TypeOrMapper<T>\r\n ): HttpBuilderOfT<T[]>;\r\n streamMessagePackArray<T>(\r\n typeOrMapper?: TypeOrMapper<T>\r\n ): HttpBuilderOfT<AsyncGenerator<T, void, unknown>>;\r\n }\r\n}\r\n\r\nHttpBuilder.prototype.expectMessagePack = function <T>(\r\n this: HttpBuilder,\r\n typeOrMapper?: TypeOrMapper<T>\r\n) {\r\n this.message.headers.set(\"Accept\", \"application/x-msgpack\");\r\n return this.useHandler(async (response) => {\r\n const itemFactory = getMapper(deserialize, typeOrMapper);\r\n const decoded = await decodeAsync(response.rawResponse.body!);\r\n return itemFactory(decoded);\r\n });\r\n};\r\n\r\nHttpBuilder.prototype.expectMessagePackArray = function <T>(\r\n this: HttpBuilder,\r\n typeOrMapper?: TypeOrMapper<T>\r\n) {\r\n this.message.headers.set(\"Accept\", \"application/x-msgpack\");\r\n return this.useHandler(async (response) => {\r\n const items: T[] = [];\r\n const itemFactory = getMapper(deserialize, typeOrMapper);\r\n for await (const item of decodeArrayStream(response.rawResponse.body!)) {\r\n items.push(itemFactory(item));\r\n }\r\n return items;\r\n });\r\n};\r\n\r\nHttpBuilder.prototype.streamMessagePackArray = function <T>(\r\n this: HttpBuilder,\r\n typeOrMapper?: TypeOrMapper<T>\r\n) {\r\n this.message.headers.set(\"Accept\", \"application/x-msgpack\");\r\n\r\n async function* handler(response: HttpResponse) {\r\n const itemFactory = getMapper(deserialize, typeOrMapper);\r\n for await (const item of decodeArrayStream(response.rawResponse.body!)) {\r\n yield itemFactory(item);\r\n }\r\n }\r\n\r\n return this.useHandler((response) => Promise.resolve(handler(response)));\r\n};\r\n","type DeserializeFn<T> = (source: any, type: Type<T>) => T | null | undefined;\nexport type Type<T> = { new(): T };\nexport type Mapper<T> = ((source: any) => T);\nexport type TypeOrMapper<T> = Type<T> | Mapper<T>;\n\nexport function getNullableMapper<T>(deserialize: DeserializeFn<T>, typeOrMap: Type<T> | Mapper<T> | undefined): Mapper<T | null> {\n if (!typeOrMap) {\n return (x: any) => <T>x;\n }\n\n if (isZeroArgumentFunction(typeOrMap)) {\n // It cannot be a factory function if it takes no arguments,\n // so it must be a (zero argument) type (constructor)\n return (x: any) => {\n const bound = deserialize(x, typeOrMap);\n\n // The server cannot produce the undefined result\n if (bound === undefined) {\n throw Error(\"The model factory created a undefined result\");\n }\n\n return bound;\n }\n }\n\n return typeOrMap;\n}\n\nexport function getMapper<T>(deserialize: DeserializeFn<T>, typeOrMap: Type<T> | Mapper<T> | undefined): Mapper<T> {\n const nullableFactory = getNullableMapper(deserialize, typeOrMap);\n return (x: any) => {\n const result = nullableFactory(x);\n\n if (result === null) {\n throw Error(\"The model factory created a null result\");\n }\n\n return result;\n };\n}\n\nfunction isZeroArgumentFunction<T>(typeCtor: Function): typeCtor is { new(): T } {\n return typeCtor.length === 0;\n}"],"names":[],"version":3,"file":"msgpack.js.map"}
package/dist/msgpack.mjs DELETED
@@ -1,62 +0,0 @@
1
- import {deserialize as $ce1lZ$deserialize} from "@utiliread/msgpack";
2
- import {HttpBuilder as $ce1lZ$HttpBuilder} from "@utiliread/http";
3
- import {decodeAsync as $ce1lZ$decodeAsync, decodeArrayStream as $ce1lZ$decodeArrayStream} from "@msgpack/msgpack";
4
-
5
-
6
-
7
-
8
- function $526ffc2cb67c58ff$export$27b49540aaa79f4f(deserialize, typeOrMap) {
9
- if (!typeOrMap) return (x)=>x
10
- ;
11
- if ($526ffc2cb67c58ff$var$isZeroArgumentFunction(typeOrMap)) // It cannot be a factory function if it takes no arguments,
12
- // so it must be a (zero argument) type (constructor)
13
- return (x)=>{
14
- const bound = deserialize(x, typeOrMap);
15
- // The server cannot produce the undefined result
16
- if (bound === undefined) throw Error("The model factory created a undefined result");
17
- return bound;
18
- };
19
- return typeOrMap;
20
- }
21
- function $526ffc2cb67c58ff$export$bf53df0dfe06e237(deserialize, typeOrMap) {
22
- const nullableFactory = $526ffc2cb67c58ff$export$27b49540aaa79f4f(deserialize, typeOrMap);
23
- return (x)=>{
24
- const result = nullableFactory(x);
25
- if (result === null) throw Error("The model factory created a null result");
26
- return result;
27
- };
28
- }
29
- function $526ffc2cb67c58ff$var$isZeroArgumentFunction(typeCtor) {
30
- return typeCtor.length === 0;
31
- }
32
-
33
-
34
- $ce1lZ$HttpBuilder.prototype.expectMessagePack = function(typeOrMapper) {
35
- this.message.headers.set("Accept", "application/x-msgpack");
36
- return this.useHandler(async (response)=>{
37
- const itemFactory = $526ffc2cb67c58ff$export$bf53df0dfe06e237($ce1lZ$deserialize, typeOrMapper);
38
- const decoded = await $ce1lZ$decodeAsync(response.rawResponse.body);
39
- return itemFactory(decoded);
40
- });
41
- };
42
- $ce1lZ$HttpBuilder.prototype.expectMessagePackArray = function(typeOrMapper) {
43
- this.message.headers.set("Accept", "application/x-msgpack");
44
- return this.useHandler(async (response)=>{
45
- const items = [];
46
- const itemFactory = $526ffc2cb67c58ff$export$bf53df0dfe06e237($ce1lZ$deserialize, typeOrMapper);
47
- for await (const item of $ce1lZ$decodeArrayStream(response.rawResponse.body))items.push(itemFactory(item));
48
- return items;
49
- });
50
- };
51
- $ce1lZ$HttpBuilder.prototype.streamMessagePackArray = function(typeOrMapper) {
52
- this.message.headers.set("Accept", "application/x-msgpack");
53
- async function* handler(response) {
54
- const itemFactory = $526ffc2cb67c58ff$export$bf53df0dfe06e237($ce1lZ$deserialize, typeOrMapper);
55
- for await (const item of $ce1lZ$decodeArrayStream(response.rawResponse.body))yield itemFactory(item);
56
- }
57
- return this.useHandler((response)=>Promise.resolve(handler(response))
58
- );
59
- };
60
-
61
-
62
- //# sourceMappingURL=msgpack.mjs.map
@@ -1 +0,0 @@
1
- {"mappings":";;;;AAAA;;;ACKO,SAAS,yCAAiB,CAAI,WAA6B,EAAE,SAA0C,EAAoB;IAC9H,IAAI,CAAC,SAAS,EACV,OAAO,CAAC,CAAM,GAAQ,CAAC;IAAA,CAAC;IAG5B,IAAI,4CAAsB,CAAC,SAAS,CAAC,EACjC,4DAA4D;IAC5D,qDAAqD;IACrD,OAAO,CAAC,CAAM,GAAK;QACf,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,EAAE,SAAS,CAAC,AAAC;QAExC,iDAAiD;QACjD,IAAI,KAAK,KAAK,SAAS,EACnB,MAAM,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAGhE,OAAO,KAAK,CAAC;KAChB,CAAA;IAGL,OAAO,SAAS,CAAC;CACpB;AAEM,SAAS,yCAAS,CAAI,WAA6B,EAAE,SAA0C,EAAa;IAC/G,MAAM,eAAe,GAAG,yCAAiB,CAAC,WAAW,EAAE,SAAS,CAAC,AAAC;IAClE,OAAO,CAAC,CAAM,GAAK;QACf,MAAM,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC,AAAC;QAElC,IAAI,MAAM,KAAK,IAAI,EACf,MAAM,KAAK,CAAC,yCAAyC,CAAC,CAAC;QAG3D,OAAO,MAAM,CAAC;KACjB,CAAC;CACL;AAED,SAAS,4CAAsB,CAAI,QAAkB,EAA4B;IAC7E,OAAO,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC;CAChC;;;ADxBD,kBAAW,CAAC,SAAS,CAAC,iBAAiB,GAAG,SAExC,YAA8B,EAC9B;IACA,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,uBAAuB,CAAC,CAAC;IAC5D,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,QAAQ,GAAK;QACzC,MAAM,WAAW,GAAG,yCAAS,CAAC,kBAAW,EAAE,YAAY,CAAC,AAAC;QACzD,MAAM,OAAO,GAAG,MAAM,kBAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAE,AAAC;QAC9D,OAAO,WAAW,CAAC,OAAO,CAAC,CAAC;KAC7B,CAAC,CAAC;CACJ,CAAC;AAEF,kBAAW,CAAC,SAAS,CAAC,sBAAsB,GAAG,SAE7C,YAA8B,EAC9B;IACA,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,uBAAuB,CAAC,CAAC;IAC5D,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,QAAQ,GAAK;QACzC,MAAM,KAAK,GAAQ,EAAE,AAAC;QACtB,MAAM,WAAW,GAAG,yCAAS,CAAC,kBAAW,EAAE,YAAY,CAAC,AAAC;QACzD,WAAW,MAAM,IAAI,IAAI,wBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAE,CACpE,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;QAEhC,OAAO,KAAK,CAAC;KACd,CAAC,CAAC;CACJ,CAAC;AAEF,kBAAW,CAAC,SAAS,CAAC,sBAAsB,GAAG,SAE7C,YAA8B,EAC9B;IACA,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,uBAAuB,CAAC,CAAC;IAE5D,gBAAgB,OAAO,CAAC,QAAsB,EAAE;QAC9C,MAAM,WAAW,GAAG,yCAAS,CAAC,kBAAW,EAAE,YAAY,CAAC,AAAC;QACzD,WAAW,MAAM,IAAI,IAAI,wBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAE,CACpE,MAAM,WAAW,CAAC,IAAI,CAAC,CAAC;KAE3B;IAED,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,GAAK,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAAA,CAAC,CAAC;CAC1E,CAAC","sources":["plugins/msgpack/src/index.ts","src/mapping.ts"],"sourcesContent":["import { deserialize } from \"@utiliread/msgpack\";\r\nimport { HttpBuilder, HttpBuilderOfT, HttpResponse } from \"@utiliread/http\";\r\nimport { decodeArrayStream, decodeAsync } from \"@msgpack/msgpack\";\r\nimport type { TypeOrMapper } from \"../../../src/mapping\";\r\nimport { getMapper } from \"../../../src/mapping\";\r\n\r\n// https://www.typescriptlang.org/docs/handbook/declaration-merging.html#module-augmentation\r\ndeclare module \"@utiliread/http\" {\r\n interface HttpBuilder {\r\n expectMessagePack<T>(typeOrMapper?: TypeOrMapper<T>): HttpBuilderOfT<T>;\r\n expectMessagePackArray<T>(\r\n typeOrMapper?: TypeOrMapper<T>\r\n ): HttpBuilderOfT<T[]>;\r\n streamMessagePackArray<T>(\r\n typeOrMapper?: TypeOrMapper<T>\r\n ): HttpBuilderOfT<AsyncGenerator<T, void, unknown>>;\r\n }\r\n}\r\n\r\nHttpBuilder.prototype.expectMessagePack = function <T>(\r\n this: HttpBuilder,\r\n typeOrMapper?: TypeOrMapper<T>\r\n) {\r\n this.message.headers.set(\"Accept\", \"application/x-msgpack\");\r\n return this.useHandler(async (response) => {\r\n const itemFactory = getMapper(deserialize, typeOrMapper);\r\n const decoded = await decodeAsync(response.rawResponse.body!);\r\n return itemFactory(decoded);\r\n });\r\n};\r\n\r\nHttpBuilder.prototype.expectMessagePackArray = function <T>(\r\n this: HttpBuilder,\r\n typeOrMapper?: TypeOrMapper<T>\r\n) {\r\n this.message.headers.set(\"Accept\", \"application/x-msgpack\");\r\n return this.useHandler(async (response) => {\r\n const items: T[] = [];\r\n const itemFactory = getMapper(deserialize, typeOrMapper);\r\n for await (const item of decodeArrayStream(response.rawResponse.body!)) {\r\n items.push(itemFactory(item));\r\n }\r\n return items;\r\n });\r\n};\r\n\r\nHttpBuilder.prototype.streamMessagePackArray = function <T>(\r\n this: HttpBuilder,\r\n typeOrMapper?: TypeOrMapper<T>\r\n) {\r\n this.message.headers.set(\"Accept\", \"application/x-msgpack\");\r\n\r\n async function* handler(response: HttpResponse) {\r\n const itemFactory = getMapper(deserialize, typeOrMapper);\r\n for await (const item of decodeArrayStream(response.rawResponse.body!)) {\r\n yield itemFactory(item);\r\n }\r\n }\r\n\r\n return this.useHandler((response) => Promise.resolve(handler(response)));\r\n};\r\n","type DeserializeFn<T> = (source: any, type: Type<T>) => T | null | undefined;\nexport type Type<T> = { new(): T };\nexport type Mapper<T> = ((source: any) => T);\nexport type TypeOrMapper<T> = Type<T> | Mapper<T>;\n\nexport function getNullableMapper<T>(deserialize: DeserializeFn<T>, typeOrMap: Type<T> | Mapper<T> | undefined): Mapper<T | null> {\n if (!typeOrMap) {\n return (x: any) => <T>x;\n }\n\n if (isZeroArgumentFunction(typeOrMap)) {\n // It cannot be a factory function if it takes no arguments,\n // so it must be a (zero argument) type (constructor)\n return (x: any) => {\n const bound = deserialize(x, typeOrMap);\n\n // The server cannot produce the undefined result\n if (bound === undefined) {\n throw Error(\"The model factory created a undefined result\");\n }\n\n return bound;\n }\n }\n\n return typeOrMap;\n}\n\nexport function getMapper<T>(deserialize: DeserializeFn<T>, typeOrMap: Type<T> | Mapper<T> | undefined): Mapper<T> {\n const nullableFactory = getNullableMapper(deserialize, typeOrMap);\n return (x: any) => {\n const result = nullableFactory(x);\n\n if (result === null) {\n throw Error(\"The model factory created a null result\");\n }\n\n return result;\n };\n}\n\nfunction isZeroArgumentFunction<T>(typeCtor: Function): typeCtor is { new(): T } {\n return typeCtor.length === 0;\n}"],"names":[],"version":3,"file":"msgpack.mjs.map"}
@@ -1,145 +0,0 @@
1
- {
2
- "name": "@utiliread/http/json",
3
- "lockfileVersion": 2,
4
- "requires": true,
5
- "packages": {
6
- "": {
7
- "name": "@utiliread/http/json",
8
- "dependencies": {
9
- "@utiliread/http": "../"
10
- },
11
- "devDependencies": {
12
- "@utiliread/json": "^1.0.2"
13
- },
14
- "peerDependencies": {
15
- "@utiliread/json": "^1.0.2"
16
- }
17
- },
18
- "..": {
19
- "name": "@utiliread/http",
20
- "version": "1.16.2",
21
- "devDependencies": {
22
- "@parcel/packager-ts": "^2.5.0",
23
- "@parcel/transformer-typescript-types": "^2.5.0",
24
- "@types/chai": "^4.2.16",
25
- "@types/luxon": "^2.0.5",
26
- "@types/mocha": "^9.0.0",
27
- "@utiliread/json": "^1.0.2",
28
- "@utiliread/jsonpatch": "^1.0.0",
29
- "@utiliread/msgpack": "^1.0.1",
30
- "chai": "^4.3.4",
31
- "karma": "^6.3.8",
32
- "karma-chai": "^0.1.0",
33
- "karma-chrome-launcher": "^3.1.0",
34
- "karma-mocha": "^2.0.1",
35
- "karma-typescript": "^5.5.1",
36
- "luxon": "^2.1.0",
37
- "mocha": "^9.1.3",
38
- "parcel": "^2.5.0",
39
- "replace-in-file": "^6.3.2",
40
- "rimraf": "^3.0.2",
41
- "typescript": "^4.2.4"
42
- },
43
- "peerDependencies": {
44
- "@utiliread/json": "^1.0.2",
45
- "@utiliread/msgpack": "^1.0.1",
46
- "luxon": "^2.1.0"
47
- },
48
- "peerDependenciesMeta": {
49
- "@utiliread/json": {
50
- "optional": true
51
- },
52
- "@utiliread/jsonpatch": {
53
- "optional": true
54
- },
55
- "@utiliread/msgpack": {
56
- "optional": true
57
- }
58
- }
59
- },
60
- "node_modules/@utiliread/http": {
61
- "resolved": "..",
62
- "link": true
63
- },
64
- "node_modules/@utiliread/json": {
65
- "version": "1.1.0",
66
- "resolved": "https://registry.npmjs.org/@utiliread/json/-/json-1.1.0.tgz",
67
- "integrity": "sha512-+7Ze03PqzIfRfdClh3UbH13UHrEUt58+Aa561vRKo0WdaIYrsE1XSBVo8+dmwDSLo9XqkgqykUIG/qP69dmtnw==",
68
- "dev": true,
69
- "dependencies": {
70
- "base64-arraybuffer": "^1.0.1"
71
- },
72
- "peerDependencies": {
73
- "luxon": "^2.1.0"
74
- }
75
- },
76
- "node_modules/base64-arraybuffer": {
77
- "version": "1.0.2",
78
- "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz",
79
- "integrity": "sha512-I3yl4r9QB5ZRY3XuJVEPfc2XhZO6YweFPI+UovAzn+8/hb3oJ6lnysaFcjVpkCPfVWFUDvoZ8kmVDP7WyRtYtQ==",
80
- "dev": true,
81
- "engines": {
82
- "node": ">= 0.6.0"
83
- }
84
- },
85
- "node_modules/luxon": {
86
- "version": "2.4.0",
87
- "resolved": "https://registry.npmjs.org/luxon/-/luxon-2.4.0.tgz",
88
- "integrity": "sha512-w+NAwWOUL5hO0SgwOHsMBAmZ15SoknmQXhSO0hIbJCAmPKSsGeK8MlmhYh2w6Iib38IxN2M+/ooXWLbeis7GuA==",
89
- "dev": true,
90
- "peer": true,
91
- "engines": {
92
- "node": ">=12"
93
- }
94
- }
95
- },
96
- "dependencies": {
97
- "@utiliread/http": {
98
- "version": "file:..",
99
- "requires": {
100
- "@parcel/packager-ts": "^2.5.0",
101
- "@parcel/transformer-typescript-types": "^2.5.0",
102
- "@types/chai": "^4.2.16",
103
- "@types/luxon": "^2.0.5",
104
- "@types/mocha": "^9.0.0",
105
- "@utiliread/json": "^1.0.2",
106
- "@utiliread/jsonpatch": "^1.0.0",
107
- "@utiliread/msgpack": "^1.0.1",
108
- "chai": "^4.3.4",
109
- "karma": "^6.3.8",
110
- "karma-chai": "^0.1.0",
111
- "karma-chrome-launcher": "^3.1.0",
112
- "karma-mocha": "^2.0.1",
113
- "karma-typescript": "^5.5.1",
114
- "luxon": "^2.1.0",
115
- "mocha": "^9.1.3",
116
- "parcel": "^2.5.0",
117
- "replace-in-file": "^6.3.2",
118
- "rimraf": "^3.0.2",
119
- "typescript": "^4.2.4"
120
- }
121
- },
122
- "@utiliread/json": {
123
- "version": "1.1.0",
124
- "resolved": "https://registry.npmjs.org/@utiliread/json/-/json-1.1.0.tgz",
125
- "integrity": "sha512-+7Ze03PqzIfRfdClh3UbH13UHrEUt58+Aa561vRKo0WdaIYrsE1XSBVo8+dmwDSLo9XqkgqykUIG/qP69dmtnw==",
126
- "dev": true,
127
- "requires": {
128
- "base64-arraybuffer": "^1.0.1"
129
- }
130
- },
131
- "base64-arraybuffer": {
132
- "version": "1.0.2",
133
- "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz",
134
- "integrity": "sha512-I3yl4r9QB5ZRY3XuJVEPfc2XhZO6YweFPI+UovAzn+8/hb3oJ6lnysaFcjVpkCPfVWFUDvoZ8kmVDP7WyRtYtQ==",
135
- "dev": true
136
- },
137
- "luxon": {
138
- "version": "2.4.0",
139
- "resolved": "https://registry.npmjs.org/luxon/-/luxon-2.4.0.tgz",
140
- "integrity": "sha512-w+NAwWOUL5hO0SgwOHsMBAmZ15SoknmQXhSO0hIbJCAmPKSsGeK8MlmhYh2w6Iib38IxN2M+/ooXWLbeis7GuA==",
141
- "dev": true,
142
- "peer": true
143
- }
144
- }
145
- }
@@ -1,11 +0,0 @@
1
- {
2
- "name": "@utiliread/http/json",
3
- "source": "./src/index.ts",
4
- "main": "../../dist/json.js",
5
- "module": "../../dist/json.mjs",
6
- "types": "../../dist/json.d.ts",
7
- "dependencies": {
8
- "@utiliread/http": "../../",
9
- "@utiliread/json": "^1.0.2"
10
- }
11
- }