@loke/http-rpc 5.5.0 → 5.7.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/index.d.ts +1 -1
- package/dist/index.js +14 -3
- package/dist/index.js.map +1 -1
- package/dist/schema.d.ts +1 -1
- package/package.json +3 -3
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { RequestHandler, ErrorRequestHandler } from "express";
|
|
2
2
|
import { ServiceSet } from "./common";
|
|
3
3
|
export { ServiceSet, ServiceDetails, MethodDetails, Service, Method, ContextMethod, ContextService, } from "./common";
|
|
4
|
-
export { serviceWithSchema, contextServiceWithSchema, voidSchema, VoidSchema, } from "./schema";
|
|
4
|
+
export { serviceWithSchema, contextServiceWithSchema, ContextMethods, voidSchema, VoidSchema, } from "./schema";
|
|
5
5
|
declare class ExtendableError extends Error {
|
|
6
6
|
constructor(message: string);
|
|
7
7
|
}
|
package/dist/index.js
CHANGED
|
@@ -186,22 +186,33 @@ function createRequestHandler(services, options) {
|
|
|
186
186
|
}
|
|
187
187
|
function createErrorHandler(args = {}) {
|
|
188
188
|
const { log = () => undefined } = args;
|
|
189
|
+
// Express v5: Error handling middleware must have exactly 4 parameters
|
|
190
|
+
// Express v5: ErrorRequestHandler return type must be void (not the result of res.json())
|
|
189
191
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
190
192
|
return (err, req, res, next) => {
|
|
193
|
+
// Express v5: If headers have already been sent, delegate to default error handler
|
|
194
|
+
if (res.headersSent) {
|
|
195
|
+
return next(err);
|
|
196
|
+
}
|
|
191
197
|
const source = `${err.serviceName}/${err.methodName}`;
|
|
192
198
|
if (!(err instanceof RpcError)) {
|
|
193
199
|
log(`Internal error executing ${source}: ${err.stack || err.message}`);
|
|
194
|
-
return res.
|
|
200
|
+
// Express v5: Don't return the result of res.json() - just call it
|
|
201
|
+
res.status(500).json({ message: err.message });
|
|
202
|
+
return;
|
|
195
203
|
}
|
|
196
204
|
log(`Error executing ${source}: ${err.inner.stack}`);
|
|
197
205
|
if (!err.inner.type) {
|
|
198
206
|
log(`Legacy error returned from ${source}: name=${err.inner.name}, code=${err.inner.code}`);
|
|
199
|
-
return res.
|
|
207
|
+
// Express v5: Don't return the result of res.json() - just call it
|
|
208
|
+
res.status(400).json({
|
|
200
209
|
message: err.inner.message,
|
|
201
210
|
code: err.inner.code,
|
|
202
211
|
});
|
|
212
|
+
return;
|
|
203
213
|
}
|
|
204
|
-
return res.
|
|
214
|
+
// Express v5: Don't return the result of res.json() - just call it
|
|
215
|
+
res.status(400).json(err.inner);
|
|
205
216
|
};
|
|
206
217
|
}
|
|
207
218
|
function first(s) {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuHA,oDAuHC;AAED,gDAwCC;AAxRD,6CAAiD;AAGjD,uDAAyC;AACzC,8DAAqC;AACrC,mCAAqC;AAErC,qCAKkB;AAYlB,mCAMkB;AALhB,2GAAA,iBAAiB,OAAA;AACjB,kHAAA,wBAAwB,OAAA;AAExB,oGAAA,UAAU,OAAA;AAIZ,MAAM,eAAe,GAAG,IAAI,uBAAS,CAAC;IACpC,IAAI,EAAE,mCAAmC;IACzC,IAAI,EAAE,0BAA0B;IAChC,UAAU,EAAE,CAAC,SAAS,CAAC;CACxB,CAAC,CAAC;AACH,MAAM,YAAY,GAAG,IAAI,qBAAO,CAAC;IAC/B,IAAI,EAAE,yBAAyB;IAC/B,IAAI,EAAE,2CAA2C;IACjD,UAAU,EAAE,CAAC,SAAS,CAAC;CACxB,CAAC,CAAC;AACH,MAAM,YAAY,GAAG,IAAI,qBAAO,CAAC;IAC/B,IAAI,EAAE,yBAAyB;IAC/B,IAAI,EAAE,2CAA2C;IACjD,UAAU,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC;CAChC,CAAC,CAAC;AAEH,MAAM,eAAgB,SAAQ,KAAK;IACjC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAClC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,OAAO,KAAK,CAAC,iBAAiB,KAAK,UAAU,EAAE,CAAC;YAClD,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAClD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC;QACxC,CAAC;IACH,CAAC;CACF;AAED,MAAa,QAAS,SAAQ,eAAe;IAK3C,YAAY,WAAmB,EAAE,UAAkB,EAAE,KAAY;QAC/D,KAAK,CACH,4CAA4C,WAAW,IAAI,UAAU,EAAE,CACxE,CAAC;QACF,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;CACF;AAbD,4BAaC;AAED,SAAS,cAAc,CACrB,cAAmC;IAEnC,OAAO;QACL,WAAW,EAAE,cAAc,CAAC,OAAO;QACnC,QAAQ,EAAE,KAAK;QACf,IAAI,EAAE,cAAc,CAAC,IAAI,IAAI,cAAc,CAAC,OAAO,GAAG,UAAU;QAChE,WAAW,EAAE,cAAc,CAAC,WAAW;QACvC,UAAU,EAAE,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAqB,EAAE,EAAE;YAC9D,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC/B,MAAM,IAAI,KAAK,CACb,8EAA8E,CAC/E,CAAC;YACJ,CAAC;YACD,MAAM,EACJ,UAAU,EACV,aAAa,GAAG,KAAK,EACrB,IAAI,EACJ,UAAU,GAAG,EAAE,EACf,cAAc,EACd,eAAe,GAChB,GAAG,MAAM,CAAC;YAEX,OAAO;gBACL,UAAU;gBACV,UAAU;gBACV,aAAa;gBACb,IAAI,EAAE,IAAI,IAAI,UAAU,GAAG,SAAS;gBACpC,cAAc;gBACd,eAAe;aAChB,CAAC;QACJ,CAAC,CAAC;KACH,CAAC;AACJ,CAAC;AAUD,SAAgB,oBAAoB,CAClC,QAA2B,EAC3B,OAAqC;IAErC,MAAM,EAAE,MAAM,GAAG,KAAK,EAAE,GAAG,OAAO,IAAI,EAAE,CAAC;IAEzC,IAAI,MAAM,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAChE,CAAC;IAED,MAAM,YAAY,GAAG,IAAI,GAAG,EAA0B,CAAC;IACvD,MAAM,WAAW,GAAG,IAAI,GAAG,EAA0B,CAAC;IAEtD,MAAM,IAAI,GAAG;QACX,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;KACrE,CAAC;IAEF,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAChC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjB,CAAC,CAAC,CAAC;IAEH,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;QACzC,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CACpC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,WAAW,CACrC,CAAC;QAEF,WAAW,CAAC,GAAG,CAAC,IAAI,WAAW,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YAC9C,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACxB,CAAC,CAAC,CAAC;QAEH,KAAK,MAAM,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YAC5C,MAAM,EAAE,UAAU,EAAE,GAAG,SAAS,CAAC;YACjC,MAAM,UAAU,GAAG,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,UAAU,CAAC,IAAI,CAC7C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,UAAU,CACnC,CAAC;YAEF,MAAM,UAAU,GAAmB,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;gBAC9C,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACvB,CAAC,CAAC;YACF,WAAW,CAAC,GAAG,CAAC,IAAI,WAAW,IAAI,UAAU,EAAE,EAAE,UAAU,CAAC,CAAC;YAC7D,IAAI,MAAM,EAAE,CAAC;gBACX,WAAW,CAAC,GAAG,CAAC,IAAI,UAAU,EAAE,EAAE,UAAU,CAAC,CAAC;YAChD,CAAC;YAED,MAAM,WAAW,GAAG,EAAE,OAAO,EAAE,GAAG,WAAW,IAAI,UAAU,EAAE,EAAE,CAAC;YAEhE,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAClC,YAAY,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;YACjC,YAAY,CAAC,GAAG,iBAAG,IAAI,EAAE,QAAQ,IAAK,WAAW,GAAI,CAAC,CAAC,CAAC;YAExD,MAAM,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,IAAI,CACtD,OAAO,CAAC,cAAc,CACvB,CAAC;YAEF,MAAM,WAAW,GAAmB,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;gBAC3D,MAAM,GAAG,GAAG,eAAe,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;gBAEpD,IAAI,SAAS,GAAqB,IAAI,CAAC;gBACvC,IAAI,CAAC;oBACH,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;oBAE9B,MAAM,eAAe,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC;oBAEjE,IAAI,eAAe,EAAE,CAAC;wBACpB,SAAS,GAAG,OAAO,CAAC,YAAY,CAC9B,OAAO,CAAC,UAAU,EAClB,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAC5B,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;oBACpD,CAAC;oBAED,MAAM,GAAG,GAAG,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,EAAE;wBAC5C,CAAC,OAAO,CAAC,YAAY,CAAC,EACpB,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;4BAClC,IAAA,oBAAW,EAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC;qBACvC,CAAC,CAAC;oBAEH,IAAA,qBAAU,EAAC,GAAU,EAAE,GAAG,EAAE,CAAC,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,EAAE,CAAC,CAAC;oBAEjD,wBAAe,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;oBACnC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBAExC,kDAAkD;oBAClD,GAAG,CAAC,IAAI,CAAC,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,IAAI,CAAC,CAAC;gBAC3B,CAAC;gBAAC,OAAO,GAAQ,EAAE,CAAC;oBAClB,YAAY,CAAC,GAAG,iBAAG,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,QAAQ,IAAK,WAAW,EAAG,CAAC;oBACjE,IAAI,CAAC,IAAI,QAAQ,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC;gBACnD,CAAC;wBAAS,CAAC;oBACT,GAAG,EAAE,CAAC;oBACN,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,EAAE,CAAC;gBACrB,CAAC;YACH,CAAC,CAAC;YAEF,YAAY,CAAC,GAAG,CAAC,IAAI,WAAW,IAAI,UAAU,EAAE,EAAE,WAAW,CAAC,CAAC;YAC/D,IAAI,MAAM,EAAE,CAAC;gBACX,YAAY,CAAC,GAAG,CAAC,IAAI,UAAU,EAAE,EAAE,WAAW,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAC9B,IAAI,OAAmC,CAAC;QACxC,QAAQ,GAAG,CAAC,MAAM,EAAE,CAAC;YACnB,KAAK,KAAK;gBACR,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACpC,MAAM;YACR,KAAK,MAAM;gBACT,OAAO,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACrC,MAAM;QACV,CAAC;QAED,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,IAAI,EAAE,CAAC;QAChB,CAAC;QAED,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;IAC1B,CAAC,CAAC;AACJ,CAAC;AAED,SAAgB,kBAAkB,CAChC,OAAwC,EAAE;IAE1C,MAAM,EAAE,GAAG,GAAG,GAAG,EAAE,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC;IAEvC,uEAAuE;IACvE,0FAA0F;IAC1F,6DAA6D;IAC7D,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAC7B,mFAAmF;QACnF,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;YACpB,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;QAED,MAAM,MAAM,GAAG,GAAG,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;QAEtD,IAAI,CAAC,CAAC,GAAG,YAAY,QAAQ,CAAC,EAAE,CAAC;YAC/B,GAAG,CAAC,4BAA4B,MAAM,KAAK,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YACvE,mEAAmE;YACnE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YAC/C,OAAO;QACT,CAAC;QAED,GAAG,CAAC,mBAAmB,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;QAErD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YACpB,GAAG,CACD,8BAA8B,MAAM,UAAU,GAAG,CAAC,KAAK,CAAC,IAAI,UAAU,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CACvF,CAAC;YACF,mEAAmE;YACnE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACnB,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO;gBAC1B,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI;aACrB,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,mEAAmE;QACnE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,KAAK,CAAC,CAAgC;IAC7C,IAAI,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IACzB,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACrC,CAAC"}
|
package/dist/schema.d.ts
CHANGED
|
@@ -15,7 +15,7 @@ export interface MethodDetails<Req, Res, Def extends Record<string, unknown> = R
|
|
|
15
15
|
type Methods<S extends Service, Def extends Record<string, unknown> = Record<string, never>> = {
|
|
16
16
|
[K in keyof S]?: MethodDetails<Parameters<S[K]>[0], Awaited<ReturnType<S[K]>>, Def>;
|
|
17
17
|
};
|
|
18
|
-
type ContextMethods<S extends ContextService, Def extends Record<string, unknown> = Record<string, never>> = {
|
|
18
|
+
export type ContextMethods<S extends ContextService, Def extends Record<string, unknown> = Record<string, never>> = {
|
|
19
19
|
[K in keyof S]?: MethodDetails<Parameters<S[K]>[1], Awaited<ReturnType<S[K]>>, Def>;
|
|
20
20
|
};
|
|
21
21
|
interface Logger {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@loke/http-rpc",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.7.0",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"devDependencies": {
|
|
30
30
|
"@loke/errors": "^0.6.0",
|
|
31
31
|
"@types/body-parser": "^1.19.5",
|
|
32
|
-
"@types/express": "^
|
|
32
|
+
"@types/express": "^5.0.3",
|
|
33
33
|
"@types/node": "^20.16.5",
|
|
34
34
|
"@types/on-finished": "^2.3.4",
|
|
35
35
|
"@typescript-eslint/eslint-plugin": "^8.5.0",
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
"body-parser": "^1.20.3",
|
|
39
39
|
"eslint": "^8.57.0",
|
|
40
40
|
"eslint-plugin-ava": "^14.0.0",
|
|
41
|
-
"express": "^
|
|
41
|
+
"express": "^5.1.0",
|
|
42
42
|
"got": "^11.8.6",
|
|
43
43
|
"prettier": "^3.3.3",
|
|
44
44
|
"prom-client": "^15.1.3",
|