No Angular or DOM imports — safe for pure-Node (backend) bundles.
Handlers extend Service, receive a rendering-engine facade as a
protected readonly property and implement handle, either returning the
resolved value or throwing (a CancelledError when the user cancels
mid-request). Lookup and dispatch are static: @userRequest(reference)
records the class as metadata and UserRequestHandler.getHandler(reference)
/ UserRequestHandler.handle(request, renderingEngine) resolve and run it,
so no process-wide registry instance is needed.
Classes
- UserRequestHandler
Service-based base class implementing the user request lifecycle.
Interfaces
- UserRequestLogContext
Contextual surface returned by
UserRequestHandler.logCtx(*, *, true).