MAKITASSO
This sliver is hydrated on the client.
HELIO CALMA AE COM O SECSU
Marcel
All operations on resources go through the Handlers system β an onion/middleware model where each handler can run before, after, or produce the response. Handlers use next() to delegate to the next handler in the chain.
resource/
βββ types.ts Resource, ResourceStore, User
βββ result.ts HandlerResult, ok(), fail(), isError()
βββ handlers.ts createHandlers() β onion/next() model
βββ matcher.ts createMatcher() β pattern matching
βββ engine.ts createResourceEngine() + ResourceEngine interface
βββ http.ts createHttpHandler() + resultToResponse()
βββ index.ts barrel exportsThis sliver is hydrated on the client.
HTTP Request
β createHttpHandler(engine)
β path = URL pathname (JCR-style)
β action = ?action= or 'default'
β engine.resolve(path) [virtuals β D1 store]
β handlers.execute({ method, action, resource })
β onion chain: auth β validate β handler β audit
β HandlerResult β resultToResponse() β ResponseHandlers use the onion/next() pattern. Priority determines wrapping order: highest priority = outermost layer. Handlers return HandlerResult β ok(data) or fail(error) β not Response objects.