refactor: move config related code into dedicated package
This commit is contained in:
@ -17,6 +17,7 @@ import (
|
||||
"github.com/99designs/gqlgen/graphql/handler/transport"
|
||||
"github.com/99designs/gqlgen/graphql/playground"
|
||||
"github.com/google/uuid"
|
||||
"github.com/jordanknott/taskcafe/internal/config"
|
||||
"github.com/jordanknott/taskcafe/internal/db"
|
||||
"github.com/jordanknott/taskcafe/internal/logger"
|
||||
"github.com/jordanknott/taskcafe/internal/utils"
|
||||
@ -25,11 +26,11 @@ import (
|
||||
)
|
||||
|
||||
// NewHandler returns a new graphql endpoint handler.
|
||||
func NewHandler(repo db.Repository, emailConfig utils.EmailConfig) http.Handler {
|
||||
func NewHandler(repo db.Repository, appConfig config.AppConfig) http.Handler {
|
||||
c := Config{
|
||||
Resolvers: &Resolver{
|
||||
Repository: repo,
|
||||
EmailConfig: emailConfig,
|
||||
Repository: repo,
|
||||
AppConfig: appConfig,
|
||||
},
|
||||
}
|
||||
c.Directives.HasRole = func(ctx context.Context, obj interface{}, next graphql.Resolver, roles []RoleLevel, level ActionLevel, typeArg ObjectType) (interface{}, error) {
|
||||
|
@ -130,7 +130,7 @@ func (r *mutationResolver) InviteProjectMembers(ctx context.Context, input Invit
|
||||
return &InviteProjectMembersPayload{Ok: false}, err
|
||||
}
|
||||
invite := utils.EmailInvite{To: *invitedMember.Email, FullName: *invitedMember.Email, ConfirmToken: confirmToken.ConfirmTokenID.String()}
|
||||
err = utils.SendEmailInvite(r.EmailConfig, invite)
|
||||
err = utils.SendEmailInvite(r.AppConfig.Email, invite)
|
||||
if err != nil {
|
||||
logger.New(ctx).WithError(err).Error("issue sending email")
|
||||
return &InviteProjectMembersPayload{Ok: false}, err
|
||||
|
@ -6,13 +6,13 @@ package graph
|
||||
import (
|
||||
"sync"
|
||||
|
||||
"github.com/jordanknott/taskcafe/internal/config"
|
||||
"github.com/jordanknott/taskcafe/internal/db"
|
||||
"github.com/jordanknott/taskcafe/internal/utils"
|
||||
)
|
||||
|
||||
// Resolver handles resolving GraphQL queries & mutations
|
||||
type Resolver struct {
|
||||
Repository db.Repository
|
||||
EmailConfig utils.EmailConfig
|
||||
mu sync.Mutex
|
||||
Repository db.Repository
|
||||
AppConfig config.AppConfig
|
||||
mu sync.Mutex
|
||||
}
|
||||
|
Reference in New Issue
Block a user