package session import ( "context" "tangled.org/core/appview/oauth" ) type ctxKey struct{} func IntoContext(ctx context.Context, sess Session) context.Context { return context.WithValue(ctx, ctxKey{}, &sess) } func FromContext(ctx context.Context) (*Session, bool) { sess, ok := ctx.Value(ctxKey{}).(*Session) return sess, ok } // UserFromContext returns optional MultiAccountUser from context. func UserFromContext(ctx context.Context) *oauth.MultiAccountUser { sess, ok := ctx.Value(ctxKey{}).(*Session) if !ok { return nil } return sess.User }