Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AsProvider ¶
func InjectUser ¶ added in v0.4.0
func InjectUser(ctx context.Context, user *ResolvedUser) context.Context
Types ¶
type Middleware ¶
type Middleware struct {
// contains filtered or unexported fields
}
func NewMiddleware ¶
func NewMiddleware(params MiddlewareParams) *Middleware
func (*Middleware) Middleware ¶
func (m *Middleware) Middleware(ctx huma.Context, next func(ctx huma.Context))
type MiddlewareParams ¶
type Provider ¶
type Provider interface { SecurityScheme() *huma.SecurityScheme UserResolver(ctx huma.Context) (*ResolvedUser, error) AuthMiddleware(ctx huma.Context, next func(ctx huma.Context)) }
type Providers ¶
func NewProviders ¶
func NewProviders(params ProvidersParams) *Providers
func (*Providers) HydrateOas3 ¶
func (p *Providers) HydrateOas3(doc *huma.OpenAPI)
type ProvidersParams ¶
type ResolvedUser ¶
type ResolvedUser struct { ProviderName string ProviderId string Username string Firstname string Lastname string Email string IsEmailVerified bool Avatar string IsAdmin bool }
func UserFromContext ¶ added in v0.4.0
func UserFromContext(ctx context.Context) *ResolvedUser
func (*ResolvedUser) ProviderUUID ¶ added in v0.4.0
func (r *ResolvedUser) ProviderUUID() uuid.UUID
func (*ResolvedUser) Resolve ¶
func (r *ResolvedUser) Resolve(ctx huma.Context) []error
Click to show internal directories.
Click to hide internal directories.