Documentation
¶
Index ¶
- func NewExecutableSchema(cfg Config) graphql.ExecutableSchema
- func NewGraphHandler(conf *conf.Config, dbQuerier *dao.DAO, authService *auth.Service) http.Handler
- type ComplexityRoot
- type Config
- type DirectiveRoot
- type ExpenseResolver
- type MutationResolver
- type QueryResolver
- type Resolver
- type ResolverRoot
- type UserResolver
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewExecutableSchema ¶
func NewExecutableSchema(cfg Config) graphql.ExecutableSchema
NewExecutableSchema creates an ExecutableSchema from the ResolverRoot interface.
Types ¶
type ComplexityRoot ¶
type ComplexityRoot struct { Expense struct { Amount func(childComplexity int) int CreatedAt func(childComplexity int) int Description func(childComplexity int) int ID func(childComplexity int) int WalletID func(childComplexity int) int } Mutation struct { AdminCreate func(childComplexity int, newAdmin model.NewUser) int CreateWallet func(childComplexity int, input model.CreateWalletInput) int SelfCheck func(childComplexity int) int UserAssignRoles func(childComplexity int, email string, newRoles []auth.RoleID) int UserCreate func(childComplexity int, newUser model.NewUser) int UserSetPassword func(childComplexity int, userID string, newPassword string) int } Query struct { GetUser func(childComplexity int, email string) int GetUserRoles func(childComplexity int, userID string) int ListExpenses func(childComplexity int, walletID string) int ListExpensesByUserID func(childComplexity int, userID string, walletID string) int ListUsers func(childComplexity int) int ListWallets func(childComplexity int) int ListWalletsByUserID func(childComplexity int, userID string) int Login func(childComplexity int, email string, pass string) int Ping func(childComplexity int) int } Role struct { Role func(childComplexity int) int UserID func(childComplexity int) int } User struct { DisplayName func(childComplexity int) int Email func(childComplexity int) int ID func(childComplexity int) int Roles func(childComplexity int) int } Wallet struct { CreatedAt func(childComplexity int) int Currency func(childComplexity int) int ID func(childComplexity int) int UserID func(childComplexity int) int } }
type Config ¶
type Config struct { Schema *ast.Schema Resolvers ResolverRoot Directives DirectiveRoot Complexity ComplexityRoot }
type DirectiveRoot ¶
type ExpenseResolver ¶
type MutationResolver ¶
type MutationResolver interface { SelfCheck(ctx context.Context) (bool, error) UserSetPassword(ctx context.Context, userID string, newPassword string) (*auth.User, error) UserCreate(ctx context.Context, newUser model.NewUser) (*auth.User, error) AdminCreate(ctx context.Context, newAdmin model.NewUser) (*auth.User, error) UserAssignRoles(ctx context.Context, email string, newRoles []auth.RoleID) ([]auth.RoleID, error) CreateWallet(ctx context.Context, input model.CreateWalletInput) ([]*dao.Wallet, error) }
type QueryResolver ¶
type QueryResolver interface { Ping(ctx context.Context) (string, error) Login(ctx context.Context, email string, pass string) (*string, error) GetUserRoles(ctx context.Context, userID string) ([]auth.RoleID, error) ListUsers(ctx context.Context) ([]*auth.User, error) GetUser(ctx context.Context, email string) (*auth.User, error) ListWallets(ctx context.Context) ([]*dao.Wallet, error) ListWalletsByUserID(ctx context.Context, userID string) ([]*dao.Wallet, error) ListExpenses(ctx context.Context, walletID string) ([]*dao.Expense, error) ListExpensesByUserID(ctx context.Context, userID string, walletID string) ([]*dao.Expense, error) }
type Resolver ¶
func (*Resolver) Expense ¶
func (r *Resolver) Expense() ExpenseResolver
Expense returns ExpenseResolver implementation.
func (*Resolver) Mutation ¶
func (r *Resolver) Mutation() MutationResolver
Mutation returns MutationResolver implementation.
func (*Resolver) Query ¶
func (r *Resolver) Query() QueryResolver
Query returns QueryResolver implementation.
func (*Resolver) User ¶
func (r *Resolver) User() UserResolver
User returns UserResolver implementation.
type ResolverRoot ¶
type ResolverRoot interface { Expense() ExpenseResolver Mutation() MutationResolver Query() QueryResolver User() UserResolver }
Source Files
¶
Click to show internal directories.
Click to hide internal directories.