api

package
v0.5.3 Latest Latest
Warning

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

Go to latest
Published: Feb 29, 2024 License: MIT Imports: 42 Imported by: 0

Documentation

Index

Constants

View Source
const APIKeyHeader = "ApiKey"
View Source
const (
	ContextRepo key = iota
)

Variables

View Source
var (
	BaseURLCtxKey = &contextKey{"BaseURL"}
)
View Source
var ErrAlreadyUpdated = fmt.Errorf("Edits can only be updated once")
View Source
var ErrClosedEdit = fmt.Errorf("Votes can only be cast on pending edits")
View Source
var ErrUnauthorizedBot = fmt.Errorf("You do not have permission to submit bot edits")
View Source
var ErrUnauthorizedUpdate = fmt.Errorf("Only the creator can update edits")

Functions

func BaseURLMiddleware

func BaseURLMiddleware(next http.Handler) http.Handler

func GetVersion

func GetVersion() (string, string, string)

func HasRoleDirective added in v0.1.0

func HasRoleDirective(ctx context.Context, obj interface{}, next graphql.Resolver, role models.RoleEnum) (interface{}, error)

func InitializeSession added in v0.5.1

func InitializeSession()

func IsUserOwnerDirective added in v0.1.0

func IsUserOwnerDirective(ctx context.Context, obj interface{}, next graphql.Resolver) (interface{}, error)

func Start

func Start(rfp RepoProvider, ui embed.FS)

Types

type RepoProvider

type RepoProvider interface {
	// IMPORTANT: the returned Repo object MUST NOT be shared between goroutines.
	// that is: call Repo for each new request/goroutine
	Repo() models.Repo
}

type Resolver

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

func NewResolver

func NewResolver(repoFunc func(ctx context.Context) models.Repo) *Resolver

func (*Resolver) Draft added in v0.1.0

func (r *Resolver) Draft() models.DraftResolver

func (*Resolver) Edit

func (r *Resolver) Edit() models.EditResolver

func (*Resolver) EditComment

func (r *Resolver) EditComment() models.EditCommentResolver

func (*Resolver) EditVote added in v0.1.0

func (r *Resolver) EditVote() models.EditVoteResolver

func (*Resolver) Image

func (r *Resolver) Image() models.ImageResolver

func (*Resolver) Mutation

func (r *Resolver) Mutation() models.MutationResolver

func (*Resolver) Performer

func (r *Resolver) Performer() models.PerformerResolver

func (*Resolver) PerformerDraft added in v0.1.0

func (r *Resolver) PerformerDraft() models.PerformerDraftResolver

func (*Resolver) PerformerEdit

func (r *Resolver) PerformerEdit() models.PerformerEditResolver

func (*Resolver) Query

func (r *Resolver) Query() models.QueryResolver

func (*Resolver) QueryEditsResultType added in v0.1.0

func (r *Resolver) QueryEditsResultType() models.QueryEditsResultTypeResolver

func (*Resolver) QueryExistingSceneResult added in v0.3.0

func (r *Resolver) QueryExistingSceneResult() models.QueryExistingSceneResultResolver

func (*Resolver) QueryPerformersResultType added in v0.1.0

func (r *Resolver) QueryPerformersResultType() models.QueryPerformersResultTypeResolver

func (*Resolver) QueryScenesResultType added in v0.1.0

func (r *Resolver) QueryScenesResultType() models.QueryScenesResultTypeResolver

func (*Resolver) Scene

func (r *Resolver) Scene() models.SceneResolver

func (*Resolver) SceneDraft added in v0.1.0

func (r *Resolver) SceneDraft() models.SceneDraftResolver

func (*Resolver) SceneEdit added in v0.1.0

func (r *Resolver) SceneEdit() models.SceneEditResolver

func (*Resolver) Site added in v0.1.0

func (r *Resolver) Site() models.SiteResolver

func (*Resolver) Studio

func (r *Resolver) Studio() models.StudioResolver

func (*Resolver) StudioEdit added in v0.1.0

func (r *Resolver) StudioEdit() models.StudioEditResolver

func (*Resolver) Tag

func (r *Resolver) Tag() models.TagResolver

func (*Resolver) TagCategory

func (r *Resolver) TagCategory() models.TagCategoryResolver

func (*Resolver) TagEdit added in v0.1.0

func (r *Resolver) TagEdit() models.TagEditResolver

func (*Resolver) URL added in v0.1.0

func (r *Resolver) URL() models.URLResolver

func (*Resolver) User

func (r *Resolver) User() models.UserResolver

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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