funcwareFromMiddleware
funcwareFromMiddleware<
E
>(middleware
:MiddlewareFunc
<E
>):Funcware
<(change
:E
) =>void
>
Defined in: ext/funcware/from-middleware.ts:71
Converts a classic middleware function into funcware (middleware for functional composition).
Use cases:
- Adapting middleware patterns to funcware-based systems
- Composing event handlers or state machine transitions with middleware logic
Type Parameters
Section titled “Type Parameters”Type Parameter | Description |
---|---|
E | The event or change type handled by the middleware |
Parameters
Section titled “Parameters”Parameter | Type | Description |
---|---|---|
middleware | MiddlewareFunc <E > | A classic middleware function accepting (event, next) |
Returns
Section titled “Returns”Funcware
<(change
: E
) => void
>
A funcware function that wraps the next handler with the middleware logic
Example
Section titled “Example”// Convert classic middleware to funcwareconst logger = (ev, next) => { console.log(ev); next(ev); };const funcwareLogger = funcwareFromMiddleware(logger);const handler = (ev) => console.log('Handled:', ev);funcwareLogger(handler)('event'); // Logs 'event' and 'Handled: event'
Source
Section titled “Source”This function is useful for integrating traditional middleware patterns into systems that use functional composition (funcware), such as state machines, event-driven architectures, or custom handler pipelines. It allows you to reuse existing middleware logic in a more composable way.
export function funcwareFromMiddleware<E>( middleware: MiddlewareFunc<E>): Funcware<(change: E) => void> { return (next) => (ev) => { return middleware(ev, next); };}