@nwire/handler 0.8.0 → 0.9.1
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/README.md +183 -68
- package/dist/define-error.d.ts +33 -27
- package/dist/define-error.d.ts.map +1 -1
- package/dist/define-error.js +27 -19
- package/dist/define-error.js.map +1 -1
- package/dist/define-handler.d.ts +146 -107
- package/dist/define-handler.d.ts.map +1 -1
- package/dist/define-handler.js +139 -83
- package/dist/define-handler.js.map +1 -1
- package/dist/define-middleware.js +4 -3
- package/dist/define-middleware.js.map +1 -1
- package/dist/handler-index.d.ts +17 -22
- package/dist/handler-index.d.ts.map +1 -1
- package/dist/handler-index.js +16 -21
- package/dist/handler-index.js.map +1 -1
- package/package.json +4 -7
|
@@ -53,14 +53,15 @@ export function pipe(...args) {
|
|
|
53
53
|
else
|
|
54
54
|
flattened.push(s);
|
|
55
55
|
}
|
|
56
|
-
const hookName = name ??
|
|
57
|
-
($source ? `pipe@${$source.file}:${$source.line}` : "pipe@<unknown>");
|
|
56
|
+
const hookName = name ?? ($source ? `pipe@${$source.file}:${$source.line}` : "pipe@<unknown>");
|
|
58
57
|
const $hook = hook(hookName);
|
|
59
58
|
for (const step of flattened) {
|
|
60
59
|
if (step.$kind !== "middleware")
|
|
61
60
|
continue;
|
|
62
61
|
const stepName = step.name ?? "anonymous";
|
|
63
|
-
$hook.use(async (ctx, next) => {
|
|
62
|
+
$hook.use(async (ctx, next) => {
|
|
63
|
+
await step.fn(ctx, next);
|
|
64
|
+
}, { name: stepName });
|
|
64
65
|
}
|
|
65
66
|
return { $kind: "pipe", steps: flattened, name, $hook, $source };
|
|
66
67
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"define-middleware.js","sourceRoot":"","sources":["../src/define-middleware.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,IAAI,EAAE,qBAAqB,EAAkC,MAAM,cAAc,CAAC;AAwD3F,MAAM,UAAU,gBAAgB,CAC9B,QAA2E,EAC3E,EAA2D;IAE3D,MAAM,OAAO,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC;IACzC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACjC,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAG,EAAE,OAAO,EAAE,CAAC;IACnE,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;AACxD,CAAC;AAWD,MAAM,UAAU,UAAU,CACxB,IAAwB,EACxB,QAAiF,EACjF,OAAsE;IAEtE,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACjC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,OAAQ,EAAE,CAAC;IAC/D,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC;AAC/C,CAAC;AAeD,MAAM,UAAU,IAAI,CAAC,GAAG,IAAwC;IAC9D,MAAM,OAAO,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAEzC,IAAI,IAAwB,CAAC;IAC7B,IAAI,KAAiB,CAAC;IACtB,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QAChC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACf,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAe,CAAC;IACtC,CAAC;SAAM,CAAC;QACN,KAAK,GAAG,IAAkB,CAAC;IAC7B,CAAC;IAED,MAAM,SAAS,GAAiD,EAAE,CAAC;IACnE,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;YAAE,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;;YAC9C,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC;IAED,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"file":"define-middleware.js","sourceRoot":"","sources":["../src/define-middleware.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,IAAI,EAAE,qBAAqB,EAAkC,MAAM,cAAc,CAAC;AAwD3F,MAAM,UAAU,gBAAgB,CAC9B,QAA2E,EAC3E,EAA2D;IAE3D,MAAM,OAAO,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC;IACzC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACjC,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAG,EAAE,OAAO,EAAE,CAAC;IACnE,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;AACxD,CAAC;AAWD,MAAM,UAAU,UAAU,CACxB,IAAwB,EACxB,QAAiF,EACjF,OAAsE;IAEtE,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACjC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,OAAQ,EAAE,CAAC;IAC/D,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC;AAC/C,CAAC;AAeD,MAAM,UAAU,IAAI,CAAC,GAAG,IAAwC;IAC9D,MAAM,OAAO,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAEzC,IAAI,IAAwB,CAAC;IAC7B,IAAI,KAAiB,CAAC;IACtB,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QAChC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACf,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAe,CAAC;IACtC,CAAC;SAAM,CAAC;QACN,KAAK,GAAG,IAAkB,CAAC;IAC7B,CAAC;IAED,MAAM,SAAS,GAAiD,EAAE,CAAC;IACnE,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM;YAAE,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;;YAC9C,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;IAE/F,MAAM,KAAK,GAAG,IAAI,CAAc,QAAQ,CAAC,CAAC;IAC1C,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;QAC7B,IAAI,IAAI,CAAC,KAAK,KAAK,YAAY;YAAE,SAAS;QAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,IAAI,WAAW,CAAC;QAC1C,KAAK,CAAC,GAAG,CACP,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;YAClB,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAC3B,CAAC,EACD,EAAE,IAAI,EAAE,QAAQ,EAAE,CACnB,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AACnE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,UAAU,CAAC,KAA8B;IAKvD,MAAM,WAAW,GAA2B,EAAE,CAAC;IAC/C,MAAM,WAAW,GAAqB,EAAE,CAAC;IACzC,MAAM,UAAU,GAAqB,EAAE,CAAC;IACxC,MAAM,KAAK,GAAG,CAAC,CAAW,EAAE,EAAE;QAC5B,IAAI,CAAC,CAAC,KAAK,KAAK,YAAY;YAAE,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aAC7C,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;YAC5B,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ;gBAAE,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;;gBACxC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC1B,CAAC;aAAM,CAAC;YACN,KAAK,MAAM,KAAK,IAAI,CAAC,CAAC,KAAK;gBAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC,CAAC;IACF,KAAK,MAAM,CAAC,IAAI,KAAK;QAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IAChC,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;AAClD,CAAC;AAED,oBAAoB;AACpB,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAU,EAA6B,EAAE,CACpE,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAK,CAAyB,CAAC,KAAK,KAAK,YAAY,CAAC;AAE3F,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,CAAU,EAAuB,EAAE,CACxD,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAK,CAAyB,CAAC,KAAK,KAAK,MAAM,CAAC;AAErF,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,CAAU,EAAuB,EAAE,CACxD,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAK,CAAyB,CAAC,KAAK,KAAK,MAAM,CAAC"}
|
package/dist/handler-index.d.ts
CHANGED
|
@@ -1,27 +1,20 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* `@nwire/handler` — the operation primitive.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
* `@nwire/forge` re-exports the same names so existing call sites keep
|
|
11
|
-
* compiling unchanged. Forge layers `defineAction = defineHandler +
|
|
12
|
-
* { flavor: "action", emits }` on top — same primitive, additional
|
|
13
|
-
* semantics for the event-driven path.
|
|
4
|
+
* A handler is a typed, callable, hookable value built on `@nwire/hooks`.
|
|
5
|
+
* One value, every transport (HTTP, queue, MCP, CLI, direct test) —
|
|
6
|
+
* standalone, no DI, no events, no logger, no transport opinions. Ctx is
|
|
7
|
+
* generic; the app pins `TExtras` via `defineHandlerWith<TExtras>()` once
|
|
8
|
+
* at the boot site and every handler reads `ctx` as the bound shape with
|
|
9
|
+
* full autocomplete, zero per-call annotations.
|
|
14
10
|
*
|
|
15
11
|
* Public surface:
|
|
16
12
|
*
|
|
17
13
|
* Primitives
|
|
18
|
-
* defineHandler(name, config)
|
|
19
|
-
*
|
|
20
|
-
* defineError(meta)
|
|
21
|
-
* defineResource(name, opts)
|
|
22
|
-
* defineMiddleware — chain step
|
|
23
|
-
* defineHook — before/after-only step
|
|
24
|
-
* pipe(...steps) — compose chain
|
|
14
|
+
* defineHandler(name, config) — the operation primitive
|
|
15
|
+
* defineHandlerWith<TExtras>() — app-boundary factory binding
|
|
16
|
+
* defineError(meta) — typed throwable
|
|
17
|
+
* defineResource(name, opts) — interface/response shape
|
|
25
18
|
*
|
|
26
19
|
* Response factories
|
|
27
20
|
* ok / ok.list / created / accepted / noContent / notModified / gone
|
|
@@ -30,12 +23,14 @@
|
|
|
30
23
|
* Unauthorized / Forbidden / NotFound / Conflict / Gone / BadRequest
|
|
31
24
|
*
|
|
32
25
|
* Types
|
|
33
|
-
* HandlerDefinition / HandlerConfig /
|
|
34
|
-
*
|
|
26
|
+
* HandlerDefinition / HandlerConfig / Ctx / HandlerBaseCtx
|
|
27
|
+
* HandlerRunCtx / PreparedOp / HandlerLike
|
|
28
|
+
* HandlerMeta / HandlerSettings (empty bags — extend via declaration merging)
|
|
29
|
+
* HandlerInput<H> / HandlerOutput<H> / HandlerExtras<H>
|
|
30
|
+
* ResponseInstance / ResponseSpec / NwireError
|
|
35
31
|
*/
|
|
36
|
-
export { defineHandler,
|
|
32
|
+
export { defineHandler, defineHandlerWith, isHandlerDefinition, type HandlerDefinition, type HandlerConfig, type HandlerBaseCtx, type Ctx, type HandlerMeta, type HandlerSettings, type HandlerReturnsSpec, type HandlerRunCtx, type HandlerLike, type PreparedOp, type PreparedOpRunOptions, type HandlerInput, type HandlerOutput, type HandlerExtras, type InferInput, type ResponseInstance, } from "./define-handler.js";
|
|
37
33
|
export { defineError, isNwireError, NwireError, Unauthorized, Forbidden, NotFound, Gone, BadRequest, Conflict, type ErrorDefinition, type ErrorMeta, } from "./define-error.js";
|
|
38
34
|
export { defineResource, isResourceDefinition, type ResourceDefinition, type DefineResourceOptions, } from "./define-resource.js";
|
|
39
|
-
export {
|
|
40
|
-
export { response, isResponseSpec, isResponseInstance, ok, created, accepted, noContent, notModified, gone, type ResponseSpec, type ListResponseSpec, type ResponseInstance, type ResponseSpecBase, type ResponseKind, } from "./response.js";
|
|
35
|
+
export { response, isResponseSpec, isResponseInstance, ok, created, accepted, noContent, notModified, gone, type ResponseSpec, type ListResponseSpec, type ResponseSpecBase, type ResponseKind, } from "./response.js";
|
|
41
36
|
//# sourceMappingURL=handler-index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler-index.d.ts","sourceRoot":"","sources":["../src/handler-index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"handler-index.d.ts","sourceRoot":"","sources":["../src/handler-index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,GAAG,EACR,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,oBAAoB,EACzB,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,KAAK,gBAAgB,GACtB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,WAAW,EACX,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,SAAS,EACT,QAAQ,EACR,IAAI,EACJ,UAAU,EACV,QAAQ,EACR,KAAK,eAAe,EACpB,KAAK,SAAS,GACf,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,GAC3B,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,QAAQ,EACR,cAAc,EACd,kBAAkB,EAClB,EAAE,EACF,OAAO,EACP,QAAQ,EACR,SAAS,EACT,WAAW,EACX,IAAI,EACJ,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,YAAY,GAClB,MAAM,eAAe,CAAC"}
|
package/dist/handler-index.js
CHANGED
|
@@ -1,27 +1,20 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* `@nwire/handler` — the operation primitive.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
* `@nwire/forge` re-exports the same names so existing call sites keep
|
|
11
|
-
* compiling unchanged. Forge layers `defineAction = defineHandler +
|
|
12
|
-
* { flavor: "action", emits }` on top — same primitive, additional
|
|
13
|
-
* semantics for the event-driven path.
|
|
4
|
+
* A handler is a typed, callable, hookable value built on `@nwire/hooks`.
|
|
5
|
+
* One value, every transport (HTTP, queue, MCP, CLI, direct test) —
|
|
6
|
+
* standalone, no DI, no events, no logger, no transport opinions. Ctx is
|
|
7
|
+
* generic; the app pins `TExtras` via `defineHandlerWith<TExtras>()` once
|
|
8
|
+
* at the boot site and every handler reads `ctx` as the bound shape with
|
|
9
|
+
* full autocomplete, zero per-call annotations.
|
|
14
10
|
*
|
|
15
11
|
* Public surface:
|
|
16
12
|
*
|
|
17
13
|
* Primitives
|
|
18
|
-
* defineHandler(name, config)
|
|
19
|
-
*
|
|
20
|
-
* defineError(meta)
|
|
21
|
-
* defineResource(name, opts)
|
|
22
|
-
* defineMiddleware — chain step
|
|
23
|
-
* defineHook — before/after-only step
|
|
24
|
-
* pipe(...steps) — compose chain
|
|
14
|
+
* defineHandler(name, config) — the operation primitive
|
|
15
|
+
* defineHandlerWith<TExtras>() — app-boundary factory binding
|
|
16
|
+
* defineError(meta) — typed throwable
|
|
17
|
+
* defineResource(name, opts) — interface/response shape
|
|
25
18
|
*
|
|
26
19
|
* Response factories
|
|
27
20
|
* ok / ok.list / created / accepted / noContent / notModified / gone
|
|
@@ -30,12 +23,14 @@
|
|
|
30
23
|
* Unauthorized / Forbidden / NotFound / Conflict / Gone / BadRequest
|
|
31
24
|
*
|
|
32
25
|
* Types
|
|
33
|
-
* HandlerDefinition / HandlerConfig /
|
|
34
|
-
*
|
|
26
|
+
* HandlerDefinition / HandlerConfig / Ctx / HandlerBaseCtx
|
|
27
|
+
* HandlerRunCtx / PreparedOp / HandlerLike
|
|
28
|
+
* HandlerMeta / HandlerSettings (empty bags — extend via declaration merging)
|
|
29
|
+
* HandlerInput<H> / HandlerOutput<H> / HandlerExtras<H>
|
|
30
|
+
* ResponseInstance / ResponseSpec / NwireError
|
|
35
31
|
*/
|
|
36
|
-
export { defineHandler,
|
|
32
|
+
export { defineHandler, defineHandlerWith, isHandlerDefinition, } from "./define-handler.js";
|
|
37
33
|
export { defineError, isNwireError, NwireError, Unauthorized, Forbidden, NotFound, Gone, BadRequest, Conflict, } from "./define-error.js";
|
|
38
34
|
export { defineResource, isResourceDefinition, } from "./define-resource.js";
|
|
39
|
-
export { defineMiddleware, defineHook, pipe, unwindPipe, isMiddleware, isHook, isPipe, } from "./define-middleware.js";
|
|
40
35
|
export { response, isResponseSpec, isResponseInstance, ok, created, accepted, noContent, notModified, gone, } from "./response.js";
|
|
41
36
|
//# sourceMappingURL=handler-index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler-index.js","sourceRoot":"","sources":["../src/handler-index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"handler-index.js","sourceRoot":"","sources":["../src/handler-index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,mBAAmB,GAiBpB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,WAAW,EACX,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,SAAS,EACT,QAAQ,EACR,IAAI,EACJ,UAAU,EACV,QAAQ,GAGT,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,cAAc,EACd,oBAAoB,GAGrB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,QAAQ,EACR,cAAc,EACd,kBAAkB,EAClB,EAAE,EACF,OAAO,EACP,QAAQ,EACR,SAAS,EACT,WAAW,EACX,IAAI,GAKL,MAAM,eAAe,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nwire/handler",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "Nwire — the operation primitive.
|
|
3
|
+
"version": "0.9.1",
|
|
4
|
+
"description": "Nwire — the operation primitive. Typed, callable, hookable value built on @nwire/hooks. defineHandler / defineError / defineResource / response factories / framework errors. Standalone; every transport (HTTP, queue, MCP, CLI) speaks the same handler shape.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"execute",
|
|
7
7
|
"handler",
|
|
@@ -28,11 +28,8 @@
|
|
|
28
28
|
},
|
|
29
29
|
"dependencies": {
|
|
30
30
|
"zod": "^4.0.0",
|
|
31
|
-
"@nwire/
|
|
32
|
-
"@nwire/hooks": "0.
|
|
33
|
-
"@nwire/envelope": "0.8.0",
|
|
34
|
-
"@nwire/messages": "0.8.0",
|
|
35
|
-
"@nwire/logger": "0.8.0"
|
|
31
|
+
"@nwire/messages": "0.9.1",
|
|
32
|
+
"@nwire/hooks": "0.9.1"
|
|
36
33
|
},
|
|
37
34
|
"devDependencies": {
|
|
38
35
|
"@types/node": "^22.19.9",
|