gql

package
v0.0.0-...-319782b Latest Latest
Warning

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

Go to latest
Published: Jun 25, 2024 License: Apache-2.0 Imports: 47 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrNotImplemented = rerror.NewE(i18n.T("not implemented yet"))
View Source
var ErrUnauthorized = rerror.NewE(i18n.T("unauthorized"))

Functions

func AttachUsecases

func AttachUsecases(ctx context.Context, u *interfaces.Container, enableDataLoaders bool) context.Context

func NewExecutableSchema

func NewExecutableSchema(cfg Config) graphql.ExecutableSchema

NewExecutableSchema creates an ExecutableSchema from the ResolverRoot interface.

Types

type AssetItemLoader

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

func NewAssetItemLoader

func NewAssetItemLoader(itemUsecase interfaces.Item) *AssetItemLoader

func (*AssetItemLoader) Fetch

func (c *AssetItemLoader) Fetch(ctx context.Context, ids []gqlmodel.ID) ([]*[]gqlmodel.AssetItem, []error)

type AssetLoader

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

func NewAssetLoader

func NewAssetLoader(usecase interfaces.Asset) *AssetLoader

func (*AssetLoader) FindByID

func (c *AssetLoader) FindByID(ctx context.Context, assetId gqlmodel.ID) (*gqlmodel.Asset, error)

func (*AssetLoader) FindByIDs

func (c *AssetLoader) FindByIDs(ctx context.Context, ids []gqlmodel.ID) ([]*gqlmodel.Asset, []error)

func (*AssetLoader) FindByProject

func (c *AssetLoader) FindByProject(ctx context.Context, projectId gqlmodel.ID, keyword *string, sort *gqlmodel.AssetSort, p *gqlmodel.Pagination) (*gqlmodel.AssetConnection, error)

type AssetResolver

type AssetResolver interface {
	Project(ctx context.Context, obj *gqlmodel.Asset) (*gqlmodel.Project, error)

	CreatedBy(ctx context.Context, obj *gqlmodel.Asset) (gqlmodel.Operator, error)

	Items(ctx context.Context, obj *gqlmodel.Asset) ([]*gqlmodel.AssetItem, error)

	Thread(ctx context.Context, obj *gqlmodel.Asset) (*gqlmodel.Thread, error)
}

type CashedLoader

type CashedLoader[T any] struct {
	// contains filtered or unexported fields
}

func (*CashedLoader[T]) Load

func (l *CashedLoader[T]) Load(key gqlmodel.ID) (*T, error)

func (*CashedLoader[T]) LoadAll

func (l *CashedLoader[T]) LoadAll(keys []gqlmodel.ID) ([]*T, []error)

type CommentResolver

type CommentResolver interface {
	Author(ctx context.Context, obj *gqlmodel.Comment) (gqlmodel.Operator, error)
}

type ComplexityRoot

type ComplexityRoot struct {
	AddUsersToWorkspacePayload struct {
		Workspace func(childComplexity int) int
	}

	AndCondition struct {
		Conditions func(childComplexity int) int
	}

	Asset struct {
		ArchiveExtractionStatus func(childComplexity int) int
		CreatedAt               func(childComplexity int) int
		CreatedBy               func(childComplexity int) int
		CreatedByID             func(childComplexity int) int
		CreatedByType           func(childComplexity int) int
		FileName                func(childComplexity int) int
		ID                      func(childComplexity int) int
		Items                   func(childComplexity int) int
		PreviewType             func(childComplexity int) int
		Project                 func(childComplexity int) int
		ProjectID               func(childComplexity int) int
		Size                    func(childComplexity int) int
		Thread                  func(childComplexity int) int
		ThreadID                func(childComplexity int) int
		URL                     func(childComplexity int) int
		UUID                    func(childComplexity int) int
	}

	AssetConnection struct {
		Edges      func(childComplexity int) int
		Nodes      func(childComplexity int) int
		PageInfo   func(childComplexity int) int
		TotalCount func(childComplexity int) int
	}

	AssetEdge struct {
		Cursor func(childComplexity int) int
		Node   func(childComplexity int) int
	}

	AssetFile struct {
		ContentType func(childComplexity int) int
		FilePaths   func(childComplexity int) int
		Name        func(childComplexity int) int
		Path        func(childComplexity int) int
		Size        func(childComplexity int) int
	}

	AssetItem struct {
		ItemID  func(childComplexity int) int
		ModelID func(childComplexity int) int
	}

	BasicFieldCondition struct {
		FieldID  func(childComplexity int) int
		Operator func(childComplexity int) int
		Value    func(childComplexity int) int
	}

	BoolFieldCondition struct {
		FieldID  func(childComplexity int) int
		Operator func(childComplexity int) int
		Value    func(childComplexity int) int
	}

	CesiumResourceProps struct {
		CesiumIonAccessToken func(childComplexity int) int
		CesiumIonAssetID     func(childComplexity int) int
		Image                func(childComplexity int) int
		Name                 func(childComplexity int) int
		URL                  func(childComplexity int) int
	}

	Column struct {
		Field   func(childComplexity int) int
		Visible func(childComplexity int) int
	}

	Comment struct {
		Author      func(childComplexity int) int
		AuthorID    func(childComplexity int) int
		AuthorType  func(childComplexity int) int
		Content     func(childComplexity int) int
		CreatedAt   func(childComplexity int) int
		ID          func(childComplexity int) int
		ThreadID    func(childComplexity int) int
		WorkspaceID func(childComplexity int) int
	}

	CommentPayload struct {
		Comment func(childComplexity int) int
		Thread  func(childComplexity int) int
	}

	CreateAssetPayload struct {
		Asset func(childComplexity int) int
	}

	CreateAssetUploadPayload struct {
		ContentLength func(childComplexity int) int
		ContentType   func(childComplexity int) int
		Next          func(childComplexity int) int
		Token         func(childComplexity int) int
		URL           func(childComplexity int) int
	}

	CreateWorkspacePayload struct {
		Workspace func(childComplexity int) int
	}

	DecompressAssetPayload struct {
		Asset func(childComplexity int) int
	}

	DeleteAssetPayload struct {
		AssetID func(childComplexity int) int
	}

	DeleteCommentPayload struct {
		CommentID func(childComplexity int) int
		Thread    func(childComplexity int) int
	}

	DeleteFieldPayload struct {
		FieldID func(childComplexity int) int
	}

	DeleteGroupPayload struct {
		GroupID func(childComplexity int) int
	}

	DeleteIntegrationPayload struct {
		IntegrationID func(childComplexity int) int
	}

	DeleteItemPayload struct {
		ItemID func(childComplexity int) int
	}

	DeleteMePayload struct {
		UserID func(childComplexity int) int
	}

	DeleteModelPayload struct {
		ModelID func(childComplexity int) int
	}

	DeleteProjectPayload struct {
		ProjectID func(childComplexity int) int
	}

	DeleteRequestPayload struct {
		Requests func(childComplexity int) int
	}

	DeleteViewPayload struct {
		ViewID func(childComplexity int) int
	}

	DeleteWebhookPayload struct {
		WebhookID func(childComplexity int) int
	}

	DeleteWorkspacePayload struct {
		WorkspaceID func(childComplexity int) int
	}

	FieldPayload struct {
		Field func(childComplexity int) int
	}

	FieldSelector struct {
		ID   func(childComplexity int) int
		Type func(childComplexity int) int
	}

	FieldsPayload struct {
		Fields func(childComplexity int) int
	}

	Group struct {
		Description func(childComplexity int) int
		Fields      func(childComplexity int) int
		ID          func(childComplexity int) int
		Key         func(childComplexity int) int
		Name        func(childComplexity int) int
		Order       func(childComplexity int) int
		Project     func(childComplexity int) int
		ProjectID   func(childComplexity int) int
		Schema      func(childComplexity int) int
		SchemaID    func(childComplexity int) int
	}

	GroupPayload struct {
		Group func(childComplexity int) int
	}

	GroupsPayload struct {
		Groups func(childComplexity int) int
	}

	Integration struct {
		Config      func(childComplexity int) int
		CreatedAt   func(childComplexity int) int
		Description func(childComplexity int) int
		Developer   func(childComplexity int) int
		DeveloperID func(childComplexity int) int
		ID          func(childComplexity int) int
		IType       func(childComplexity int) int
		LogoURL     func(childComplexity int) int
		Name        func(childComplexity int) int
		UpdatedAt   func(childComplexity int) int
	}

	IntegrationConfig struct {
		Token    func(childComplexity int) int
		Webhooks func(childComplexity int) int
	}

	IntegrationPayload struct {
		Integration func(childComplexity int) int
	}

	Item struct {
		Assets                 func(childComplexity int) int
		CreatedAt              func(childComplexity int) int
		CreatedBy              func(childComplexity int) int
		Fields                 func(childComplexity int) int
		ID                     func(childComplexity int) int
		IntegrationID          func(childComplexity int) int
		IsMetadata             func(childComplexity int) int
		Metadata               func(childComplexity int) int
		MetadataID             func(childComplexity int) int
		Model                  func(childComplexity int) int
		ModelID                func(childComplexity int) int
		Original               func(childComplexity int) int
		OriginalID             func(childComplexity int) int
		Project                func(childComplexity int) int
		ProjectID              func(childComplexity int) int
		ReferencedItems        func(childComplexity int) int
		Schema                 func(childComplexity int) int
		SchemaID               func(childComplexity int) int
		Status                 func(childComplexity int) int
		Thread                 func(childComplexity int) int
		ThreadID               func(childComplexity int) int
		Title                  func(childComplexity int) int
		UpdatedAt              func(childComplexity int) int
		UpdatedBy              func(childComplexity int) int
		UpdatedByIntegrationID func(childComplexity int) int
		UpdatedByUserID        func(childComplexity int) int
		UserID                 func(childComplexity int) int
		Version                func(childComplexity int) int
	}

	ItemConnection struct {
		Edges      func(childComplexity int) int
		Nodes      func(childComplexity int) int
		PageInfo   func(childComplexity int) int
		TotalCount func(childComplexity int) int
	}

	ItemEdge struct {
		Cursor func(childComplexity int) int
		Node   func(childComplexity int) int
	}

	ItemField struct {
		ItemGroupID   func(childComplexity int) int
		SchemaFieldID func(childComplexity int) int
		Type          func(childComplexity int) int
		Value         func(childComplexity int) int
	}

	ItemPayload struct {
		Item func(childComplexity int) int
	}

	ItemSort struct {
		Direction func(childComplexity int) int
		Field     func(childComplexity int) int
	}

	KeyAvailability struct {
		Available func(childComplexity int) int
		Key       func(childComplexity int) int
	}

	Me struct {
		Auths         func(childComplexity int) int
		Email         func(childComplexity int) int
		Host          func(childComplexity int) int
		ID            func(childComplexity int) int
		Integrations  func(childComplexity int) int
		Lang          func(childComplexity int) int
		MyWorkspace   func(childComplexity int) int
		MyWorkspaceID func(childComplexity int) int
		Name          func(childComplexity int) int
		Theme         func(childComplexity int) int
		Workspaces    func(childComplexity int) int
	}

	Model struct {
		CreatedAt        func(childComplexity int) int
		Description      func(childComplexity int) int
		ID               func(childComplexity int) int
		Key              func(childComplexity int) int
		MetadataSchema   func(childComplexity int) int
		MetadataSchemaID func(childComplexity int) int
		Name             func(childComplexity int) int
		Order            func(childComplexity int) int
		Project          func(childComplexity int) int
		ProjectID        func(childComplexity int) int
		Public           func(childComplexity int) int
		Schema           func(childComplexity int) int
		SchemaID         func(childComplexity int) int
		UpdatedAt        func(childComplexity int) int
	}

	ModelConnection struct {
		Edges      func(childComplexity int) int
		Nodes      func(childComplexity int) int
		PageInfo   func(childComplexity int) int
		TotalCount func(childComplexity int) int
	}

	ModelEdge struct {
		Cursor func(childComplexity int) int
		Node   func(childComplexity int) int
	}

	ModelPayload struct {
		Model func(childComplexity int) int
	}

	ModelsPayload struct {
		Models func(childComplexity int) int
	}

	MultipleFieldCondition struct {
		FieldID  func(childComplexity int) int
		Operator func(childComplexity int) int
		Value    func(childComplexity int) int
	}

	Mutation struct {
		AddComment                     func(childComplexity int, input gqlmodel.AddCommentInput) int
		AddIntegrationToWorkspace      func(childComplexity int, input gqlmodel.AddIntegrationToWorkspaceInput) int
		AddUsersToWorkspace            func(childComplexity int, input gqlmodel.AddUsersToWorkspaceInput) int
		ApproveRequest                 func(childComplexity int, input gqlmodel.ApproveRequestInput) int
		CreateAsset                    func(childComplexity int, input gqlmodel.CreateAssetInput) int
		CreateAssetUpload              func(childComplexity int, input gqlmodel.CreateAssetUploadInput) int
		CreateField                    func(childComplexity int, input gqlmodel.CreateFieldInput) int
		CreateGroup                    func(childComplexity int, input gqlmodel.CreateGroupInput) int
		CreateIntegration              func(childComplexity int, input gqlmodel.CreateIntegrationInput) int
		CreateItem                     func(childComplexity int, input gqlmodel.CreateItemInput) int
		CreateModel                    func(childComplexity int, input gqlmodel.CreateModelInput) int
		CreateProject                  func(childComplexity int, input gqlmodel.CreateProjectInput) int
		CreateRequest                  func(childComplexity int, input gqlmodel.CreateRequestInput) int
		CreateThread                   func(childComplexity int, input gqlmodel.CreateThreadInput) int
		CreateView                     func(childComplexity int, input gqlmodel.CreateViewInput) int
		CreateWebhook                  func(childComplexity int, input gqlmodel.CreateWebhookInput) int
		CreateWorkspace                func(childComplexity int, input gqlmodel.CreateWorkspaceInput) int
		DecompressAsset                func(childComplexity int, input gqlmodel.DecompressAssetInput) int
		DeleteAsset                    func(childComplexity int, input gqlmodel.DeleteAssetInput) int
		DeleteComment                  func(childComplexity int, input gqlmodel.DeleteCommentInput) int
		DeleteField                    func(childComplexity int, input gqlmodel.DeleteFieldInput) int
		DeleteGroup                    func(childComplexity int, input gqlmodel.DeleteGroupInput) int
		DeleteIntegration              func(childComplexity int, input gqlmodel.DeleteIntegrationInput) int
		DeleteItem                     func(childComplexity int, input gqlmodel.DeleteItemInput) int
		DeleteMe                       func(childComplexity int, input gqlmodel.DeleteMeInput) int
		DeleteModel                    func(childComplexity int, input gqlmodel.DeleteModelInput) int
		DeleteProject                  func(childComplexity int, input gqlmodel.DeleteProjectInput) int
		DeleteRequest                  func(childComplexity int, input gqlmodel.DeleteRequestInput) int
		DeleteView                     func(childComplexity int, input gqlmodel.DeleteViewInput) int
		DeleteWebhook                  func(childComplexity int, input gqlmodel.DeleteWebhookInput) int
		DeleteWorkspace                func(childComplexity int, input gqlmodel.DeleteWorkspaceInput) int
		PublishItem                    func(childComplexity int, input gqlmodel.PublishItemInput) int
		PublishModel                   func(childComplexity int, input gqlmodel.PublishModelInput) int
		RegenerateToken                func(childComplexity int, input gqlmodel.RegenerateTokenInput) int
		RemoveIntegrationFromWorkspace func(childComplexity int, input gqlmodel.RemoveIntegrationFromWorkspaceInput) int
		RemoveMyAuth                   func(childComplexity int, input gqlmodel.RemoveMyAuthInput) int
		RemoveUserFromWorkspace        func(childComplexity int, input gqlmodel.RemoveUserFromWorkspaceInput) int
		UnpublishItem                  func(childComplexity int, input gqlmodel.UnpublishItemInput) int
		UpdateAsset                    func(childComplexity int, input gqlmodel.UpdateAssetInput) int
		UpdateComment                  func(childComplexity int, input gqlmodel.UpdateCommentInput) int
		UpdateField                    func(childComplexity int, input gqlmodel.UpdateFieldInput) int
		UpdateFields                   func(childComplexity int, input []*gqlmodel.UpdateFieldInput) int
		UpdateGroup                    func(childComplexity int, input gqlmodel.UpdateGroupInput) int
		UpdateGroupsOrder              func(childComplexity int, input gqlmodel.UpdateGroupsOrderInput) int
		UpdateIntegration              func(childComplexity int, input gqlmodel.UpdateIntegrationInput) int
		UpdateIntegrationOfWorkspace   func(childComplexity int, input gqlmodel.UpdateIntegrationOfWorkspaceInput) int
		UpdateItem                     func(childComplexity int, input gqlmodel.UpdateItemInput) int
		UpdateMe                       func(childComplexity int, input gqlmodel.UpdateMeInput) int
		UpdateModel                    func(childComplexity int, input gqlmodel.UpdateModelInput) int
		UpdateModelsOrder              func(childComplexity int, input gqlmodel.UpdateModelsOrderInput) int
		UpdateProject                  func(childComplexity int, input gqlmodel.UpdateProjectInput) int
		UpdateRequest                  func(childComplexity int, input gqlmodel.UpdateRequestInput) int
		UpdateUserOfWorkspace          func(childComplexity int, input gqlmodel.UpdateUserOfWorkspaceInput) int
		UpdateView                     func(childComplexity int, input gqlmodel.UpdateViewInput) int
		UpdateViewsOrder               func(childComplexity int, input gqlmodel.UpdateViewsOrderInput) int
		UpdateWebhook                  func(childComplexity int, input gqlmodel.UpdateWebhookInput) int
		UpdateWorkspace                func(childComplexity int, input gqlmodel.UpdateWorkspaceInput) int
		UpdateWorkspaceSettings        func(childComplexity int, input gqlmodel.UpdateWorkspaceSettingsInput) int
	}

	NullableFieldCondition struct {
		FieldID  func(childComplexity int) int
		Operator func(childComplexity int) int
	}

	NumberFieldCondition struct {
		FieldID  func(childComplexity int) int
		Operator func(childComplexity int) int
		Value    func(childComplexity int) int
	}

	OrCondition struct {
		Conditions func(childComplexity int) int
	}

	PageInfo struct {
		EndCursor       func(childComplexity int) int
		HasNextPage     func(childComplexity int) int
		HasPreviousPage func(childComplexity int) int
		StartCursor     func(childComplexity int) int
	}

	Project struct {
		Alias        func(childComplexity int) int
		CreatedAt    func(childComplexity int) int
		Description  func(childComplexity int) int
		ID           func(childComplexity int) int
		Name         func(childComplexity int) int
		Publication  func(childComplexity int) int
		RequestRoles func(childComplexity int) int
		UpdatedAt    func(childComplexity int) int
		Workspace    func(childComplexity int) int
		WorkspaceID  func(childComplexity int) int
	}

	ProjectAliasAvailability struct {
		Alias     func(childComplexity int) int
		Available func(childComplexity int) int
	}

	ProjectConnection struct {
		Edges      func(childComplexity int) int
		Nodes      func(childComplexity int) int
		PageInfo   func(childComplexity int) int
		TotalCount func(childComplexity int) int
	}

	ProjectEdge struct {
		Cursor func(childComplexity int) int
		Node   func(childComplexity int) int
	}

	ProjectPayload struct {
		Project func(childComplexity int) int
	}

	ProjectPublication struct {
		AssetPublic func(childComplexity int) int
		Scope       func(childComplexity int) int
	}

	PublishItemPayload struct {
		Items func(childComplexity int) int
	}

	PublishModelPayload struct {
		ModelID func(childComplexity int) int
		Status  func(childComplexity int) int
	}

	Query struct {
		AssetFile                 func(childComplexity int, assetID gqlmodel.ID) int
		Assets                    func(childComplexity int, projectID gqlmodel.ID, keyword *string, sort *gqlmodel.AssetSort, pagination *gqlmodel.Pagination) int
		CheckGroupKeyAvailability func(childComplexity int, projectID gqlmodel.ID, key string) int
		CheckModelKeyAvailability func(childComplexity int, projectID gqlmodel.ID, key string) int
		CheckProjectAlias         func(childComplexity int, alias string) int
		Groups                    func(childComplexity int, projectID *gqlmodel.ID, modelID *gqlmodel.ID) int
		IsItemReferenced          func(childComplexity int, itemID gqlmodel.ID, correspondingFieldID gqlmodel.ID) int
		Me                        func(childComplexity int) int
		Models                    func(childComplexity int, projectID gqlmodel.ID, pagination *gqlmodel.Pagination) int
		ModelsByGroup             func(childComplexity int, groupID gqlmodel.ID) int
		Node                      func(childComplexity int, id gqlmodel.ID, typeArg gqlmodel.NodeType) int
		Nodes                     func(childComplexity int, id []gqlmodel.ID, typeArg gqlmodel.NodeType) int
		Projects                  func(childComplexity int, workspaceID gqlmodel.ID, pagination *gqlmodel.Pagination) int
		Requests                  func(childComplexity int, projectID gqlmodel.ID, key *string, state []gqlmodel.RequestState, createdBy *gqlmodel.ID, reviewer *gqlmodel.ID, pagination *gqlmodel.Pagination, sort *gqlmodel.Sort) int
		SearchItem                func(childComplexity int, input gqlmodel.SearchItemInput) int
		SearchUser                func(childComplexity int, nameOrEmail string) int
		VersionsByItem            func(childComplexity int, itemID gqlmodel.ID) int
		View                      func(childComplexity int, modelID gqlmodel.ID) int
	}

	RemoveMemberFromWorkspacePayload struct {
		Workspace func(childComplexity int) int
	}

	Request struct {
		ApprovedAt  func(childComplexity int) int
		ClosedAt    func(childComplexity int) int
		CreatedAt   func(childComplexity int) int
		CreatedBy   func(childComplexity int) int
		CreatedByID func(childComplexity int) int
		Description func(childComplexity int) int
		ID          func(childComplexity int) int
		Items       func(childComplexity int) int
		Project     func(childComplexity int) int
		ProjectID   func(childComplexity int) int
		Reviewers   func(childComplexity int) int
		ReviewersID func(childComplexity int) int
		State       func(childComplexity int) int
		Thread      func(childComplexity int) int
		ThreadID    func(childComplexity int) int
		Title       func(childComplexity int) int
		UpdatedAt   func(childComplexity int) int
		Workspace   func(childComplexity int) int
		WorkspaceID func(childComplexity int) int
	}

	RequestConnection struct {
		Edges      func(childComplexity int) int
		Nodes      func(childComplexity int) int
		PageInfo   func(childComplexity int) int
		TotalCount func(childComplexity int) int
	}

	RequestEdge struct {
		Cursor func(childComplexity int) int
		Node   func(childComplexity int) int
	}

	RequestItem struct {
		Item    func(childComplexity int) int
		ItemID  func(childComplexity int) int
		Ref     func(childComplexity int) int
		Version func(childComplexity int) int
	}

	RequestPayload struct {
		Request func(childComplexity int) int
	}

	ResourceList struct {
		Enabled          func(childComplexity int) int
		Resources        func(childComplexity int) int
		SelectedResource func(childComplexity int) int
	}

	Schema struct {
		Fields       func(childComplexity int) int
		ID           func(childComplexity int) int
		Project      func(childComplexity int) int
		ProjectID    func(childComplexity int) int
		TitleField   func(childComplexity int) int
		TitleFieldID func(childComplexity int) int
	}

	SchemaField struct {
		CreatedAt    func(childComplexity int) int
		Description  func(childComplexity int) int
		Group        func(childComplexity int) int
		GroupID      func(childComplexity int) int
		ID           func(childComplexity int) int
		IsTitle      func(childComplexity int) int
		Key          func(childComplexity int) int
		Model        func(childComplexity int) int
		ModelID      func(childComplexity int) int
		Multiple     func(childComplexity int) int
		Order        func(childComplexity int) int
		Required     func(childComplexity int) int
		Title        func(childComplexity int) int
		Type         func(childComplexity int) int
		TypeProperty func(childComplexity int) int
		Unique       func(childComplexity int) int
		UpdatedAt    func(childComplexity int) int
	}

	SchemaFieldAsset struct {
		DefaultValue func(childComplexity int) int
	}

	SchemaFieldBool struct {
		DefaultValue func(childComplexity int) int
	}

	SchemaFieldCheckbox struct {
		DefaultValue func(childComplexity int) int
	}

	SchemaFieldDate struct {
		DefaultValue func(childComplexity int) int
	}

	SchemaFieldGroup struct {
		GroupID func(childComplexity int) int
	}

	SchemaFieldInteger struct {
		DefaultValue func(childComplexity int) int
		Max          func(childComplexity int) int
		Min          func(childComplexity int) int
	}

	SchemaFieldMarkdown struct {
		DefaultValue func(childComplexity int) int
		MaxLength    func(childComplexity int) int
	}

	SchemaFieldPoint struct {
		DefaultValue func(childComplexity int) int
	}

	SchemaFieldReference struct {
		CorrespondingField   func(childComplexity int) int
		CorrespondingFieldID func(childComplexity int) int
		ModelID              func(childComplexity int) int
		Schema               func(childComplexity int) int
		SchemaID             func(childComplexity int) int
	}

	SchemaFieldRichText struct {
		DefaultValue func(childComplexity int) int
		MaxLength    func(childComplexity int) int
	}

	SchemaFieldSelect struct {
		DefaultValue func(childComplexity int) int
		Values       func(childComplexity int) int
	}

	SchemaFieldTag struct {
		DefaultValue func(childComplexity int) int
		Tags         func(childComplexity int) int
	}

	SchemaFieldTagValue struct {
		Color func(childComplexity int) int
		ID    func(childComplexity int) int
		Name  func(childComplexity int) int
	}

	SchemaFieldText struct {
		DefaultValue func(childComplexity int) int
		MaxLength    func(childComplexity int) int
	}

	SchemaFieldTextArea struct {
		DefaultValue func(childComplexity int) int
		MaxLength    func(childComplexity int) int
	}

	SchemaFieldURL struct {
		DefaultValue func(childComplexity int) int
	}

	StringFieldCondition struct {
		FieldID  func(childComplexity int) int
		Operator func(childComplexity int) int
		Value    func(childComplexity int) int
	}

	TerrainResource struct {
		ID    func(childComplexity int) int
		Props func(childComplexity int) int
		Type  func(childComplexity int) int
	}

	Thread struct {
		Comments    func(childComplexity int) int
		ID          func(childComplexity int) int
		Workspace   func(childComplexity int) int
		WorkspaceID func(childComplexity int) int
	}

	ThreadPayload struct {
		Thread func(childComplexity int) int
	}

	TileResource struct {
		ID    func(childComplexity int) int
		Props func(childComplexity int) int
		Type  func(childComplexity int) int
	}

	TimeFieldCondition struct {
		FieldID  func(childComplexity int) int
		Operator func(childComplexity int) int
		Value    func(childComplexity int) int
	}

	UnpublishItemPayload struct {
		Items func(childComplexity int) int
	}

	UpdateAssetPayload struct {
		Asset func(childComplexity int) int
	}

	UpdateMePayload struct {
		Me func(childComplexity int) int
	}

	UpdateMemberOfWorkspacePayload struct {
		Workspace func(childComplexity int) int
	}

	UpdateWorkspacePayload struct {
		Workspace func(childComplexity int) int
	}

	UpdateWorkspaceSettingsPayload struct {
		WorkspaceSettings func(childComplexity int) int
	}

	UrlResourceProps struct {
		Image func(childComplexity int) int
		Name  func(childComplexity int) int
		URL   func(childComplexity int) int
	}

	User struct {
		Email func(childComplexity int) int
		Host  func(childComplexity int) int
		ID    func(childComplexity int) int
		Name  func(childComplexity int) int
	}

	VersionedItem struct {
		Parents func(childComplexity int) int
		Refs    func(childComplexity int) int
		Value   func(childComplexity int) int
		Version func(childComplexity int) int
	}

	View struct {
		Columns   func(childComplexity int) int
		Filter    func(childComplexity int) int
		ID        func(childComplexity int) int
		ModelID   func(childComplexity int) int
		Name      func(childComplexity int) int
		Order     func(childComplexity int) int
		ProjectID func(childComplexity int) int
		Sort      func(childComplexity int) int
	}

	ViewPayload struct {
		View func(childComplexity int) int
	}

	ViewsPayload struct {
		Views func(childComplexity int) int
	}

	Webhook struct {
		Active    func(childComplexity int) int
		CreatedAt func(childComplexity int) int
		ID        func(childComplexity int) int
		Name      func(childComplexity int) int
		Secret    func(childComplexity int) int
		Trigger   func(childComplexity int) int
		URL       func(childComplexity int) int
		UpdatedAt func(childComplexity int) int
	}

	WebhookPayload struct {
		Webhook func(childComplexity int) int
	}

	WebhookTrigger struct {
		OnAssetDecompress func(childComplexity int) int
		OnAssetDelete     func(childComplexity int) int
		OnAssetUpload     func(childComplexity int) int
		OnItemCreate      func(childComplexity int) int
		OnItemDelete      func(childComplexity int) int
		OnItemPublish     func(childComplexity int) int
		OnItemUnPublish   func(childComplexity int) int
		OnItemUpdate      func(childComplexity int) int
	}

	Workspace struct {
		ID       func(childComplexity int) int
		Members  func(childComplexity int) int
		Name     func(childComplexity int) int
		Personal func(childComplexity int) int
	}

	WorkspaceIntegrationMember struct {
		Active        func(childComplexity int) int
		Integration   func(childComplexity int) int
		IntegrationID func(childComplexity int) int
		InvitedBy     func(childComplexity int) int
		InvitedByID   func(childComplexity int) int
		Role          func(childComplexity int) int
	}

	WorkspaceSettings struct {
		ID       func(childComplexity int) int
		Terrains func(childComplexity int) int
		Tiles    func(childComplexity int) int
	}

	WorkspaceUserMember struct {
		Host   func(childComplexity int) int
		Role   func(childComplexity int) int
		User   func(childComplexity int) int
		UserID func(childComplexity int) int
	}
}

type Config

type Config struct {
	Schema     *ast.Schema
	Resolvers  ResolverRoot
	Directives DirectiveRoot
	Complexity ComplexityRoot
}

type ContextKey

type ContextKey string

type DataLoaders

type DataLoaders struct {
	Asset             Loader[gqlmodel.Asset]
	Workspace         Loader[gqlmodel.Workspace]
	User              Loader[gqlmodel.User]
	Project           Loader[gqlmodel.Project]
	Item              Loader[gqlmodel.Item]
	View              Loader[gqlmodel.View]
	ItemStatus        Loader[gqlmodel.ItemStatus]
	AssetItems        Loader[[]gqlmodel.AssetItem]
	Model             Loader[gqlmodel.Model]
	Request           Loader[gqlmodel.Request]
	Schema            Loader[gqlmodel.Schema]
	Thread            Loader[gqlmodel.Thread]
	Integration       Loader[gqlmodel.Integration]
	Group             Loader[gqlmodel.Group]
	WorkspaceSettings Loader[gqlmodel.WorkspaceSettings]
}

type DirectiveRoot

type DirectiveRoot struct {
	OnlyOne func(ctx context.Context, obj interface{}, next graphql.Resolver) (res interface{}, err error)
}

func NewDirective

func NewDirective() DirectiveRoot

type FetchFn

type FetchFn[T any] func(context.Context, []gqlmodel.ID) ([]*T, []error)

type GroupLoader

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

func NewGroupLoader

func NewGroupLoader(usecase interfaces.Group) *GroupLoader

func (*GroupLoader) CheckKey

func (c *GroupLoader) CheckKey(ctx context.Context, projectID gqlmodel.ID, key string) (*gqlmodel.KeyAvailability, error)

func (*GroupLoader) Fetch

func (c *GroupLoader) Fetch(ctx context.Context, ids []gqlmodel.ID) ([]*gqlmodel.Group, []error)

func (*GroupLoader) FindByModel

func (c *GroupLoader) FindByModel(ctx context.Context, modelID gqlmodel.ID) ([]*gqlmodel.Group, error)

func (*GroupLoader) FindByProject

func (c *GroupLoader) FindByProject(ctx context.Context, projectId gqlmodel.ID) ([]*gqlmodel.Group, error)

func (*GroupLoader) FindModelsByGroup

func (c *GroupLoader) FindModelsByGroup(ctx context.Context, groupID gqlmodel.ID) ([]*gqlmodel.Model, error)

type GroupResolver

type GroupResolver interface {
	Schema(ctx context.Context, obj *gqlmodel.Group) (*gqlmodel.Schema, error)
	Project(ctx context.Context, obj *gqlmodel.Group) (*gqlmodel.Project, error)
}

type IntegrationLoader

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

func NewIntegrationLoader

func NewIntegrationLoader(usecase interfaces.Integration) *IntegrationLoader

func (*IntegrationLoader) Fetch

func (c *IntegrationLoader) Fetch(ctx context.Context, ids []gqlmodel.ID) ([]*gqlmodel.Integration, []error)

func (*IntegrationLoader) FindByMe

func (c *IntegrationLoader) FindByMe(ctx context.Context) ([]*gqlmodel.Integration, error)

type IntegrationResolver

type IntegrationResolver interface {
	Developer(ctx context.Context, obj *gqlmodel.Integration) (*gqlmodel.User, error)
}

type ItemLoader

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

func NewItemLoader

func NewItemLoader(usecase interfaces.Item, schemaUsecase interfaces.Schema, modelUsecase interfaces.Model) *ItemLoader

func (*ItemLoader) Fetch

func (c *ItemLoader) Fetch(ctx context.Context, ids []gqlmodel.ID) ([]*gqlmodel.Item, []error)

func (*ItemLoader) FindVersionedItem

func (c *ItemLoader) FindVersionedItem(ctx context.Context, itemID gqlmodel.ID) (*gqlmodel.VersionedItem, error)

func (*ItemLoader) FindVersionedItems

func (c *ItemLoader) FindVersionedItems(ctx context.Context, itemID gqlmodel.ID) ([]*gqlmodel.VersionedItem, error)

func (*ItemLoader) IsItemReferenced

func (c *ItemLoader) IsItemReferenced(ctx context.Context, itemID gqlmodel.ID, correspondingFieldID gqlmodel.ID) (bool, error)

func (*ItemLoader) Search

type ItemResolver

type ItemResolver interface {
	CreatedBy(ctx context.Context, obj *gqlmodel.Item) (gqlmodel.Operator, error)
	Schema(ctx context.Context, obj *gqlmodel.Item) (*gqlmodel.Schema, error)
	Model(ctx context.Context, obj *gqlmodel.Item) (*gqlmodel.Model, error)
	Status(ctx context.Context, obj *gqlmodel.Item) (gqlmodel.ItemStatus, error)
	Project(ctx context.Context, obj *gqlmodel.Item) (*gqlmodel.Project, error)
	Thread(ctx context.Context, obj *gqlmodel.Item) (*gqlmodel.Thread, error)

	Assets(ctx context.Context, obj *gqlmodel.Item) ([]*gqlmodel.Asset, error)
	ReferencedItems(ctx context.Context, obj *gqlmodel.Item) ([]*gqlmodel.Item, error)

	UpdatedBy(ctx context.Context, obj *gqlmodel.Item) (gqlmodel.Operator, error)

	Metadata(ctx context.Context, obj *gqlmodel.Item) (*gqlmodel.Item, error)
	Original(ctx context.Context, obj *gqlmodel.Item) (*gqlmodel.Item, error)
}

type ItemStatusLoader

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

func NewItemStatusLoader

func NewItemStatusLoader(itemUsecase interfaces.Item) *ItemStatusLoader

func (*ItemStatusLoader) Fetch

func (c *ItemStatusLoader) Fetch(ctx context.Context, ids []gqlmodel.ID) ([]*gqlmodel.ItemStatus, []error)

type Loader

type Loader[T any] interface {
	Load(gqlmodel.ID) (*T, error)
	LoadAll([]gqlmodel.ID) ([]*T, []error)
}

func NewCashedLoader

func NewCashedLoader[T any](ctx context.Context, f FetchFn[T]) Loader[T]

func NewOrdinaryLoader

func NewOrdinaryLoader[T any](ctx context.Context, f FetchFn[T]) Loader[T]

type Loaders

type Loaders struct {
	Asset             *AssetLoader
	Workspace         *WorkspaceLoader
	Item              *ItemLoader
	View              *ViewLoader
	ItemStatus        *ItemStatusLoader
	AssetItem         *AssetItemLoader
	User              *UserLoader
	Project           *ProjectLoader
	Model             *ModelLoader
	Request           *RequestLoader
	Schema            *SchemaLoader
	Thread            *ThreadLoader
	Integration       *IntegrationLoader
	Group             *GroupLoader
	WorkspaceSettings *WorkspaceSettingsLoader
	// contains filtered or unexported fields
}

func NewLoaders

func NewLoaders(usecases *interfaces.Container) *Loaders

func (Loaders) DataLoaders

func (l Loaders) DataLoaders(ctx context.Context) *DataLoaders

func (Loaders) DataLoadersWith

func (l Loaders) DataLoadersWith(ctx context.Context, enabled bool) *DataLoaders

func (Loaders) OrdinaryDataLoaders

func (l Loaders) OrdinaryDataLoaders(ctx context.Context) *DataLoaders

type MeResolver

type MeResolver interface {
	Workspaces(ctx context.Context, obj *gqlmodel.Me) ([]*gqlmodel.Workspace, error)
	MyWorkspace(ctx context.Context, obj *gqlmodel.Me) (*gqlmodel.Workspace, error)
	Integrations(ctx context.Context, obj *gqlmodel.Me) ([]*gqlmodel.Integration, error)
}

type ModelLoader

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

func NewModelLoader

func NewModelLoader(usecase interfaces.Model) *ModelLoader

func (*ModelLoader) CheckKey

func (c *ModelLoader) CheckKey(ctx context.Context, projectID gqlmodel.ID, key string) (*gqlmodel.KeyAvailability, error)

func (*ModelLoader) Fetch

func (c *ModelLoader) Fetch(ctx context.Context, ids []gqlmodel.ID) ([]*gqlmodel.Model, []error)

func (*ModelLoader) FindByProject

func (c *ModelLoader) FindByProject(ctx context.Context, projectId gqlmodel.ID, p *gqlmodel.Pagination) (*gqlmodel.ModelConnection, error)

type ModelResolver

type ModelResolver interface {
	Project(ctx context.Context, obj *gqlmodel.Model) (*gqlmodel.Project, error)
	Schema(ctx context.Context, obj *gqlmodel.Model) (*gqlmodel.Schema, error)
	MetadataSchema(ctx context.Context, obj *gqlmodel.Model) (*gqlmodel.Schema, error)
}

type MutationResolver

type MutationResolver interface {
	CreateAsset(ctx context.Context, input gqlmodel.CreateAssetInput) (*gqlmodel.CreateAssetPayload, error)
	UpdateAsset(ctx context.Context, input gqlmodel.UpdateAssetInput) (*gqlmodel.UpdateAssetPayload, error)
	DeleteAsset(ctx context.Context, input gqlmodel.DeleteAssetInput) (*gqlmodel.DeleteAssetPayload, error)
	DecompressAsset(ctx context.Context, input gqlmodel.DecompressAssetInput) (*gqlmodel.DecompressAssetPayload, error)
	CreateAssetUpload(ctx context.Context, input gqlmodel.CreateAssetUploadInput) (*gqlmodel.CreateAssetUploadPayload, error)
	CreateField(ctx context.Context, input gqlmodel.CreateFieldInput) (*gqlmodel.FieldPayload, error)
	UpdateField(ctx context.Context, input gqlmodel.UpdateFieldInput) (*gqlmodel.FieldPayload, error)
	UpdateFields(ctx context.Context, input []*gqlmodel.UpdateFieldInput) (*gqlmodel.FieldsPayload, error)
	DeleteField(ctx context.Context, input gqlmodel.DeleteFieldInput) (*gqlmodel.DeleteFieldPayload, error)
	CreateGroup(ctx context.Context, input gqlmodel.CreateGroupInput) (*gqlmodel.GroupPayload, error)
	UpdateGroup(ctx context.Context, input gqlmodel.UpdateGroupInput) (*gqlmodel.GroupPayload, error)
	UpdateGroupsOrder(ctx context.Context, input gqlmodel.UpdateGroupsOrderInput) (*gqlmodel.GroupsPayload, error)
	DeleteGroup(ctx context.Context, input gqlmodel.DeleteGroupInput) (*gqlmodel.DeleteGroupPayload, error)
	CreateIntegration(ctx context.Context, input gqlmodel.CreateIntegrationInput) (*gqlmodel.IntegrationPayload, error)
	UpdateIntegration(ctx context.Context, input gqlmodel.UpdateIntegrationInput) (*gqlmodel.IntegrationPayload, error)
	DeleteIntegration(ctx context.Context, input gqlmodel.DeleteIntegrationInput) (*gqlmodel.DeleteIntegrationPayload, error)
	RegenerateToken(ctx context.Context, input gqlmodel.RegenerateTokenInput) (*gqlmodel.IntegrationPayload, error)
	CreateWebhook(ctx context.Context, input gqlmodel.CreateWebhookInput) (*gqlmodel.WebhookPayload, error)
	UpdateWebhook(ctx context.Context, input gqlmodel.UpdateWebhookInput) (*gqlmodel.WebhookPayload, error)
	DeleteWebhook(ctx context.Context, input gqlmodel.DeleteWebhookInput) (*gqlmodel.DeleteWebhookPayload, error)
	CreateItem(ctx context.Context, input gqlmodel.CreateItemInput) (*gqlmodel.ItemPayload, error)
	UpdateItem(ctx context.Context, input gqlmodel.UpdateItemInput) (*gqlmodel.ItemPayload, error)
	DeleteItem(ctx context.Context, input gqlmodel.DeleteItemInput) (*gqlmodel.DeleteItemPayload, error)
	PublishItem(ctx context.Context, input gqlmodel.PublishItemInput) (*gqlmodel.PublishItemPayload, error)
	UnpublishItem(ctx context.Context, input gqlmodel.UnpublishItemInput) (*gqlmodel.UnpublishItemPayload, error)
	CreateView(ctx context.Context, input gqlmodel.CreateViewInput) (*gqlmodel.ViewPayload, error)
	UpdateView(ctx context.Context, input gqlmodel.UpdateViewInput) (*gqlmodel.ViewPayload, error)
	UpdateViewsOrder(ctx context.Context, input gqlmodel.UpdateViewsOrderInput) (*gqlmodel.ViewsPayload, error)
	DeleteView(ctx context.Context, input gqlmodel.DeleteViewInput) (*gqlmodel.DeleteViewPayload, error)
	CreateModel(ctx context.Context, input gqlmodel.CreateModelInput) (*gqlmodel.ModelPayload, error)
	UpdateModel(ctx context.Context, input gqlmodel.UpdateModelInput) (*gqlmodel.ModelPayload, error)
	UpdateModelsOrder(ctx context.Context, input gqlmodel.UpdateModelsOrderInput) (*gqlmodel.ModelsPayload, error)
	DeleteModel(ctx context.Context, input gqlmodel.DeleteModelInput) (*gqlmodel.DeleteModelPayload, error)
	PublishModel(ctx context.Context, input gqlmodel.PublishModelInput) (*gqlmodel.PublishModelPayload, error)
	CreateProject(ctx context.Context, input gqlmodel.CreateProjectInput) (*gqlmodel.ProjectPayload, error)
	UpdateProject(ctx context.Context, input gqlmodel.UpdateProjectInput) (*gqlmodel.ProjectPayload, error)
	DeleteProject(ctx context.Context, input gqlmodel.DeleteProjectInput) (*gqlmodel.DeleteProjectPayload, error)
	CreateRequest(ctx context.Context, input gqlmodel.CreateRequestInput) (*gqlmodel.RequestPayload, error)
	UpdateRequest(ctx context.Context, input gqlmodel.UpdateRequestInput) (*gqlmodel.RequestPayload, error)
	ApproveRequest(ctx context.Context, input gqlmodel.ApproveRequestInput) (*gqlmodel.RequestPayload, error)
	DeleteRequest(ctx context.Context, input gqlmodel.DeleteRequestInput) (*gqlmodel.DeleteRequestPayload, error)
	CreateThread(ctx context.Context, input gqlmodel.CreateThreadInput) (*gqlmodel.ThreadPayload, error)
	AddComment(ctx context.Context, input gqlmodel.AddCommentInput) (*gqlmodel.CommentPayload, error)
	UpdateComment(ctx context.Context, input gqlmodel.UpdateCommentInput) (*gqlmodel.CommentPayload, error)
	DeleteComment(ctx context.Context, input gqlmodel.DeleteCommentInput) (*gqlmodel.DeleteCommentPayload, error)
	UpdateMe(ctx context.Context, input gqlmodel.UpdateMeInput) (*gqlmodel.UpdateMePayload, error)
	RemoveMyAuth(ctx context.Context, input gqlmodel.RemoveMyAuthInput) (*gqlmodel.UpdateMePayload, error)
	DeleteMe(ctx context.Context, input gqlmodel.DeleteMeInput) (*gqlmodel.DeleteMePayload, error)
	CreateWorkspace(ctx context.Context, input gqlmodel.CreateWorkspaceInput) (*gqlmodel.CreateWorkspacePayload, error)
	DeleteWorkspace(ctx context.Context, input gqlmodel.DeleteWorkspaceInput) (*gqlmodel.DeleteWorkspacePayload, error)
	UpdateWorkspace(ctx context.Context, input gqlmodel.UpdateWorkspaceInput) (*gqlmodel.UpdateWorkspacePayload, error)
	AddUsersToWorkspace(ctx context.Context, input gqlmodel.AddUsersToWorkspaceInput) (*gqlmodel.AddUsersToWorkspacePayload, error)
	AddIntegrationToWorkspace(ctx context.Context, input gqlmodel.AddIntegrationToWorkspaceInput) (*gqlmodel.AddUsersToWorkspacePayload, error)
	RemoveUserFromWorkspace(ctx context.Context, input gqlmodel.RemoveUserFromWorkspaceInput) (*gqlmodel.RemoveMemberFromWorkspacePayload, error)
	RemoveIntegrationFromWorkspace(ctx context.Context, input gqlmodel.RemoveIntegrationFromWorkspaceInput) (*gqlmodel.RemoveMemberFromWorkspacePayload, error)
	UpdateUserOfWorkspace(ctx context.Context, input gqlmodel.UpdateUserOfWorkspaceInput) (*gqlmodel.UpdateMemberOfWorkspacePayload, error)
	UpdateIntegrationOfWorkspace(ctx context.Context, input gqlmodel.UpdateIntegrationOfWorkspaceInput) (*gqlmodel.UpdateMemberOfWorkspacePayload, error)
	UpdateWorkspaceSettings(ctx context.Context, input gqlmodel.UpdateWorkspaceSettingsInput) (*gqlmodel.UpdateWorkspaceSettingsPayload, error)
}

type OrdinaryLoader

type OrdinaryLoader[T any] struct {
	// contains filtered or unexported fields
}

func (*OrdinaryLoader[T]) Load

func (l *OrdinaryLoader[T]) Load(key gqlmodel.ID) (*T, error)

func (*OrdinaryLoader[T]) LoadAll

func (l *OrdinaryLoader[T]) LoadAll(keys []gqlmodel.ID) ([]*T, []error)

type ProjectLoader

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

func NewProjectLoader

func NewProjectLoader(usecase interfaces.Project) *ProjectLoader

func (*ProjectLoader) CheckAlias

func (*ProjectLoader) Fetch

func (c *ProjectLoader) Fetch(ctx context.Context, ids []gqlmodel.ID) ([]*gqlmodel.Project, []error)

func (*ProjectLoader) FindByWorkspace

func (c *ProjectLoader) FindByWorkspace(ctx context.Context, workspaceId gqlmodel.ID, p *gqlmodel.Pagination) (*gqlmodel.ProjectConnection, error)

type ProjectResolver

type ProjectResolver interface {
	Workspace(ctx context.Context, obj *gqlmodel.Project) (*gqlmodel.Workspace, error)
}

type QueryResolver

type QueryResolver interface {
	Node(ctx context.Context, id gqlmodel.ID, typeArg gqlmodel.NodeType) (gqlmodel.Node, error)
	Nodes(ctx context.Context, id []gqlmodel.ID, typeArg gqlmodel.NodeType) ([]gqlmodel.Node, error)
	AssetFile(ctx context.Context, assetID gqlmodel.ID) (*gqlmodel.AssetFile, error)
	Assets(ctx context.Context, projectID gqlmodel.ID, keyword *string, sort *gqlmodel.AssetSort, pagination *gqlmodel.Pagination) (*gqlmodel.AssetConnection, error)
	Groups(ctx context.Context, projectID *gqlmodel.ID, modelID *gqlmodel.ID) ([]*gqlmodel.Group, error)
	ModelsByGroup(ctx context.Context, groupID gqlmodel.ID) ([]*gqlmodel.Model, error)
	CheckGroupKeyAvailability(ctx context.Context, projectID gqlmodel.ID, key string) (*gqlmodel.KeyAvailability, error)
	VersionsByItem(ctx context.Context, itemID gqlmodel.ID) ([]*gqlmodel.VersionedItem, error)
	SearchItem(ctx context.Context, input gqlmodel.SearchItemInput) (*gqlmodel.ItemConnection, error)
	IsItemReferenced(ctx context.Context, itemID gqlmodel.ID, correspondingFieldID gqlmodel.ID) (bool, error)
	View(ctx context.Context, modelID gqlmodel.ID) ([]*gqlmodel.View, error)
	Models(ctx context.Context, projectID gqlmodel.ID, pagination *gqlmodel.Pagination) (*gqlmodel.ModelConnection, error)
	CheckModelKeyAvailability(ctx context.Context, projectID gqlmodel.ID, key string) (*gqlmodel.KeyAvailability, error)
	Projects(ctx context.Context, workspaceID gqlmodel.ID, pagination *gqlmodel.Pagination) (*gqlmodel.ProjectConnection, error)
	CheckProjectAlias(ctx context.Context, alias string) (*gqlmodel.ProjectAliasAvailability, error)
	Requests(ctx context.Context, projectID gqlmodel.ID, key *string, state []gqlmodel.RequestState, createdBy *gqlmodel.ID, reviewer *gqlmodel.ID, pagination *gqlmodel.Pagination, sort *gqlmodel.Sort) (*gqlmodel.RequestConnection, error)
	Me(ctx context.Context) (*gqlmodel.Me, error)
	SearchUser(ctx context.Context, nameOrEmail string) (*gqlmodel.User, error)
}

type RequestItemResolver

type RequestItemResolver interface {
	Item(ctx context.Context, obj *gqlmodel.RequestItem) (*gqlmodel.VersionedItem, error)
}

type RequestLoader

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

func NewRequestLoader

func NewRequestLoader(usecase interfaces.Request) *RequestLoader

func (*RequestLoader) Fetch

func (c *RequestLoader) Fetch(ctx context.Context, ids []gqlmodel.ID) ([]*gqlmodel.Request, []error)

func (*RequestLoader) FindByProject

func (c *RequestLoader) FindByProject(ctx context.Context, projectId gqlmodel.ID, keyword *string, state []gqlmodel.RequestState, createdBy, reviewer *gqlmodel.ID, p *gqlmodel.Pagination, sort *gqlmodel.Sort) (*gqlmodel.RequestConnection, error)

type RequestResolver

type RequestResolver interface {
	Thread(ctx context.Context, obj *gqlmodel.Request) (*gqlmodel.Thread, error)
	CreatedBy(ctx context.Context, obj *gqlmodel.Request) (*gqlmodel.User, error)
	Workspace(ctx context.Context, obj *gqlmodel.Request) (*gqlmodel.Workspace, error)
	Project(ctx context.Context, obj *gqlmodel.Request) (*gqlmodel.Project, error)
	Reviewers(ctx context.Context, obj *gqlmodel.Request) ([]*gqlmodel.User, error)
}

type Resolver

type Resolver struct {
}

func (*Resolver) Asset

func (r *Resolver) Asset() AssetResolver

func (*Resolver) Comment

func (r *Resolver) Comment() CommentResolver

func (*Resolver) Group

func (r *Resolver) Group() GroupResolver

func (*Resolver) Integration

func (r *Resolver) Integration() IntegrationResolver

func (*Resolver) Item

func (r *Resolver) Item() ItemResolver

func (*Resolver) Me

func (r *Resolver) Me() MeResolver

func (*Resolver) Model

func (r *Resolver) Model() ModelResolver

func (*Resolver) Mutation

func (r *Resolver) Mutation() MutationResolver

func (*Resolver) Project

func (r *Resolver) Project() ProjectResolver

func (*Resolver) Query

func (r *Resolver) Query() QueryResolver

func (*Resolver) Request

func (r *Resolver) Request() RequestResolver

func (*Resolver) RequestItem

func (r *Resolver) RequestItem() RequestItemResolver

func (*Resolver) Schema

func (r *Resolver) Schema() SchemaResolver

func (*Resolver) SchemaField

func (r *Resolver) SchemaField() SchemaFieldResolver

func (*Resolver) SchemaFieldReference

func (r *Resolver) SchemaFieldReference() SchemaFieldReferenceResolver

func (*Resolver) Thread

func (r *Resolver) Thread() ThreadResolver

func (*Resolver) WorkspaceIntegrationMember

func (r *Resolver) WorkspaceIntegrationMember() WorkspaceIntegrationMemberResolver

func (*Resolver) WorkspaceUserMember

func (r *Resolver) WorkspaceUserMember() WorkspaceUserMemberResolver

type ResolverRoot

type ResolverRoot interface {
	Asset() AssetResolver
	Comment() CommentResolver
	Group() GroupResolver
	Integration() IntegrationResolver
	Item() ItemResolver
	Me() MeResolver
	Model() ModelResolver
	Mutation() MutationResolver
	Project() ProjectResolver
	Query() QueryResolver
	Request() RequestResolver
	RequestItem() RequestItemResolver
	Schema() SchemaResolver
	SchemaField() SchemaFieldResolver
	SchemaFieldReference() SchemaFieldReferenceResolver
	Thread() ThreadResolver
	WorkspaceIntegrationMember() WorkspaceIntegrationMemberResolver
	WorkspaceUserMember() WorkspaceUserMemberResolver
}

func NewResolver

func NewResolver() ResolverRoot

type SchemaFieldReferenceResolver

type SchemaFieldReferenceResolver interface {
	Schema(ctx context.Context, obj *gqlmodel.SchemaFieldReference) (*gqlmodel.Schema, error)

	CorrespondingField(ctx context.Context, obj *gqlmodel.SchemaFieldReference) (*gqlmodel.SchemaField, error)
}

type SchemaFieldResolver

type SchemaFieldResolver interface {
	Model(ctx context.Context, obj *gqlmodel.SchemaField) (*gqlmodel.Model, error)
}

type SchemaLoader

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

func NewSchemaLoader

func NewSchemaLoader(usecase interfaces.Schema) *SchemaLoader

func (*SchemaLoader) Fetch

func (c *SchemaLoader) Fetch(ctx context.Context, ids []gqlmodel.ID) ([]*gqlmodel.Schema, []error)

type SchemaResolver

type SchemaResolver interface {
	TitleField(ctx context.Context, obj *gqlmodel.Schema) (*gqlmodel.SchemaField, error)
	Project(ctx context.Context, obj *gqlmodel.Schema) (*gqlmodel.Project, error)
}

type ThreadLoader

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

func NewThreadLoader

func NewThreadLoader(usecase interfaces.Thread) *ThreadLoader

func (*ThreadLoader) FindByIDs

func (c *ThreadLoader) FindByIDs(ctx context.Context, ids []gqlmodel.ID) ([]*gqlmodel.Thread, []error)

type ThreadResolver

type ThreadResolver interface {
	Workspace(ctx context.Context, obj *gqlmodel.Thread) (*gqlmodel.Workspace, error)
}

type UserLoader

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

func NewUserLoader

func NewUserLoader(usecase accountinterfaces.User) *UserLoader

func (*UserLoader) Fetch

func (c *UserLoader) Fetch(ctx context.Context, ids []gqlmodel.ID) ([]*gqlmodel.User, []error)

func (*UserLoader) SearchUser

func (c *UserLoader) SearchUser(ctx context.Context, nameOrEmail string) (*gqlmodel.User, error)

type ViewLoader

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

func NewViewLoader

func NewViewLoader(usecase interfaces.View) *ViewLoader

func (*ViewLoader) Fetch

func (c *ViewLoader) Fetch(ctx context.Context, ids []gqlmodel.ID) ([]*gqlmodel.View, []error)

func (*ViewLoader) FindByModel

func (c *ViewLoader) FindByModel(ctx context.Context, modelID gqlmodel.ID) ([]*gqlmodel.View, error)

type WorkspaceIntegrationMemberResolver

type WorkspaceIntegrationMemberResolver interface {
	InvitedBy(ctx context.Context, obj *gqlmodel.WorkspaceIntegrationMember) (*gqlmodel.User, error)
	Integration(ctx context.Context, obj *gqlmodel.WorkspaceIntegrationMember) (*gqlmodel.Integration, error)
}

type WorkspaceLoader

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

func NewWorkspaceLoader

func NewWorkspaceLoader(usecase accountinterfaces.Workspace) *WorkspaceLoader

func (*WorkspaceLoader) Fetch

func (c *WorkspaceLoader) Fetch(ctx context.Context, ids []gqlmodel.ID) ([]*gqlmodel.Workspace, []error)

func (*WorkspaceLoader) FindByUser

func (c *WorkspaceLoader) FindByUser(ctx context.Context, uid gqlmodel.ID) ([]*gqlmodel.Workspace, error)

type WorkspaceSettingsLoader

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

func NewWorkspaceSettingsLoader

func NewWorkspaceSettingsLoader(usecase interfaces.WorkspaceSettings) *WorkspaceSettingsLoader

func (*WorkspaceSettingsLoader) Fetch

type WorkspaceUserMemberResolver

type WorkspaceUserMemberResolver interface {
	User(ctx context.Context, obj *gqlmodel.WorkspaceUserMember) (*gqlmodel.User, error)
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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