queries

package
v0.0.0-...-52092a1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 24, 2024 License: AGPL-3.0 Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ClubByIDQuery

type ClubByIDQuery struct {
	ID domain.ClubID
}

type ClubBySlugQuery

type ClubBySlugQuery struct {
	Slug string
}

type ClubView

type ClubView struct {
	ID        eventing.AggregateID
	Name      string
	Slug      string
	CreatedAt time.Time
	UpdatedAt time.Time
	// contains filtered or unexported fields
}

func (*ClubView) Query

func (c *ClubView) Query() eventing.JournalQuery

func (*ClubView) Reduce

func (c *ClubView) Reduce(events []*eventing.JournalEvent)

type DescribePendingPersonLinkQuery

type DescribePendingPersonLinkQuery struct {
	LinkToken domain.PersonLinkToken
}

type GetPersonOverviewQuery

type GetPersonOverviewQuery struct {
	ID domain.PersonID
}

type GetTeamOverviewQuery

type GetTeamOverviewQuery struct {
	TeamSlug string
}

type ListPersonsInClubQuery

type ListPersonsInClubQuery struct {
	OwningClubID domain.ClubID
}

type ListTeamMembersQuery

type ListTeamMembersQuery struct {
	TeamID domain.TeamID
}

type ListTeamMembersView

type ListTeamMembersView struct {
	MembersByPersonID map[domain.PersonID]teamMember
	// contains filtered or unexported fields
}

func (*ListTeamMembersView) Query

func (*ListTeamMembersView) Reduce

func (v *ListTeamMembersView) Reduce(events []*eventing.JournalEvent)

type ListTeamsQuery

type ListTeamsQuery struct {
	OwningClubID domain.ClubID
}

type ListTeamsView

type ListTeamsView struct {
	TeamsById map[domain.TeamID]struct {
		ID        domain.TeamID
		Name      string
		Slug      string
		CreatedAt time.Time
		UpdatedAt time.Time
	}
	// contains filtered or unexported fields
}

func (*ListTeamsView) Query

func (v *ListTeamsView) Query() eventing.JournalQuery

func (*ListTeamsView) Reduce

func (v *ListTeamsView) Reduce(events []*eventing.JournalEvent)

type PendingPersonLinkView

type PendingPersonLinkView struct {
	FullName  string
	LinkAs    domain.AccountLink
	InvitedBy operatorView
	Club      *pendingPersonLinkClubView
}

type PersonOverview

type PersonOverview struct {
	ID                  domain.PersonID
	FirstName           string
	LastName            string
	Birthdate           time.Time
	CreatedAt           time.Time
	CreatedBy           operatorView
	LinkedAccounts      []*linkedAccountView
	PendingAccountLinks []*pendingAccountLinkView
	Teams               []*teamView
}

type PersonsInClubView

type PersonsInClubView struct {
	Persons []*personInClubView
}

type PersonsNotInTeamView

type PersonsNotInTeamView struct {
	Persons map[domain.PersonID]PersonsNotInTeamViewPerson
	// contains filtered or unexported fields
}

func (*PersonsNotInTeamView) Query

func (*PersonsNotInTeamView) Reduce

func (v *PersonsNotInTeamView) Reduce(events []*eventing.JournalEvent)

type PersonsNotInTeamViewPerson

type PersonsNotInTeamViewPerson struct {
	ID        domain.PersonID
	FirstName string
	LastName  string
}

type PrincipalBySessionTokenQuery

type PrincipalBySessionTokenQuery struct {
	Token domain.SessionToken
}

type Queries

type Queries struct {
	// contains filtered or unexported fields
}

func NewQueries

func NewQueries(
	log *slog.Logger,
	es eventing.EventStore,
	authorizer authz.Authorizer,
	rd rueidis.Client,
	repos domain.Repositories,
) *Queries

func (*Queries) ClubByID

func (q *Queries) ClubByID(ctx context.Context, query ClubByIDQuery) (*ClubView, error)

func (*Queries) ClubBySlug

func (q *Queries) ClubBySlug(ctx context.Context, query ClubBySlugQuery) (*ClubView, error)
func (q *Queries) DescribePendingPersonLink(ctx context.Context, query DescribePendingPersonLinkQuery) (*PendingPersonLinkView, error)

func (*Queries) GetPersonOverview

func (q *Queries) GetPersonOverview(ctx context.Context, query GetPersonOverviewQuery) (*PersonOverview, error)

func (*Queries) GetTeamOverview

func (q *Queries) GetTeamOverview(ctx context.Context, query GetTeamOverviewQuery) (*TeamOverviewView, error)

func (*Queries) ListPersonsInClub

func (q *Queries) ListPersonsInClub(ctx context.Context, query ListPersonsInClubQuery) (*PersonsInClubView, error)

func (*Queries) ListTeamMembers

func (q *Queries) ListTeamMembers(ctx context.Context, query ListTeamMembersQuery) (*ListTeamMembersView, error)

func (*Queries) ListTeams

func (q *Queries) ListTeams(ctx context.Context, query ListTeamsQuery) (*ListTeamsView, error)

func (*Queries) PrincipalBySessionToken

func (q *Queries) PrincipalBySessionToken(ctx context.Context, query PrincipalBySessionTokenQuery) (*domain.Principal, error)

PrincipalBySessionToken constructs the current authentication principal given a session ID.

func (*Queries) SearchPersonsNotInTeam

func (q *Queries) SearchPersonsNotInTeam(ctx context.Context, query SearchPersonsNotInTeamQuery) (*PersonsNotInTeamView, error)

type SearchPersonsNotInTeamQuery

type SearchPersonsNotInTeamQuery struct {
	TeamID domain.TeamID
	Query  string
}

type TeamOverviewView

type TeamOverviewView struct {
	Team struct {
		ID           domain.TeamID
		Name         string
		Slug         string
		OwningClubID domain.ClubID
		CreatedAt    time.Time
		UpdatedAt    time.Time
	}
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL