package requestctx import ( "context" "github.com/google/uuid" "github.com/nexavpn/nexavpn/backend/internal/auth" ) type contextKey string const claimsKey contextKey = "claims" func WithClaims(ctx context.Context, claims auth.Claims) context.Context { return context.WithValue(ctx, claimsKey, claims) } func ClaimsFromContext(ctx context.Context) (auth.Claims, bool) { claims, ok := ctx.Value(claimsKey).(auth.Claims) return claims, ok } func MustUserID(ctx context.Context) (uuid.UUID, bool) { claims, ok := ClaimsFromContext(ctx) if !ok { return uuid.Nil, false } return claims.UserID, true }