// SPDX-License-Identifier: AGPL-3.0-or-later // Package middleware provides HTTP middleware for auth, security, and request processing. package middleware import "net/http" // Chain wraps a handler with a stack of middleware, applied in order // (the last middleware listed is the outermost wrapper). func Chain(h http.Handler, middlewares ...func(http.Handler) http.Handler) http.Handler { for _, m := range middlewares { h = m(h) } return h }