@eecho/api-client 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +14 -25
- package/dist/client.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/dist/spec.generator.d.ts +0 -2
- package/dist/spec.generator.d.ts.map +0 -1
- package/dist/spec.generator.js +0 -3
- package/dist/spec.generator.js.map +0 -1
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,KAAK,cAAc,GAAG,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,GAAG;IACnD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC,CAAC;AAEF,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,gBAAgB,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,OAAO,EAAE,WAAW,CAAC;IACrB,SAAS,EAAE,IAAI,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,MAAM,mBAAmB,GAAG,CAChC,OAAO,EAAE,qBAAqB,KAC3B,OAAO,CAAC;IAAE,MAAM,CAAC,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC,CAAC;AAErD,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,EAAE;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,cAAc,CAAC;CACzB,KAAK,OAAO,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,cAAc,CAAA;CAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,KAAK,cAAc,GAAG,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,GAAG;IACnD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC,CAAC;AAEF,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,gBAAgB,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,OAAO,EAAE,WAAW,CAAC;IACrB,SAAS,EAAE,IAAI,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,MAAM,mBAAmB,GAAG,CAChC,OAAO,EAAE,qBAAqB,KAC3B,OAAO,CAAC;IAAE,MAAM,CAAC,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC,CAAC;AAErD,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,EAAE;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,cAAc,CAAC;CACzB,KAAK,OAAO,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,cAAc,CAAA;CAAE,CAAC,CAAC;AA4DxD,wBAAgB,gBAAgB;iBAOf,MAAM;2BAGI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;+BAGlB,cAAc;iCAGZ,mBAAmB;;;;;;iBAc7B;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,cAAc,CAAA;KAAE;EAoC/D"}
|
package/dist/client.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
class FetchException extends Error {
|
|
2
|
-
constructor(
|
|
3
|
-
const status =
|
|
4
|
-
super(`Fetch failed for ${
|
|
2
|
+
constructor(failure) {
|
|
3
|
+
const status = failure.response ? ` (${failure.response.status})` : '';
|
|
4
|
+
super(`Fetch failed for ${failure.requestUrl}${status}`);
|
|
5
5
|
this.name = 'FetchException';
|
|
6
6
|
this.errorType = 'FetchException';
|
|
7
|
-
this.
|
|
8
|
-
this.
|
|
9
|
-
this.options =
|
|
10
|
-
this.
|
|
11
|
-
this.cause =
|
|
7
|
+
this.timestamp = new Date();
|
|
8
|
+
this.requestUrl = failure.requestUrl;
|
|
9
|
+
this.options = failure.options;
|
|
10
|
+
this.response = failure.response;
|
|
11
|
+
this.cause = failure.cause;
|
|
12
12
|
}
|
|
13
13
|
}
|
|
14
14
|
function resolveRequestUrl(host, url) {
|
|
@@ -29,7 +29,7 @@ async function runExceptionHandlers(exception, handlers) {
|
|
|
29
29
|
if (result) {
|
|
30
30
|
return result;
|
|
31
31
|
}
|
|
32
|
-
|
|
32
|
+
break;
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
35
|
throw exception;
|
|
@@ -77,28 +77,17 @@ export function createHttpClient() {
|
|
|
77
77
|
}
|
|
78
78
|
const requestUrl = resolveRequestUrl(host, request.url);
|
|
79
79
|
let response;
|
|
80
|
+
let cause;
|
|
80
81
|
try {
|
|
81
82
|
response = await fetch(requestUrl, request.options);
|
|
82
83
|
}
|
|
83
|
-
catch (
|
|
84
|
-
|
|
85
|
-
errorType: 'FetchException',
|
|
86
|
-
requestUrl,
|
|
87
|
-
options: request.options,
|
|
88
|
-
timestamp: new Date(),
|
|
89
|
-
cause,
|
|
90
|
-
}), exceptionHandlers);
|
|
84
|
+
catch (error) {
|
|
85
|
+
cause = error;
|
|
91
86
|
}
|
|
92
|
-
if (response
|
|
87
|
+
if (response?.ok) {
|
|
93
88
|
return response;
|
|
94
89
|
}
|
|
95
|
-
return runExceptionHandlers(new FetchException({
|
|
96
|
-
errorType: 'FetchException',
|
|
97
|
-
requestUrl,
|
|
98
|
-
response,
|
|
99
|
-
options: request.options,
|
|
100
|
-
timestamp: new Date(),
|
|
101
|
-
}), exceptionHandlers);
|
|
90
|
+
return runExceptionHandlers(new FetchException({ requestUrl, options: request.options, response, cause }), exceptionHandlers);
|
|
102
91
|
},
|
|
103
92
|
};
|
|
104
93
|
}
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAsBA,MAAM,cAAe,SAAQ,KAAK;IAShC,YAAY,
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -3,5 +3,5 @@ export type { APIExceptionHandler, FetchExceptionContext, RequestHandler } from
|
|
|
3
3
|
export { createRetryHandler } from './handlers.js';
|
|
4
4
|
export { createAPI } from './spec.js';
|
|
5
5
|
export type { APIMapOf } from './spec.js';
|
|
6
|
-
export { genAPIDefinition } from '
|
|
6
|
+
export { genAPIDefinition } from '@eecho/definition';
|
|
7
7
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,YAAY,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC9F,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,YAAY,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,YAAY,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC9F,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,YAAY,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAE1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export { createHttpClient } from './client.js';
|
|
2
2
|
export { createRetryHandler } from './handlers.js';
|
|
3
3
|
export { createAPI } from './spec.js';
|
|
4
|
-
export
|
|
4
|
+
// Compatibility re-export: API contracts are owned by @eecho/definition.
|
|
5
|
+
export { genAPIDefinition } from '@eecho/definition';
|
|
5
6
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,yEAAyE;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@eecho/api-client",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "Validated HTTP client for shared EEcho API contracts",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"url": "git+https://github.com/eecho/eechojs.git"
|
|
27
27
|
},
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@eecho/definition": "^0.
|
|
29
|
+
"@eecho/definition": "^0.2.0",
|
|
30
30
|
"qs": "^6.14.0"
|
|
31
31
|
},
|
|
32
32
|
"peerDependencies": {
|
package/dist/spec.generator.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"spec.generator.d.ts","sourceRoot":"","sources":["../src/spec.generator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC"}
|
package/dist/spec.generator.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"spec.generator.js","sourceRoot":"","sources":["../src/spec.generator.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC"}
|