Help us shape the future of Go! Take the 2026 Go Developer Survey

graphql

package
v0.31.1 Latest Latest
Warning

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

Go to latest
Published: Apr 13, 2026 License: AGPL-3.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

View Source
const FindPerformerByIDDocument = `` /* 807-byte string literal not displayed */
View Source
const FindSceneByIDDocument = `` /* 1536-byte string literal not displayed */
View Source
const FindScenesBySceneFingerprintsDocument = `` /* 1627-byte string literal not displayed */
View Source
const FindStudioDocument = `` /* 353-byte string literal not displayed */
View Source
const FindTagDocument = `` /* 202-byte string literal not displayed */
View Source
const MeDocument = `query Me {
	me {
		name
	}
}
`
View Source
const QueryTagsDocument = `` /* 221-byte string literal not displayed */
View Source
const SearchPerformerDocument = `` /* 817-byte string literal not displayed */
View Source
const SearchSceneDocument = `` /* 1546-byte string literal not displayed */
View Source
const SubmitFingerprintDocument = `mutation SubmitFingerprint ($input: FingerprintSubmission!) {
	submitFingerprint(input: $input)
}
`
View Source
const SubmitPerformerDraftDocument = `mutation SubmitPerformerDraft ($input: PerformerDraftInput!) {
	submitPerformerDraft(input: $input) {
		id
	}
}
`
View Source
const SubmitSceneDraftDocument = `mutation SubmitSceneDraft ($input: SceneDraftInput!) {
	submitSceneDraft(input: $input) {
		id
	}
}
`

Variables

View Source
var DocumentOperationNames = map[string]string{
	FindScenesBySceneFingerprintsDocument: "FindScenesBySceneFingerprints",
	SearchSceneDocument:                   "SearchScene",
	SearchPerformerDocument:               "SearchPerformer",
	FindPerformerByIDDocument:             "FindPerformerByID",
	FindSceneByIDDocument:                 "FindSceneByID",
	FindStudioDocument:                    "FindStudio",
	FindTagDocument:                       "FindTag",
	QueryTagsDocument:                     "QueryTags",
	SubmitFingerprintDocument:             "SubmitFingerprint",
	MeDocument:                            "Me",
	SubmitSceneDraftDocument:              "SubmitSceneDraft",
	SubmitPerformerDraftDocument:          "SubmitPerformerDraft",
}

Functions

This section is empty.

Types

type ActivateNewUserInput

type ActivateNewUserInput struct {
	Name          string `json:"name"`
	ActivationKey string `json:"activation_key"`
	Password      string `json:"password"`
}

type ApplyEditInput

type ApplyEditInput struct {
	ID string `json:"id"`
}

type BodyModification

type BodyModification struct {
	Location    string  `json:"location"`
	Description *string `json:"description,omitempty"`
}

type BodyModificationCriterionInput

type BodyModificationCriterionInput struct {
	Location    *string           `json:"location,omitempty"`
	Description *string           `json:"description,omitempty"`
	Modifier    CriterionModifier `json:"modifier"`
}

type BodyModificationFragment

type BodyModificationFragment struct {
	Location    string  "json:\"location\" graphql:\"location\""
	Description *string "json:\"description,omitempty\" graphql:\"description\""
}

func (*BodyModificationFragment) GetDescription

func (t *BodyModificationFragment) GetDescription() *string

func (*BodyModificationFragment) GetLocation

func (t *BodyModificationFragment) GetLocation() string

type BodyModificationInput

type BodyModificationInput struct {
	Location    string  `json:"location"`
	Description *string `json:"description,omitempty"`
}

type BreastTypeCriterionInput

type BreastTypeCriterionInput struct {
	Value    *BreastTypeEnum   `json:"value,omitempty"`
	Modifier CriterionModifier `json:"modifier"`
}

type BreastTypeEnum

type BreastTypeEnum string
const (
	BreastTypeEnumNatural BreastTypeEnum = "NATURAL"
	BreastTypeEnumFake    BreastTypeEnum = "FAKE"
	BreastTypeEnumNa      BreastTypeEnum = "NA"
)

func (BreastTypeEnum) IsValid

func (e BreastTypeEnum) IsValid() bool

func (BreastTypeEnum) MarshalGQL

func (e BreastTypeEnum) MarshalGQL(w io.Writer)

func (BreastTypeEnum) MarshalJSON

func (e BreastTypeEnum) MarshalJSON() ([]byte, error)

func (BreastTypeEnum) String

func (e BreastTypeEnum) String() string

func (*BreastTypeEnum) UnmarshalGQL

func (e *BreastTypeEnum) UnmarshalGQL(v any) error

func (*BreastTypeEnum) UnmarshalJSON

func (e *BreastTypeEnum) UnmarshalJSON(b []byte) error

type CancelEditInput

type CancelEditInput struct {
	ID string `json:"id"`
}

type Client

type Client struct {
	Client *clientv2.Client
}

func (*Client) FindPerformerByID

func (c *Client) FindPerformerByID(ctx context.Context, id string, interceptors ...clientv2.RequestInterceptor) (*FindPerformerByID, error)

func (*Client) FindSceneByID

func (c *Client) FindSceneByID(ctx context.Context, id string, interceptors ...clientv2.RequestInterceptor) (*FindSceneByID, error)

func (*Client) FindScenesBySceneFingerprints

func (c *Client) FindScenesBySceneFingerprints(ctx context.Context, fingerprints [][]*FingerprintQueryInput, interceptors ...clientv2.RequestInterceptor) (*FindScenesBySceneFingerprints, error)

func (*Client) FindStudio

func (c *Client) FindStudio(ctx context.Context, id *string, name *string, interceptors ...clientv2.RequestInterceptor) (*FindStudio, error)

func (*Client) FindTag added in v0.30.0

func (c *Client) FindTag(ctx context.Context, id *string, name *string, interceptors ...clientv2.RequestInterceptor) (*FindTag, error)

func (*Client) Me

func (c *Client) Me(ctx context.Context, interceptors ...clientv2.RequestInterceptor) (*Me, error)

func (*Client) QueryTags added in v0.30.0

func (c *Client) QueryTags(ctx context.Context, input TagQueryInput, interceptors ...clientv2.RequestInterceptor) (*QueryTags, error)

func (*Client) SearchPerformer

func (c *Client) SearchPerformer(ctx context.Context, term string, interceptors ...clientv2.RequestInterceptor) (*SearchPerformer, error)

func (*Client) SearchScene

func (c *Client) SearchScene(ctx context.Context, term string, interceptors ...clientv2.RequestInterceptor) (*SearchScene, error)

func (*Client) SubmitFingerprint

func (c *Client) SubmitFingerprint(ctx context.Context, input FingerprintSubmission, interceptors ...clientv2.RequestInterceptor) (*SubmitFingerprint, error)

func (*Client) SubmitPerformerDraft

func (c *Client) SubmitPerformerDraft(ctx context.Context, input PerformerDraftInput, interceptors ...clientv2.RequestInterceptor) (*SubmitPerformerDraft, error)

func (*Client) SubmitSceneDraft

func (c *Client) SubmitSceneDraft(ctx context.Context, input SceneDraftInput, interceptors ...clientv2.RequestInterceptor) (*SubmitSceneDraft, error)

type CommentCommentedEdit

type CommentCommentedEdit struct {
	Comment *EditComment `json:"comment"`
}

func (CommentCommentedEdit) IsNotificationData

func (CommentCommentedEdit) IsNotificationData()

type CommentOwnEdit

type CommentOwnEdit struct {
	Comment *EditComment `json:"comment"`
}

func (CommentOwnEdit) IsNotificationData

func (CommentOwnEdit) IsNotificationData()

type CommentVotedEdit

type CommentVotedEdit struct {
	Comment *EditComment `json:"comment"`
}

func (CommentVotedEdit) IsNotificationData

func (CommentVotedEdit) IsNotificationData()

type CriterionModifier

type CriterionModifier string
const (
	// =
	CriterionModifierEquals CriterionModifier = "EQUALS"
	// !=
	CriterionModifierNotEquals CriterionModifier = "NOT_EQUALS"
	// >
	CriterionModifierGreaterThan CriterionModifier = "GREATER_THAN"
	// <
	CriterionModifierLessThan CriterionModifier = "LESS_THAN"
	// IS NULL
	CriterionModifierIsNull CriterionModifier = "IS_NULL"
	// IS NOT NULL
	CriterionModifierNotNull CriterionModifier = "NOT_NULL"
	// INCLUDES ALL
	CriterionModifierIncludesAll CriterionModifier = "INCLUDES_ALL"
	CriterionModifierIncludes    CriterionModifier = "INCLUDES"
	CriterionModifierExcludes    CriterionModifier = "EXCLUDES"
)

func (CriterionModifier) IsValid

func (e CriterionModifier) IsValid() bool

func (CriterionModifier) MarshalGQL

func (e CriterionModifier) MarshalGQL(w io.Writer)

func (CriterionModifier) MarshalJSON

func (e CriterionModifier) MarshalJSON() ([]byte, error)

func (CriterionModifier) String

func (e CriterionModifier) String() string

func (*CriterionModifier) UnmarshalGQL

func (e *CriterionModifier) UnmarshalGQL(v any) error

func (*CriterionModifier) UnmarshalJSON

func (e *CriterionModifier) UnmarshalJSON(b []byte) error

type DateAccuracyEnum

type DateAccuracyEnum string
const (
	DateAccuracyEnumYear  DateAccuracyEnum = "YEAR"
	DateAccuracyEnumMonth DateAccuracyEnum = "MONTH"
	DateAccuracyEnumDay   DateAccuracyEnum = "DAY"
)

func (DateAccuracyEnum) IsValid

func (e DateAccuracyEnum) IsValid() bool

func (DateAccuracyEnum) MarshalGQL

func (e DateAccuracyEnum) MarshalGQL(w io.Writer)

func (DateAccuracyEnum) MarshalJSON

func (e DateAccuracyEnum) MarshalJSON() ([]byte, error)

func (DateAccuracyEnum) String

func (e DateAccuracyEnum) String() string

func (*DateAccuracyEnum) UnmarshalGQL

func (e *DateAccuracyEnum) UnmarshalGQL(v any) error

func (*DateAccuracyEnum) UnmarshalJSON

func (e *DateAccuracyEnum) UnmarshalJSON(b []byte) error

type DateCriterionInput

type DateCriterionInput struct {
	Value    string            `json:"value"`
	Modifier CriterionModifier `json:"modifier"`
}

type DownvoteOwnEdit

type DownvoteOwnEdit struct {
	Edit *Edit `json:"edit"`
}

func (DownvoteOwnEdit) IsNotificationData

func (DownvoteOwnEdit) IsNotificationData()

type Draft

type Draft struct {
	ID      string    `json:"id"`
	Created time.Time `json:"created"`
	Expires time.Time `json:"expires"`
	Data    DraftData `json:"data"`
}

type DraftData

type DraftData interface {
	IsDraftData()
}

type DraftEntity

type DraftEntity struct {
	Name string  `json:"name"`
	ID   *string `json:"id,omitempty"`
}

func (DraftEntity) IsSceneDraftPerformer

func (DraftEntity) IsSceneDraftPerformer()

func (DraftEntity) IsSceneDraftStudio

func (DraftEntity) IsSceneDraftStudio()

func (DraftEntity) IsSceneDraftTag

func (DraftEntity) IsSceneDraftTag()

type DraftEntityInput

type DraftEntityInput struct {
	Name string  `json:"name"`
	ID   *string `json:"id,omitempty"`
}

type DraftFingerprint

type DraftFingerprint struct {
	Hash      string               `json:"hash"`
	Algorithm FingerprintAlgorithm `json:"algorithm"`
	Duration  int                  `json:"duration"`
}

type DraftSubmissionStatus

type DraftSubmissionStatus struct {
	ID *string `json:"id,omitempty"`
}

type Edit

type Edit struct {
	ID   string `json:"id"`
	User *User  `json:"user,omitempty"`
	// Object being edited - null if creating a new object
	Target     EditTarget     `json:"target,omitempty"`
	TargetType TargetTypeEnum `json:"target_type"`
	// Objects to merge with the target. Only applicable to merges
	MergeSources []EditTarget  `json:"merge_sources"`
	Operation    OperationEnum `json:"operation"`
	Bot          bool          `json:"bot"`
	Details      EditDetails   `json:"details,omitempty"`
	// Previous state of fields being modified - null if operation is create or delete.
	OldDetails EditDetails `json:"old_details,omitempty"`
	// Entity specific options
	Options  *PerformerEditOptions `json:"options,omitempty"`
	Comments []*EditComment        `json:"comments"`
	Votes    []*EditVote           `json:"votes"`
	//  = Accepted - Rejected
	VoteCount int `json:"vote_count"`
	// Is the edit considered destructive.
	Destructive bool           `json:"destructive"`
	Status      VoteStatusEnum `json:"status"`
	Applied     bool           `json:"applied"`
	UpdateCount int            `json:"update_count"`
	Updatable   bool           `json:"updatable"`
	Created     time.Time      `json:"created"`
	Updated     *time.Time     `json:"updated,omitempty"`
	Closed      *time.Time     `json:"closed,omitempty"`
	Expires     *time.Time     `json:"expires,omitempty"`
}

type EditComment

type EditComment struct {
	ID      string    `json:"id"`
	User    *User     `json:"user,omitempty"`
	Date    time.Time `json:"date"`
	Comment string    `json:"comment"`
	Edit    *Edit     `json:"edit"`
}

type EditCommentInput

type EditCommentInput struct {
	ID      string `json:"id"`
	Comment string `json:"comment"`
}

type EditDetails

type EditDetails interface {
	IsEditDetails()
}

type EditInput

type EditInput struct {
	// Not required for create type
	ID        *string       `json:"id,omitempty"`
	Operation OperationEnum `json:"operation"`
	// Only required for merge type
	MergeSourceIds []string `json:"merge_source_ids,omitempty"`
	Comment        *string  `json:"comment,omitempty"`
	// Edit submitted by an automated script. Requires bot permission
	Bot *bool `json:"bot,omitempty"`
}

type EditQueryInput

type EditQueryInput struct {
	// Filter by user id
	UserID *string `json:"user_id,omitempty"`
	// Filter by status
	Status *VoteStatusEnum `json:"status,omitempty"`
	// Filter by operation
	Operation *OperationEnum `json:"operation,omitempty"`
	// Filter by vote count
	VoteCount *IntCriterionInput `json:"vote_count,omitempty"`
	// Filter by applied status
	Applied *bool `json:"applied,omitempty"`
	// Filter by target type
	TargetType *TargetTypeEnum `json:"target_type,omitempty"`
	// Filter by target id
	TargetID *string `json:"target_id,omitempty"`
	// Filter by favorite status
	IsFavorite *bool `json:"is_favorite,omitempty"`
	// Filter by user voted status
	Voted *UserVotedFilterEnum `json:"voted,omitempty"`
	// Filter to bot edits only
	IsBot *bool `json:"is_bot,omitempty"`
	// Filter out user's own edits
	IncludeUserSubmitted *bool             `json:"include_user_submitted,omitempty"`
	Page                 int               `json:"page"`
	PerPage              int               `json:"per_page"`
	Direction            SortDirectionEnum `json:"direction"`
	Sort                 EditSortEnum      `json:"sort"`
}

type EditSortEnum

type EditSortEnum string
const (
	EditSortEnumCreatedAt EditSortEnum = "CREATED_AT"
	EditSortEnumUpdatedAt EditSortEnum = "UPDATED_AT"
	EditSortEnumClosedAt  EditSortEnum = "CLOSED_AT"
)

func (EditSortEnum) IsValid

func (e EditSortEnum) IsValid() bool

func (EditSortEnum) MarshalGQL

func (e EditSortEnum) MarshalGQL(w io.Writer)

func (EditSortEnum) MarshalJSON

func (e EditSortEnum) MarshalJSON() ([]byte, error)

func (EditSortEnum) String

func (e EditSortEnum) String() string

func (*EditSortEnum) UnmarshalGQL

func (e *EditSortEnum) UnmarshalGQL(v any) error

func (*EditSortEnum) UnmarshalJSON

func (e *EditSortEnum) UnmarshalJSON(b []byte) error

type EditTarget

type EditTarget interface {
	IsEditTarget()
}

type EditVote

type EditVote struct {
	User *User        `json:"user,omitempty"`
	Date time.Time    `json:"date"`
	Vote VoteTypeEnum `json:"vote"`
}

type EditVoteInput

type EditVoteInput struct {
	ID   string       `json:"id"`
	Vote VoteTypeEnum `json:"vote"`
}

type EthnicityEnum

type EthnicityEnum string
const (
	EthnicityEnumCaucasian     EthnicityEnum = "CAUCASIAN"
	EthnicityEnumBlack         EthnicityEnum = "BLACK"
	EthnicityEnumAsian         EthnicityEnum = "ASIAN"
	EthnicityEnumIndian        EthnicityEnum = "INDIAN"
	EthnicityEnumLatin         EthnicityEnum = "LATIN"
	EthnicityEnumMiddleEastern EthnicityEnum = "MIDDLE_EASTERN"
	EthnicityEnumMixed         EthnicityEnum = "MIXED"
	EthnicityEnumOther         EthnicityEnum = "OTHER"
)

func (EthnicityEnum) IsValid

func (e EthnicityEnum) IsValid() bool

func (EthnicityEnum) MarshalGQL

func (e EthnicityEnum) MarshalGQL(w io.Writer)

func (EthnicityEnum) MarshalJSON

func (e EthnicityEnum) MarshalJSON() ([]byte, error)

func (EthnicityEnum) String

func (e EthnicityEnum) String() string

func (*EthnicityEnum) UnmarshalGQL

func (e *EthnicityEnum) UnmarshalGQL(v any) error

func (*EthnicityEnum) UnmarshalJSON

func (e *EthnicityEnum) UnmarshalJSON(b []byte) error

type EthnicityFilterEnum

type EthnicityFilterEnum string
const (
	EthnicityFilterEnumUnknown       EthnicityFilterEnum = "UNKNOWN"
	EthnicityFilterEnumCaucasian     EthnicityFilterEnum = "CAUCASIAN"
	EthnicityFilterEnumBlack         EthnicityFilterEnum = "BLACK"
	EthnicityFilterEnumAsian         EthnicityFilterEnum = "ASIAN"
	EthnicityFilterEnumIndian        EthnicityFilterEnum = "INDIAN"
	EthnicityFilterEnumLatin         EthnicityFilterEnum = "LATIN"
	EthnicityFilterEnumMiddleEastern EthnicityFilterEnum = "MIDDLE_EASTERN"
	EthnicityFilterEnumMixed         EthnicityFilterEnum = "MIXED"
	EthnicityFilterEnumOther         EthnicityFilterEnum = "OTHER"
)

func (EthnicityFilterEnum) IsValid

func (e EthnicityFilterEnum) IsValid() bool

func (EthnicityFilterEnum) MarshalGQL

func (e EthnicityFilterEnum) MarshalGQL(w io.Writer)

func (EthnicityFilterEnum) MarshalJSON

func (e EthnicityFilterEnum) MarshalJSON() ([]byte, error)

func (EthnicityFilterEnum) String

func (e EthnicityFilterEnum) String() string

func (*EthnicityFilterEnum) UnmarshalGQL

func (e *EthnicityFilterEnum) UnmarshalGQL(v any) error

func (*EthnicityFilterEnum) UnmarshalJSON

func (e *EthnicityFilterEnum) UnmarshalJSON(b []byte) error

type EyeColorCriterionInput

type EyeColorCriterionInput struct {
	Value    *EyeColorEnum     `json:"value,omitempty"`
	Modifier CriterionModifier `json:"modifier"`
}

type EyeColorEnum

type EyeColorEnum string
const (
	EyeColorEnumBlue  EyeColorEnum = "BLUE"
	EyeColorEnumBrown EyeColorEnum = "BROWN"
	EyeColorEnumGrey  EyeColorEnum = "GREY"
	EyeColorEnumGreen EyeColorEnum = "GREEN"
	EyeColorEnumHazel EyeColorEnum = "HAZEL"
	EyeColorEnumRed   EyeColorEnum = "RED"
)

func (EyeColorEnum) IsValid

func (e EyeColorEnum) IsValid() bool

func (EyeColorEnum) MarshalGQL

func (e EyeColorEnum) MarshalGQL(w io.Writer)

func (EyeColorEnum) MarshalJSON

func (e EyeColorEnum) MarshalJSON() ([]byte, error)

func (EyeColorEnum) String

func (e EyeColorEnum) String() string

func (*EyeColorEnum) UnmarshalGQL

func (e *EyeColorEnum) UnmarshalGQL(v any) error

func (*EyeColorEnum) UnmarshalJSON

func (e *EyeColorEnum) UnmarshalJSON(b []byte) error

type FailedOwnEdit

type FailedOwnEdit struct {
	Edit *Edit `json:"edit"`
}

func (FailedOwnEdit) IsNotificationData

func (FailedOwnEdit) IsNotificationData()

type FavoriteFilter

type FavoriteFilter string
const (
	FavoriteFilterPerformer FavoriteFilter = "PERFORMER"
	FavoriteFilterStudio    FavoriteFilter = "STUDIO"
	FavoriteFilterAll       FavoriteFilter = "ALL"
)

func (FavoriteFilter) IsValid

func (e FavoriteFilter) IsValid() bool

func (FavoriteFilter) MarshalGQL

func (e FavoriteFilter) MarshalGQL(w io.Writer)

func (FavoriteFilter) MarshalJSON

func (e FavoriteFilter) MarshalJSON() ([]byte, error)

func (FavoriteFilter) String

func (e FavoriteFilter) String() string

func (*FavoriteFilter) UnmarshalGQL

func (e *FavoriteFilter) UnmarshalGQL(v any) error

func (*FavoriteFilter) UnmarshalJSON

func (e *FavoriteFilter) UnmarshalJSON(b []byte) error

type FavoritePerformerEdit

type FavoritePerformerEdit struct {
	Edit *Edit `json:"edit"`
}

func (FavoritePerformerEdit) IsNotificationData

func (FavoritePerformerEdit) IsNotificationData()

type FavoritePerformerScene

type FavoritePerformerScene struct {
	Scene *Scene `json:"scene"`
}

func (FavoritePerformerScene) IsNotificationData

func (FavoritePerformerScene) IsNotificationData()

type FavoriteStudioEdit

type FavoriteStudioEdit struct {
	Edit *Edit `json:"edit"`
}

func (FavoriteStudioEdit) IsNotificationData

func (FavoriteStudioEdit) IsNotificationData()

type FavoriteStudioScene

type FavoriteStudioScene struct {
	Scene *Scene `json:"scene"`
}

func (FavoriteStudioScene) IsNotificationData

func (FavoriteStudioScene) IsNotificationData()

type FindPerformerByID

type FindPerformerByID struct {
	FindPerformer *PerformerFragment "json:\"findPerformer,omitempty\" graphql:\"findPerformer\""
}

func (*FindPerformerByID) GetFindPerformer

func (t *FindPerformerByID) GetFindPerformer() *PerformerFragment

type FindSceneByID

type FindSceneByID struct {
	FindScene *SceneFragment "json:\"findScene,omitempty\" graphql:\"findScene\""
}

func (*FindSceneByID) GetFindScene

func (t *FindSceneByID) GetFindScene() *SceneFragment

type FindSceneByID_FindScene_SceneFragment_Studio_StudioFragment_Parent

type FindSceneByID_FindScene_SceneFragment_Studio_StudioFragment_Parent struct {
	ID   string "json:\"id\" graphql:\"id\""
	Name string "json:\"name\" graphql:\"name\""
}

func (*FindSceneByID_FindScene_SceneFragment_Studio_StudioFragment_Parent) GetID

func (*FindSceneByID_FindScene_SceneFragment_Studio_StudioFragment_Parent) GetName

type FindSceneByID_FindScene_SceneFragment_Tags_TagFragment_Category added in v0.31.0

type FindSceneByID_FindScene_SceneFragment_Tags_TagFragment_Category struct {
	Description *string "json:\"description,omitempty\" graphql:\"description\""
	ID          string  "json:\"id\" graphql:\"id\""
	Name        string  "json:\"name\" graphql:\"name\""
}

func (*FindSceneByID_FindScene_SceneFragment_Tags_TagFragment_Category) GetDescription added in v0.31.0

func (*FindSceneByID_FindScene_SceneFragment_Tags_TagFragment_Category) GetID added in v0.31.0

func (*FindSceneByID_FindScene_SceneFragment_Tags_TagFragment_Category) GetName added in v0.31.0

type FindScenesBySceneFingerprints

type FindScenesBySceneFingerprints struct {
	FindScenesBySceneFingerprints [][]*SceneFragment "json:\"findScenesBySceneFingerprints\" graphql:\"findScenesBySceneFingerprints\""
}

func (*FindScenesBySceneFingerprints) GetFindScenesBySceneFingerprints

func (t *FindScenesBySceneFingerprints) GetFindScenesBySceneFingerprints() [][]*SceneFragment

type FindScenesBySceneFingerprints_FindScenesBySceneFingerprints_SceneFragment_Studio_StudioFragment_Parent

type FindScenesBySceneFingerprints_FindScenesBySceneFingerprints_SceneFragment_Studio_StudioFragment_Parent struct {
	ID   string "json:\"id\" graphql:\"id\""
	Name string "json:\"name\" graphql:\"name\""
}

func (*FindScenesBySceneFingerprints_FindScenesBySceneFingerprints_SceneFragment_Studio_StudioFragment_Parent) GetID

func (*FindScenesBySceneFingerprints_FindScenesBySceneFingerprints_SceneFragment_Studio_StudioFragment_Parent) GetName

type FindScenesBySceneFingerprints_FindScenesBySceneFingerprints_SceneFragment_Tags_TagFragment_Category added in v0.31.0

type FindScenesBySceneFingerprints_FindScenesBySceneFingerprints_SceneFragment_Tags_TagFragment_Category struct {
	Description *string "json:\"description,omitempty\" graphql:\"description\""
	ID          string  "json:\"id\" graphql:\"id\""
	Name        string  "json:\"name\" graphql:\"name\""
}

func (*FindScenesBySceneFingerprints_FindScenesBySceneFingerprints_SceneFragment_Tags_TagFragment_Category) GetDescription added in v0.31.0

func (*FindScenesBySceneFingerprints_FindScenesBySceneFingerprints_SceneFragment_Tags_TagFragment_Category) GetID added in v0.31.0

func (*FindScenesBySceneFingerprints_FindScenesBySceneFingerprints_SceneFragment_Tags_TagFragment_Category) GetName added in v0.31.0

type FindStudio

type FindStudio struct {
	FindStudio *StudioFragment "json:\"findStudio,omitempty\" graphql:\"findStudio\""
}

func (*FindStudio) GetFindStudio

func (t *FindStudio) GetFindStudio() *StudioFragment

type FindStudio_FindStudio_StudioFragment_Parent

type FindStudio_FindStudio_StudioFragment_Parent struct {
	ID   string "json:\"id\" graphql:\"id\""
	Name string "json:\"name\" graphql:\"name\""
}

func (*FindStudio_FindStudio_StudioFragment_Parent) GetID

func (*FindStudio_FindStudio_StudioFragment_Parent) GetName

type FindTag added in v0.30.0

type FindTag struct {
	FindTag *TagFragment "json:\"findTag,omitempty\" graphql:\"findTag\""
}

func (*FindTag) GetFindTag added in v0.30.0

func (t *FindTag) GetFindTag() *TagFragment

type FindTag_FindTag_TagFragment_Category added in v0.31.0

type FindTag_FindTag_TagFragment_Category struct {
	Description *string "json:\"description,omitempty\" graphql:\"description\""
	ID          string  "json:\"id\" graphql:\"id\""
	Name        string  "json:\"name\" graphql:\"name\""
}

func (*FindTag_FindTag_TagFragment_Category) GetDescription added in v0.31.0

func (t *FindTag_FindTag_TagFragment_Category) GetDescription() *string

func (*FindTag_FindTag_TagFragment_Category) GetID added in v0.31.0

func (*FindTag_FindTag_TagFragment_Category) GetName added in v0.31.0

type Fingerprint

type Fingerprint struct {
	Hash      string               `json:"hash"`
	Algorithm FingerprintAlgorithm `json:"algorithm"`
	Duration  int                  `json:"duration"`
	// number of times this fingerprint has been submitted (excluding reports)
	Submissions int `json:"submissions"`
	// number of times this fingerprint has been reported
	Reports int       `json:"reports"`
	Created time.Time `json:"created"`
	Updated time.Time `json:"updated"`
	// true if the current user submitted this fingerprint
	UserSubmitted bool `json:"user_submitted"`
	// true if the current user reported this fingerprint
	UserReported bool `json:"user_reported"`
}

type FingerprintAlgorithm

type FingerprintAlgorithm string
const (
	FingerprintAlgorithmMd5    FingerprintAlgorithm = "MD5"
	FingerprintAlgorithmOshash FingerprintAlgorithm = "OSHASH"
	FingerprintAlgorithmPhash  FingerprintAlgorithm = "PHASH"
)

func (FingerprintAlgorithm) IsValid

func (e FingerprintAlgorithm) IsValid() bool

func (FingerprintAlgorithm) MarshalGQL

func (e FingerprintAlgorithm) MarshalGQL(w io.Writer)

func (FingerprintAlgorithm) MarshalJSON

func (e FingerprintAlgorithm) MarshalJSON() ([]byte, error)

func (FingerprintAlgorithm) String

func (e FingerprintAlgorithm) String() string

func (*FingerprintAlgorithm) UnmarshalGQL

func (e *FingerprintAlgorithm) UnmarshalGQL(v any) error

func (*FingerprintAlgorithm) UnmarshalJSON

func (e *FingerprintAlgorithm) UnmarshalJSON(b []byte) error

type FingerprintEditInput

type FingerprintEditInput struct {
	UserIds     []string             `json:"user_ids,omitempty"`
	Hash        string               `json:"hash"`
	Algorithm   FingerprintAlgorithm `json:"algorithm"`
	Duration    int                  `json:"duration"`
	Created     time.Time            `json:"created"`
	Submissions *int                 `json:"submissions,omitempty"`
	Updated     *time.Time           `json:"updated,omitempty"`
}

type FingerprintFragment

type FingerprintFragment struct {
	Algorithm FingerprintAlgorithm "json:\"algorithm\" graphql:\"algorithm\""
	Hash      string               "json:\"hash\" graphql:\"hash\""
	Duration  int                  "json:\"duration\" graphql:\"duration\""
}

func (*FingerprintFragment) GetAlgorithm

func (t *FingerprintFragment) GetAlgorithm() *FingerprintAlgorithm

func (*FingerprintFragment) GetDuration

func (t *FingerprintFragment) GetDuration() int

func (*FingerprintFragment) GetHash

func (t *FingerprintFragment) GetHash() string

type FingerprintInput

type FingerprintInput struct {
	// assumes current user if omitted. Ignored for non-modify Users
	UserIds   []string             `json:"user_ids,omitempty"`
	Hash      string               `json:"hash"`
	Algorithm FingerprintAlgorithm `json:"algorithm"`
	Duration  int                  `json:"duration"`
}

type FingerprintQueryInput

type FingerprintQueryInput struct {
	Hash      string               `json:"hash"`
	Algorithm FingerprintAlgorithm `json:"algorithm"`
}

type FingerprintSubmission

type FingerprintSubmission struct {
	SceneID     string                     `json:"scene_id"`
	Fingerprint *FingerprintInput          `json:"fingerprint"`
	Unmatch     *bool                      `json:"unmatch,omitempty"`
	Vote        *FingerprintSubmissionType `json:"vote,omitempty"`
}

type FingerprintSubmissionType

type FingerprintSubmissionType string
const (
	// Positive vote
	FingerprintSubmissionTypeValid FingerprintSubmissionType = "VALID"
	// Report as invalid
	FingerprintSubmissionTypeInvalid FingerprintSubmissionType = "INVALID"
	// Remove vote
	FingerprintSubmissionTypeRemove FingerprintSubmissionType = "REMOVE"
)

func (FingerprintSubmissionType) IsValid

func (e FingerprintSubmissionType) IsValid() bool

func (FingerprintSubmissionType) MarshalGQL

func (e FingerprintSubmissionType) MarshalGQL(w io.Writer)

func (FingerprintSubmissionType) MarshalJSON

func (e FingerprintSubmissionType) MarshalJSON() ([]byte, error)

func (FingerprintSubmissionType) String

func (e FingerprintSubmissionType) String() string

func (*FingerprintSubmissionType) UnmarshalGQL

func (e *FingerprintSubmissionType) UnmarshalGQL(v any) error

func (*FingerprintSubmissionType) UnmarshalJSON

func (e *FingerprintSubmissionType) UnmarshalJSON(b []byte) error

type FingerprintedSceneEdit

type FingerprintedSceneEdit struct {
	Edit *Edit `json:"edit"`
}

func (FingerprintedSceneEdit) IsNotificationData

func (FingerprintedSceneEdit) IsNotificationData()

type FuzzyDate

type FuzzyDate struct {
	Date     string           `json:"date"`
	Accuracy DateAccuracyEnum `json:"accuracy"`
}

type GenderEnum

type GenderEnum string
const (
	GenderEnumMale              GenderEnum = "MALE"
	GenderEnumFemale            GenderEnum = "FEMALE"
	GenderEnumTransgenderMale   GenderEnum = "TRANSGENDER_MALE"
	GenderEnumTransgenderFemale GenderEnum = "TRANSGENDER_FEMALE"
	GenderEnumIntersex          GenderEnum = "INTERSEX"
	GenderEnumNonBinary         GenderEnum = "NON_BINARY"
)

func (GenderEnum) IsValid

func (e GenderEnum) IsValid() bool

func (GenderEnum) MarshalGQL

func (e GenderEnum) MarshalGQL(w io.Writer)

func (GenderEnum) MarshalJSON

func (e GenderEnum) MarshalJSON() ([]byte, error)

func (GenderEnum) String

func (e GenderEnum) String() string

func (*GenderEnum) UnmarshalGQL

func (e *GenderEnum) UnmarshalGQL(v any) error

func (*GenderEnum) UnmarshalJSON

func (e *GenderEnum) UnmarshalJSON(b []byte) error

type GenderFilterEnum

type GenderFilterEnum string
const (
	GenderFilterEnumUnknown           GenderFilterEnum = "UNKNOWN"
	GenderFilterEnumMale              GenderFilterEnum = "MALE"
	GenderFilterEnumFemale            GenderFilterEnum = "FEMALE"
	GenderFilterEnumTransgenderMale   GenderFilterEnum = "TRANSGENDER_MALE"
	GenderFilterEnumTransgenderFemale GenderFilterEnum = "TRANSGENDER_FEMALE"
	GenderFilterEnumIntersex          GenderFilterEnum = "INTERSEX"
	GenderFilterEnumNonBinary         GenderFilterEnum = "NON_BINARY"
)

func (GenderFilterEnum) IsValid

func (e GenderFilterEnum) IsValid() bool

func (GenderFilterEnum) MarshalGQL

func (e GenderFilterEnum) MarshalGQL(w io.Writer)

func (GenderFilterEnum) MarshalJSON

func (e GenderFilterEnum) MarshalJSON() ([]byte, error)

func (GenderFilterEnum) String

func (e GenderFilterEnum) String() string

func (*GenderFilterEnum) UnmarshalGQL

func (e *GenderFilterEnum) UnmarshalGQL(v any) error

func (*GenderFilterEnum) UnmarshalJSON

func (e *GenderFilterEnum) UnmarshalJSON(b []byte) error

type GenerateInviteCodeInput

type GenerateInviteCodeInput struct {
	Keys *int `json:"keys,omitempty"`
	Uses *int `json:"uses,omitempty"`
	TTL  *int `json:"ttl,omitempty"`
}

type GrantInviteInput

type GrantInviteInput struct {
	UserID string `json:"user_id"`
	Amount int    `json:"amount"`
}

type HairColorCriterionInput

type HairColorCriterionInput struct {
	Value    *HairColorEnum    `json:"value,omitempty"`
	Modifier CriterionModifier `json:"modifier"`
}

type HairColorEnum

type HairColorEnum string
const (
	HairColorEnumBlonde   HairColorEnum = "BLONDE"
	HairColorEnumBrunette HairColorEnum = "BRUNETTE"
	HairColorEnumBlack    HairColorEnum = "BLACK"
	HairColorEnumRed      HairColorEnum = "RED"
	HairColorEnumAuburn   HairColorEnum = "AUBURN"
	HairColorEnumGrey     HairColorEnum = "GREY"
	HairColorEnumBald     HairColorEnum = "BALD"
	HairColorEnumVarious  HairColorEnum = "VARIOUS"
	HairColorEnumWhite    HairColorEnum = "WHITE"
	HairColorEnumOther    HairColorEnum = "OTHER"
)

func (HairColorEnum) IsValid

func (e HairColorEnum) IsValid() bool

func (HairColorEnum) MarshalGQL

func (e HairColorEnum) MarshalGQL(w io.Writer)

func (HairColorEnum) MarshalJSON

func (e HairColorEnum) MarshalJSON() ([]byte, error)

func (HairColorEnum) String

func (e HairColorEnum) String() string

func (*HairColorEnum) UnmarshalGQL

func (e *HairColorEnum) UnmarshalGQL(v any) error

func (*HairColorEnum) UnmarshalJSON

func (e *HairColorEnum) UnmarshalJSON(b []byte) error

type IDCriterionInput

type IDCriterionInput struct {
	Value    []string          `json:"value"`
	Modifier CriterionModifier `json:"modifier"`
}

type Image

type Image struct {
	ID     string `json:"id"`
	URL    string `json:"url"`
	Width  int    `json:"width"`
	Height int    `json:"height"`
}

type ImageCreateInput

type ImageCreateInput struct {
	URL  *string         `json:"url,omitempty"`
	File *graphql.Upload `json:"file,omitempty"`
}

type ImageDestroyInput

type ImageDestroyInput struct {
	ID string `json:"id"`
}

type ImageFragment

type ImageFragment struct {
	ID     string "json:\"id\" graphql:\"id\""
	URL    string "json:\"url\" graphql:\"url\""
	Width  int    "json:\"width\" graphql:\"width\""
	Height int    "json:\"height\" graphql:\"height\""
}

func (*ImageFragment) GetHeight

func (t *ImageFragment) GetHeight() int

func (*ImageFragment) GetID

func (t *ImageFragment) GetID() string

func (*ImageFragment) GetURL

func (t *ImageFragment) GetURL() string

func (*ImageFragment) GetWidth

func (t *ImageFragment) GetWidth() int

type ImageUpdateInput

type ImageUpdateInput struct {
	ID  string  `json:"id"`
	URL *string `json:"url,omitempty"`
}

type IntCriterionInput

type IntCriterionInput struct {
	Value    int               `json:"value"`
	Modifier CriterionModifier `json:"modifier"`
}

type InviteKey

type InviteKey struct {
	ID      string     `json:"id"`
	Uses    *int       `json:"uses,omitempty"`
	Expires *time.Time `json:"expires,omitempty"`
}

type MarkNotificationReadInput

type MarkNotificationReadInput struct {
	Type NotificationEnum `json:"type"`
	ID   string           `json:"id"`
}

type Me

type Me struct {
	Me *Me_Me "json:\"me,omitempty\" graphql:\"me\""
}

func (*Me) GetMe

func (t *Me) GetMe() *Me_Me

type Me_Me

type Me_Me struct {
	Name string "json:\"name\" graphql:\"name\""
}

func (*Me_Me) GetName

func (t *Me_Me) GetName() string

type Measurements

type Measurements struct {
	CupSize  *string `json:"cup_size,omitempty"`
	BandSize *int    `json:"band_size,omitempty"`
	Waist    *int    `json:"waist,omitempty"`
	Hip      *int    `json:"hip,omitempty"`
}

type MeasurementsFragment

type MeasurementsFragment struct {
	BandSize *int    "json:\"band_size,omitempty\" graphql:\"band_size\""
	CupSize  *string "json:\"cup_size,omitempty\" graphql:\"cup_size\""
	Waist    *int    "json:\"waist,omitempty\" graphql:\"waist\""
	Hip      *int    "json:\"hip,omitempty\" graphql:\"hip\""
}

func (*MeasurementsFragment) GetBandSize

func (t *MeasurementsFragment) GetBandSize() *int

func (*MeasurementsFragment) GetCupSize

func (t *MeasurementsFragment) GetCupSize() *string

func (*MeasurementsFragment) GetHip

func (t *MeasurementsFragment) GetHip() *int

func (*MeasurementsFragment) GetWaist

func (t *MeasurementsFragment) GetWaist() *int

type MultiIDCriterionInput

type MultiIDCriterionInput struct {
	Value    []string          `json:"value,omitempty"`
	Modifier CriterionModifier `json:"modifier"`
}

type MultiStringCriterionInput

type MultiStringCriterionInput struct {
	Value    []string          `json:"value"`
	Modifier CriterionModifier `json:"modifier"`
}

type Mutation

type Mutation struct {
}

type NewUserInput

type NewUserInput struct {
	Email     string  `json:"email"`
	InviteKey *string `json:"invite_key,omitempty"`
}

type Notification

type Notification struct {
	Created time.Time        `json:"created"`
	Read    bool             `json:"read"`
	Data    NotificationData `json:"data"`
}

type NotificationData

type NotificationData interface {
	IsNotificationData()
}

type NotificationEnum

type NotificationEnum string
const (
	NotificationEnumFavoritePerformerScene NotificationEnum = "FAVORITE_PERFORMER_SCENE"
	NotificationEnumFavoritePerformerEdit  NotificationEnum = "FAVORITE_PERFORMER_EDIT"
	NotificationEnumFavoriteStudioScene    NotificationEnum = "FAVORITE_STUDIO_SCENE"
	NotificationEnumFavoriteStudioEdit     NotificationEnum = "FAVORITE_STUDIO_EDIT"
	NotificationEnumCommentOwnEdit         NotificationEnum = "COMMENT_OWN_EDIT"
	NotificationEnumDownvoteOwnEdit        NotificationEnum = "DOWNVOTE_OWN_EDIT"
	NotificationEnumFailedOwnEdit          NotificationEnum = "FAILED_OWN_EDIT"
	NotificationEnumCommentCommentedEdit   NotificationEnum = "COMMENT_COMMENTED_EDIT"
	NotificationEnumCommentVotedEdit       NotificationEnum = "COMMENT_VOTED_EDIT"
	NotificationEnumUpdatedEdit            NotificationEnum = "UPDATED_EDIT"
	NotificationEnumFingerprintedSceneEdit NotificationEnum = "FINGERPRINTED_SCENE_EDIT"
)

func (NotificationEnum) IsValid

func (e NotificationEnum) IsValid() bool

func (NotificationEnum) MarshalGQL

func (e NotificationEnum) MarshalGQL(w io.Writer)

func (NotificationEnum) MarshalJSON

func (e NotificationEnum) MarshalJSON() ([]byte, error)

func (NotificationEnum) String

func (e NotificationEnum) String() string

func (*NotificationEnum) UnmarshalGQL

func (e *NotificationEnum) UnmarshalGQL(v any) error

func (*NotificationEnum) UnmarshalJSON

func (e *NotificationEnum) UnmarshalJSON(b []byte) error

type OperationEnum

type OperationEnum string
const (
	OperationEnumCreate  OperationEnum = "CREATE"
	OperationEnumModify  OperationEnum = "MODIFY"
	OperationEnumDestroy OperationEnum = "DESTROY"
	OperationEnumMerge   OperationEnum = "MERGE"
)

func (OperationEnum) IsValid

func (e OperationEnum) IsValid() bool

func (OperationEnum) MarshalGQL

func (e OperationEnum) MarshalGQL(w io.Writer)

func (OperationEnum) MarshalJSON

func (e OperationEnum) MarshalJSON() ([]byte, error)

func (OperationEnum) String

func (e OperationEnum) String() string

func (*OperationEnum) UnmarshalGQL

func (e *OperationEnum) UnmarshalGQL(v any) error

func (*OperationEnum) UnmarshalJSON

func (e *OperationEnum) UnmarshalJSON(b []byte) error

type Performer

type Performer struct {
	ID             string         `json:"id"`
	Name           string         `json:"name"`
	Disambiguation *string        `json:"disambiguation,omitempty"`
	Aliases        []string       `json:"aliases"`
	Gender         *GenderEnum    `json:"gender,omitempty"`
	Urls           []*URL         `json:"urls"`
	Birthdate      *FuzzyDate     `json:"birthdate,omitempty"`
	BirthDate      *string        `json:"birth_date,omitempty"`
	DeathDate      *string        `json:"death_date,omitempty"`
	Age            *int           `json:"age,omitempty"`
	Ethnicity      *EthnicityEnum `json:"ethnicity,omitempty"`
	Country        *string        `json:"country,omitempty"`
	EyeColor       *EyeColorEnum  `json:"eye_color,omitempty"`
	HairColor      *HairColorEnum `json:"hair_color,omitempty"`
	// Height in cm
	Height          *int                `json:"height,omitempty"`
	Measurements    *Measurements       `json:"measurements"`
	CupSize         *string             `json:"cup_size,omitempty"`
	BandSize        *int                `json:"band_size,omitempty"`
	WaistSize       *int                `json:"waist_size,omitempty"`
	HipSize         *int                `json:"hip_size,omitempty"`
	BreastType      *BreastTypeEnum     `json:"breast_type,omitempty"`
	CareerStartYear *int                `json:"career_start_year,omitempty"`
	CareerEndYear   *int                `json:"career_end_year,omitempty"`
	Tattoos         []*BodyModification `json:"tattoos,omitempty"`
	Piercings       []*BodyModification `json:"piercings,omitempty"`
	Images          []*Image            `json:"images"`
	Deleted         bool                `json:"deleted"`
	Edits           []*Edit             `json:"edits"`
	SceneCount      int                 `json:"scene_count"`
	Scenes          []*Scene            `json:"scenes"`
	// IDs of performers that were merged into this one
	MergedIds []string `json:"merged_ids"`
	// ID of performer that replaces this one
	MergedIntoID *string            `json:"merged_into_id,omitempty"`
	Studios      []*PerformerStudio `json:"studios"`
	IsFavorite   bool               `json:"is_favorite"`
	Created      time.Time          `json:"created"`
	Updated      time.Time          `json:"updated"`
}

func (Performer) IsEditTarget

func (Performer) IsEditTarget()

func (Performer) IsSceneDraftPerformer

func (Performer) IsSceneDraftPerformer()

type PerformerAppearance

type PerformerAppearance struct {
	Performer *Performer `json:"performer"`
	// Performing as alias
	As *string `json:"as,omitempty"`
}

type PerformerAppearanceFragment

type PerformerAppearanceFragment struct {
	As        *string            "json:\"as,omitempty\" graphql:\"as\""
	Performer *PerformerFragment "json:\"performer\" graphql:\"performer\""
}

func (*PerformerAppearanceFragment) GetAs

func (t *PerformerAppearanceFragment) GetAs() *string

func (*PerformerAppearanceFragment) GetPerformer

type PerformerAppearanceInput

type PerformerAppearanceInput struct {
	PerformerID string `json:"performer_id"`
	// Performing as alias
	As *string `json:"as,omitempty"`
}

type PerformerCreateInput

type PerformerCreateInput struct {
	Name            string                   `json:"name"`
	Disambiguation  *string                  `json:"disambiguation,omitempty"`
	Aliases         []string                 `json:"aliases,omitempty"`
	Gender          *GenderEnum              `json:"gender,omitempty"`
	Urls            []*URLInput              `json:"urls,omitempty"`
	Birthdate       *string                  `json:"birthdate,omitempty"`
	Deathdate       *string                  `json:"deathdate,omitempty"`
	Ethnicity       *EthnicityEnum           `json:"ethnicity,omitempty"`
	Country         *string                  `json:"country,omitempty"`
	EyeColor        *EyeColorEnum            `json:"eye_color,omitempty"`
	HairColor       *HairColorEnum           `json:"hair_color,omitempty"`
	Height          *int                     `json:"height,omitempty"`
	CupSize         *string                  `json:"cup_size,omitempty"`
	BandSize        *int                     `json:"band_size,omitempty"`
	WaistSize       *int                     `json:"waist_size,omitempty"`
	HipSize         *int                     `json:"hip_size,omitempty"`
	BreastType      *BreastTypeEnum          `json:"breast_type,omitempty"`
	CareerStartYear *int                     `json:"career_start_year,omitempty"`
	CareerEndYear   *int                     `json:"career_end_year,omitempty"`
	Tattoos         []*BodyModificationInput `json:"tattoos,omitempty"`
	Piercings       []*BodyModificationInput `json:"piercings,omitempty"`
	ImageIds        []string                 `json:"image_ids,omitempty"`
	DraftID         *string                  `json:"draft_id,omitempty"`
}

type PerformerDestroyInput

type PerformerDestroyInput struct {
	ID string `json:"id"`
}

type PerformerDraft

type PerformerDraft struct {
	ID              *string  `json:"id,omitempty"`
	Name            string   `json:"name"`
	Disambiguation  *string  `json:"disambiguation,omitempty"`
	Aliases         *string  `json:"aliases,omitempty"`
	Gender          *string  `json:"gender,omitempty"`
	Birthdate       *string  `json:"birthdate,omitempty"`
	Deathdate       *string  `json:"deathdate,omitempty"`
	Urls            []string `json:"urls,omitempty"`
	Ethnicity       *string  `json:"ethnicity,omitempty"`
	Country         *string  `json:"country,omitempty"`
	EyeColor        *string  `json:"eye_color,omitempty"`
	HairColor       *string  `json:"hair_color,omitempty"`
	Height          *string  `json:"height,omitempty"`
	Measurements    *string  `json:"measurements,omitempty"`
	BreastType      *string  `json:"breast_type,omitempty"`
	Tattoos         *string  `json:"tattoos,omitempty"`
	Piercings       *string  `json:"piercings,omitempty"`
	CareerStartYear *int     `json:"career_start_year,omitempty"`
	CareerEndYear   *int     `json:"career_end_year,omitempty"`
	Image           *Image   `json:"image,omitempty"`
}

func (PerformerDraft) IsDraftData

func (PerformerDraft) IsDraftData()

type PerformerDraftInput

type PerformerDraftInput struct {
	ID              *string         `json:"id,omitempty"`
	Disambiguation  *string         `json:"disambiguation,omitempty"`
	Name            string          `json:"name"`
	Aliases         *string         `json:"aliases,omitempty"`
	Gender          *string         `json:"gender,omitempty"`
	Birthdate       *string         `json:"birthdate,omitempty"`
	Deathdate       *string         `json:"deathdate,omitempty"`
	Urls            []string        `json:"urls,omitempty"`
	Ethnicity       *string         `json:"ethnicity,omitempty"`
	Country         *string         `json:"country,omitempty"`
	EyeColor        *string         `json:"eye_color,omitempty"`
	HairColor       *string         `json:"hair_color,omitempty"`
	Height          *string         `json:"height,omitempty"`
	Measurements    *string         `json:"measurements,omitempty"`
	BreastType      *string         `json:"breast_type,omitempty"`
	Tattoos         *string         `json:"tattoos,omitempty"`
	Piercings       *string         `json:"piercings,omitempty"`
	CareerStartYear *int            `json:"career_start_year,omitempty"`
	CareerEndYear   *int            `json:"career_end_year,omitempty"`
	Image           *graphql.Upload `json:"image,omitempty"`
}

type PerformerEdit

type PerformerEdit struct {
	Name           *string        `json:"name,omitempty"`
	Disambiguation *string        `json:"disambiguation,omitempty"`
	AddedAliases   []string       `json:"added_aliases,omitempty"`
	RemovedAliases []string       `json:"removed_aliases,omitempty"`
	Gender         *GenderEnum    `json:"gender,omitempty"`
	AddedUrls      []*URL         `json:"added_urls,omitempty"`
	RemovedUrls    []*URL         `json:"removed_urls,omitempty"`
	Birthdate      *string        `json:"birthdate,omitempty"`
	Deathdate      *string        `json:"deathdate,omitempty"`
	Ethnicity      *EthnicityEnum `json:"ethnicity,omitempty"`
	Country        *string        `json:"country,omitempty"`
	EyeColor       *EyeColorEnum  `json:"eye_color,omitempty"`
	HairColor      *HairColorEnum `json:"hair_color,omitempty"`
	// Height in cm
	Height           *int                `json:"height,omitempty"`
	CupSize          *string             `json:"cup_size,omitempty"`
	BandSize         *int                `json:"band_size,omitempty"`
	WaistSize        *int                `json:"waist_size,omitempty"`
	HipSize          *int                `json:"hip_size,omitempty"`
	BreastType       *BreastTypeEnum     `json:"breast_type,omitempty"`
	CareerStartYear  *int                `json:"career_start_year,omitempty"`
	CareerEndYear    *int                `json:"career_end_year,omitempty"`
	AddedTattoos     []*BodyModification `json:"added_tattoos,omitempty"`
	RemovedTattoos   []*BodyModification `json:"removed_tattoos,omitempty"`
	AddedPiercings   []*BodyModification `json:"added_piercings,omitempty"`
	RemovedPiercings []*BodyModification `json:"removed_piercings,omitempty"`
	AddedImages      []*Image            `json:"added_images,omitempty"`
	RemovedImages    []*Image            `json:"removed_images,omitempty"`
	DraftID          *string             `json:"draft_id,omitempty"`
	Aliases          []string            `json:"aliases"`
	Urls             []*URL              `json:"urls"`
	Images           []*Image            `json:"images"`
	Tattoos          []*BodyModification `json:"tattoos"`
	Piercings        []*BodyModification `json:"piercings"`
}

func (PerformerEdit) IsEditDetails

func (PerformerEdit) IsEditDetails()

type PerformerEditDetailsInput

type PerformerEditDetailsInput struct {
	Name            *string                  `json:"name,omitempty"`
	Disambiguation  *string                  `json:"disambiguation,omitempty"`
	Aliases         []string                 `json:"aliases,omitempty"`
	Gender          *GenderEnum              `json:"gender,omitempty"`
	Urls            []*URLInput              `json:"urls,omitempty"`
	Birthdate       *string                  `json:"birthdate,omitempty"`
	Deathdate       *string                  `json:"deathdate,omitempty"`
	Ethnicity       *EthnicityEnum           `json:"ethnicity,omitempty"`
	Country         *string                  `json:"country,omitempty"`
	EyeColor        *EyeColorEnum            `json:"eye_color,omitempty"`
	HairColor       *HairColorEnum           `json:"hair_color,omitempty"`
	Height          *int                     `json:"height,omitempty"`
	CupSize         *string                  `json:"cup_size,omitempty"`
	BandSize        *int                     `json:"band_size,omitempty"`
	WaistSize       *int                     `json:"waist_size,omitempty"`
	HipSize         *int                     `json:"hip_size,omitempty"`
	BreastType      *BreastTypeEnum          `json:"breast_type,omitempty"`
	CareerStartYear *int                     `json:"career_start_year,omitempty"`
	CareerEndYear   *int                     `json:"career_end_year,omitempty"`
	Tattoos         []*BodyModificationInput `json:"tattoos,omitempty"`
	Piercings       []*BodyModificationInput `json:"piercings,omitempty"`
	ImageIds        []string                 `json:"image_ids,omitempty"`
	DraftID         *string                  `json:"draft_id,omitempty"`
}

type PerformerEditInput

type PerformerEditInput struct {
	Edit *EditInput `json:"edit"`
	// Not required for destroy type
	Details *PerformerEditDetailsInput `json:"details,omitempty"`
	// Controls aliases modification for merges and name modifications
	Options *PerformerEditOptionsInput `json:"options,omitempty"`
}

type PerformerEditOptions

type PerformerEditOptions struct {
	// Set performer alias on scenes without alias to old name if name is changed
	SetModifyAliases bool `json:"set_modify_aliases"`
	// Set performer alias on scenes attached to merge sources to old name
	SetMergeAliases bool `json:"set_merge_aliases"`
}

type PerformerEditOptionsInput

type PerformerEditOptionsInput struct {
	// Set performer alias on scenes without alias to old name if name is changed
	SetModifyAliases *bool `json:"set_modify_aliases,omitempty"`
	// Set performer alias on scenes attached to merge sources to old name
	SetMergeAliases *bool `json:"set_merge_aliases,omitempty"`
}

type PerformerFragment

type PerformerFragment struct {
	ID              string                      "json:\"id\" graphql:\"id\""
	Name            string                      "json:\"name\" graphql:\"name\""
	Disambiguation  *string                     "json:\"disambiguation,omitempty\" graphql:\"disambiguation\""
	Aliases         []string                    "json:\"aliases\" graphql:\"aliases\""
	Gender          *GenderEnum                 "json:\"gender,omitempty\" graphql:\"gender\""
	MergedIds       []string                    "json:\"merged_ids\" graphql:\"merged_ids\""
	Deleted         bool                        "json:\"deleted\" graphql:\"deleted\""
	MergedIntoID    *string                     "json:\"merged_into_id,omitempty\" graphql:\"merged_into_id\""
	Urls            []*URLFragment              "json:\"urls\" graphql:\"urls\""
	Images          []*ImageFragment            "json:\"images\" graphql:\"images\""
	BirthDate       *string                     "json:\"birth_date,omitempty\" graphql:\"birth_date\""
	DeathDate       *string                     "json:\"death_date,omitempty\" graphql:\"death_date\""
	Ethnicity       *EthnicityEnum              "json:\"ethnicity,omitempty\" graphql:\"ethnicity\""
	Country         *string                     "json:\"country,omitempty\" graphql:\"country\""
	EyeColor        *EyeColorEnum               "json:\"eye_color,omitempty\" graphql:\"eye_color\""
	HairColor       *HairColorEnum              "json:\"hair_color,omitempty\" graphql:\"hair_color\""
	Height          *int                        "json:\"height,omitempty\" graphql:\"height\""
	Measurements    *MeasurementsFragment       "json:\"measurements\" graphql:\"measurements\""
	BreastType      *BreastTypeEnum             "json:\"breast_type,omitempty\" graphql:\"breast_type\""
	CareerStartYear *int                        "json:\"career_start_year,omitempty\" graphql:\"career_start_year\""
	CareerEndYear   *int                        "json:\"career_end_year,omitempty\" graphql:\"career_end_year\""
	Tattoos         []*BodyModificationFragment "json:\"tattoos,omitempty\" graphql:\"tattoos\""
	Piercings       []*BodyModificationFragment "json:\"piercings,omitempty\" graphql:\"piercings\""
}

func (*PerformerFragment) GetAliases

func (t *PerformerFragment) GetAliases() []string

func (*PerformerFragment) GetBirthDate

func (t *PerformerFragment) GetBirthDate() *string

func (*PerformerFragment) GetBreastType

func (t *PerformerFragment) GetBreastType() *BreastTypeEnum

func (*PerformerFragment) GetCareerEndYear

func (t *PerformerFragment) GetCareerEndYear() *int

func (*PerformerFragment) GetCareerStartYear

func (t *PerformerFragment) GetCareerStartYear() *int

func (*PerformerFragment) GetCountry

func (t *PerformerFragment) GetCountry() *string

func (*PerformerFragment) GetDeathDate

func (t *PerformerFragment) GetDeathDate() *string

func (*PerformerFragment) GetDeleted

func (t *PerformerFragment) GetDeleted() bool

func (*PerformerFragment) GetDisambiguation

func (t *PerformerFragment) GetDisambiguation() *string

func (*PerformerFragment) GetEthnicity

func (t *PerformerFragment) GetEthnicity() *EthnicityEnum

func (*PerformerFragment) GetEyeColor

func (t *PerformerFragment) GetEyeColor() *EyeColorEnum

func (*PerformerFragment) GetGender

func (t *PerformerFragment) GetGender() *GenderEnum

func (*PerformerFragment) GetHairColor

func (t *PerformerFragment) GetHairColor() *HairColorEnum

func (*PerformerFragment) GetHeight

func (t *PerformerFragment) GetHeight() *int

func (*PerformerFragment) GetID

func (t *PerformerFragment) GetID() string

func (*PerformerFragment) GetImages

func (t *PerformerFragment) GetImages() []*ImageFragment

func (*PerformerFragment) GetMeasurements

func (t *PerformerFragment) GetMeasurements() *MeasurementsFragment

func (*PerformerFragment) GetMergedIds

func (t *PerformerFragment) GetMergedIds() []string

func (*PerformerFragment) GetMergedIntoID

func (t *PerformerFragment) GetMergedIntoID() *string

func (*PerformerFragment) GetName

func (t *PerformerFragment) GetName() string

func (*PerformerFragment) GetPiercings

func (t *PerformerFragment) GetPiercings() []*BodyModificationFragment

func (*PerformerFragment) GetTattoos

func (t *PerformerFragment) GetTattoos() []*BodyModificationFragment

func (*PerformerFragment) GetUrls

func (t *PerformerFragment) GetUrls() []*URLFragment

type PerformerQueryInput

type PerformerQueryInput struct {
	// Searches name and disambiguation - assumes like query unless quoted
	Names *string `json:"names,omitempty"`
	// Searches name only - assumes like query unless quoted
	Name *string `json:"name,omitempty"`
	// Search aliases only - assumes like query unless quoted
	Alias          *string               `json:"alias,omitempty"`
	Disambiguation *StringCriterionInput `json:"disambiguation,omitempty"`
	Gender         *GenderFilterEnum     `json:"gender,omitempty"`
	// Filter to search urls - assumes like query unless quoted
	URL             *string                         `json:"url,omitempty"`
	Birthdate       *DateCriterionInput             `json:"birthdate,omitempty"`
	Deathdate       *DateCriterionInput             `json:"deathdate,omitempty"`
	BirthYear       *IntCriterionInput              `json:"birth_year,omitempty"`
	Age             *IntCriterionInput              `json:"age,omitempty"`
	Ethnicity       *EthnicityFilterEnum            `json:"ethnicity,omitempty"`
	Country         *StringCriterionInput           `json:"country,omitempty"`
	EyeColor        *EyeColorCriterionInput         `json:"eye_color,omitempty"`
	HairColor       *HairColorCriterionInput        `json:"hair_color,omitempty"`
	Height          *IntCriterionInput              `json:"height,omitempty"`
	CupSize         *StringCriterionInput           `json:"cup_size,omitempty"`
	BandSize        *IntCriterionInput              `json:"band_size,omitempty"`
	WaistSize       *IntCriterionInput              `json:"waist_size,omitempty"`
	HipSize         *IntCriterionInput              `json:"hip_size,omitempty"`
	BreastType      *BreastTypeCriterionInput       `json:"breast_type,omitempty"`
	CareerStartYear *IntCriterionInput              `json:"career_start_year,omitempty"`
	CareerEndYear   *IntCriterionInput              `json:"career_end_year,omitempty"`
	Tattoos         *BodyModificationCriterionInput `json:"tattoos,omitempty"`
	Piercings       *BodyModificationCriterionInput `json:"piercings,omitempty"`
	// Filter by performerfavorite status for the current user
	IsFavorite *bool `json:"is_favorite,omitempty"`
	// Filter by a performer they have performed in scenes with
	PerformedWith *string `json:"performed_with,omitempty"`
	// Filter by a studio
	StudioID  *string           `json:"studio_id,omitempty"`
	Page      int               `json:"page"`
	PerPage   int               `json:"per_page"`
	Direction SortDirectionEnum `json:"direction"`
	Sort      PerformerSortEnum `json:"sort"`
}

type PerformerScenesInput

type PerformerScenesInput struct {
	// Filter by another performer that also performs in the scenes
	PerformedWith *string `json:"performed_with,omitempty"`
	// Filter by a studio
	StudioID *string `json:"studio_id,omitempty"`
	// Filter by tags
	Tags *MultiIDCriterionInput `json:"tags,omitempty"`
}

type PerformerSortEnum

type PerformerSortEnum string
const (
	PerformerSortEnumName            PerformerSortEnum = "NAME"
	PerformerSortEnumBirthdate       PerformerSortEnum = "BIRTHDATE"
	PerformerSortEnumDeathdate       PerformerSortEnum = "DEATHDATE"
	PerformerSortEnumSceneCount      PerformerSortEnum = "SCENE_COUNT"
	PerformerSortEnumCareerStartYear PerformerSortEnum = "CAREER_START_YEAR"
	PerformerSortEnumDebut           PerformerSortEnum = "DEBUT"
	PerformerSortEnumLastScene       PerformerSortEnum = "LAST_SCENE"
	PerformerSortEnumCreatedAt       PerformerSortEnum = "CREATED_AT"
	PerformerSortEnumUpdatedAt       PerformerSortEnum = "UPDATED_AT"
)

func (PerformerSortEnum) IsValid

func (e PerformerSortEnum) IsValid() bool

func (PerformerSortEnum) MarshalGQL

func (e PerformerSortEnum) MarshalGQL(w io.Writer)

func (PerformerSortEnum) MarshalJSON

func (e PerformerSortEnum) MarshalJSON() ([]byte, error)

func (PerformerSortEnum) String

func (e PerformerSortEnum) String() string

func (*PerformerSortEnum) UnmarshalGQL

func (e *PerformerSortEnum) UnmarshalGQL(v any) error

func (*PerformerSortEnum) UnmarshalJSON

func (e *PerformerSortEnum) UnmarshalJSON(b []byte) error

type PerformerStudio

type PerformerStudio struct {
	Studio     *Studio `json:"studio"`
	SceneCount int     `json:"scene_count"`
}

type PerformerUpdateInput

type PerformerUpdateInput struct {
	ID              string                   `json:"id"`
	Name            *string                  `json:"name,omitempty"`
	Disambiguation  *string                  `json:"disambiguation,omitempty"`
	Aliases         []string                 `json:"aliases,omitempty"`
	Gender          *GenderEnum              `json:"gender,omitempty"`
	Urls            []*URLInput              `json:"urls,omitempty"`
	Birthdate       *string                  `json:"birthdate,omitempty"`
	Deathdate       *string                  `json:"deathdate,omitempty"`
	Ethnicity       *EthnicityEnum           `json:"ethnicity,omitempty"`
	Country         *string                  `json:"country,omitempty"`
	EyeColor        *EyeColorEnum            `json:"eye_color,omitempty"`
	HairColor       *HairColorEnum           `json:"hair_color,omitempty"`
	Height          *int                     `json:"height,omitempty"`
	CupSize         *string                  `json:"cup_size,omitempty"`
	BandSize        *int                     `json:"band_size,omitempty"`
	WaistSize       *int                     `json:"waist_size,omitempty"`
	HipSize         *int                     `json:"hip_size,omitempty"`
	BreastType      *BreastTypeEnum          `json:"breast_type,omitempty"`
	CareerStartYear *int                     `json:"career_start_year,omitempty"`
	CareerEndYear   *int                     `json:"career_end_year,omitempty"`
	Tattoos         []*BodyModificationInput `json:"tattoos,omitempty"`
	Piercings       []*BodyModificationInput `json:"piercings,omitempty"`
	ImageIds        []string                 `json:"image_ids,omitempty"`
}

type Query

type Query struct {
}

The query root for this schema

type QueryEditsResultType

type QueryEditsResultType struct {
	Count int     `json:"count"`
	Edits []*Edit `json:"edits"`
}

type QueryExistingPerformerInput

type QueryExistingPerformerInput struct {
	Name           *string  `json:"name,omitempty"`
	Disambiguation *string  `json:"disambiguation,omitempty"`
	Urls           []string `json:"urls"`
}

type QueryExistingPerformerResult

type QueryExistingPerformerResult struct {
	Edits      []*Edit      `json:"edits"`
	Performers []*Performer `json:"performers"`
}

type QueryExistingSceneInput

type QueryExistingSceneInput struct {
	Title        *string             `json:"title,omitempty"`
	StudioID     *string             `json:"studio_id,omitempty"`
	Fingerprints []*FingerprintInput `json:"fingerprints"`
}

type QueryExistingSceneResult

type QueryExistingSceneResult struct {
	Edits  []*Edit  `json:"edits"`
	Scenes []*Scene `json:"scenes"`
}

type QueryNotificationsInput

type QueryNotificationsInput struct {
	Page       int               `json:"page"`
	PerPage    int               `json:"per_page"`
	Type       *NotificationEnum `json:"type,omitempty"`
	UnreadOnly *bool             `json:"unread_only,omitempty"`
}

type QueryNotificationsResult

type QueryNotificationsResult struct {
	Count         int             `json:"count"`
	Notifications []*Notification `json:"notifications"`
}

type QueryPerformersResultType

type QueryPerformersResultType struct {
	Count      int          `json:"count"`
	Performers []*Performer `json:"performers"`
}

type QueryScenesResultType

type QueryScenesResultType struct {
	Count  int      `json:"count"`
	Scenes []*Scene `json:"scenes"`
}

type QuerySitesResultType

type QuerySitesResultType struct {
	Count int     `json:"count"`
	Sites []*Site `json:"sites"`
}

type QueryStudiosResultType

type QueryStudiosResultType struct {
	Count   int       `json:"count"`
	Studios []*Studio `json:"studios"`
}

type QueryTagCategoriesResultType

type QueryTagCategoriesResultType struct {
	Count         int            `json:"count"`
	TagCategories []*TagCategory `json:"tag_categories"`
}

type QueryTags added in v0.30.0

type QueryTags struct {
	QueryTags QueryTags_QueryTags "json:\"queryTags\" graphql:\"queryTags\""
}

func (*QueryTags) GetQueryTags added in v0.30.0

func (t *QueryTags) GetQueryTags() *QueryTags_QueryTags

type QueryTagsResultType

type QueryTagsResultType struct {
	Count int    `json:"count"`
	Tags  []*Tag `json:"tags"`
}

type QueryTags_QueryTags added in v0.30.0

type QueryTags_QueryTags struct {
	Count int            "json:\"count\" graphql:\"count\""
	Tags  []*TagFragment "json:\"tags\" graphql:\"tags\""
}

func (*QueryTags_QueryTags) GetCount added in v0.30.0

func (t *QueryTags_QueryTags) GetCount() int

func (*QueryTags_QueryTags) GetTags added in v0.30.0

func (t *QueryTags_QueryTags) GetTags() []*TagFragment

type QueryTags_QueryTags_Tags_TagFragment_Category added in v0.31.0

type QueryTags_QueryTags_Tags_TagFragment_Category struct {
	Description *string "json:\"description,omitempty\" graphql:\"description\""
	ID          string  "json:\"id\" graphql:\"id\""
	Name        string  "json:\"name\" graphql:\"name\""
}

func (*QueryTags_QueryTags_Tags_TagFragment_Category) GetDescription added in v0.31.0

func (*QueryTags_QueryTags_Tags_TagFragment_Category) GetID added in v0.31.0

func (*QueryTags_QueryTags_Tags_TagFragment_Category) GetName added in v0.31.0

type QueryUsersResultType

type QueryUsersResultType struct {
	Count int     `json:"count"`
	Users []*User `json:"users"`
}

type ResetPasswordInput

type ResetPasswordInput struct {
	Email string `json:"email"`
}

type RevokeInviteInput

type RevokeInviteInput struct {
	UserID string `json:"user_id"`
	Amount int    `json:"amount"`
}

type RoleCriterionInput

type RoleCriterionInput struct {
	Value    []RoleEnum        `json:"value"`
	Modifier CriterionModifier `json:"modifier"`
}

type RoleEnum

type RoleEnum string
const (
	RoleEnumRead   RoleEnum = "READ"
	RoleEnumVote   RoleEnum = "VOTE"
	RoleEnumEdit   RoleEnum = "EDIT"
	RoleEnumModify RoleEnum = "MODIFY"
	RoleEnumAdmin  RoleEnum = "ADMIN"
	// May generate invites without tokens
	RoleEnumInvite RoleEnum = "INVITE"
	// May grant and rescind invite tokens and resind invite keys
	RoleEnumManageInvites RoleEnum = "MANAGE_INVITES"
	RoleEnumBot           RoleEnum = "BOT"
	RoleEnumReadOnly      RoleEnum = "READ_ONLY"
	RoleEnumEditTags      RoleEnum = "EDIT_TAGS"
)

func (RoleEnum) IsValid

func (e RoleEnum) IsValid() bool

func (RoleEnum) MarshalGQL

func (e RoleEnum) MarshalGQL(w io.Writer)

func (RoleEnum) MarshalJSON

func (e RoleEnum) MarshalJSON() ([]byte, error)

func (RoleEnum) String

func (e RoleEnum) String() string

func (*RoleEnum) UnmarshalGQL

func (e *RoleEnum) UnmarshalGQL(v any) error

func (*RoleEnum) UnmarshalJSON

func (e *RoleEnum) UnmarshalJSON(b []byte) error

type Scene

type Scene struct {
	ID             string                 `json:"id"`
	Title          *string                `json:"title,omitempty"`
	Details        *string                `json:"details,omitempty"`
	Date           *string                `json:"date,omitempty"`
	ReleaseDate    *string                `json:"release_date,omitempty"`
	ProductionDate *string                `json:"production_date,omitempty"`
	Urls           []*URL                 `json:"urls"`
	Studio         *Studio                `json:"studio,omitempty"`
	Tags           []*Tag                 `json:"tags"`
	Images         []*Image               `json:"images"`
	Performers     []*PerformerAppearance `json:"performers"`
	Fingerprints   []*Fingerprint         `json:"fingerprints"`
	Duration       *int                   `json:"duration,omitempty"`
	Director       *string                `json:"director,omitempty"`
	Code           *string                `json:"code,omitempty"`
	Deleted        bool                   `json:"deleted"`
	Edits          []*Edit                `json:"edits"`
	Created        time.Time              `json:"created"`
	Updated        time.Time              `json:"updated"`
}

func (Scene) IsEditTarget

func (Scene) IsEditTarget()

type SceneCreateInput

type SceneCreateInput struct {
	Title          *string                     `json:"title,omitempty"`
	Details        *string                     `json:"details,omitempty"`
	Urls           []*URLInput                 `json:"urls,omitempty"`
	Date           string                      `json:"date"`
	ProductionDate *string                     `json:"production_date,omitempty"`
	StudioID       *string                     `json:"studio_id,omitempty"`
	Performers     []*PerformerAppearanceInput `json:"performers,omitempty"`
	TagIds         []string                    `json:"tag_ids,omitempty"`
	ImageIds       []string                    `json:"image_ids,omitempty"`
	Fingerprints   []*FingerprintEditInput     `json:"fingerprints"`
	Duration       *int                        `json:"duration,omitempty"`
	Director       *string                     `json:"director,omitempty"`
	Code           *string                     `json:"code,omitempty"`
}

type SceneDestroyInput

type SceneDestroyInput struct {
	ID string `json:"id"`
}

type SceneDraft

type SceneDraft struct {
	ID             *string               `json:"id,omitempty"`
	Title          *string               `json:"title,omitempty"`
	Code           *string               `json:"code,omitempty"`
	Details        *string               `json:"details,omitempty"`
	Director       *string               `json:"director,omitempty"`
	Urls           []string              `json:"urls,omitempty"`
	Date           *string               `json:"date,omitempty"`
	ProductionDate *string               `json:"production_date,omitempty"`
	Studio         SceneDraftStudio      `json:"studio,omitempty"`
	Performers     []SceneDraftPerformer `json:"performers"`
	Tags           []SceneDraftTag       `json:"tags,omitempty"`
	Image          *Image                `json:"image,omitempty"`
	Fingerprints   []*DraftFingerprint   `json:"fingerprints"`
}

func (SceneDraft) IsDraftData

func (SceneDraft) IsDraftData()

type SceneDraftInput

type SceneDraftInput struct {
	ID             *string             `json:"id,omitempty"`
	Title          *string             `json:"title,omitempty"`
	Code           *string             `json:"code,omitempty"`
	Details        *string             `json:"details,omitempty"`
	Director       *string             `json:"director,omitempty"`
	URL            *string             `json:"url,omitempty"`
	Urls           []string            `json:"urls,omitempty"`
	Date           *string             `json:"date,omitempty"`
	ProductionDate *string             `json:"production_date,omitempty"`
	Studio         *DraftEntityInput   `json:"studio,omitempty"`
	Performers     []*DraftEntityInput `json:"performers"`
	Tags           []*DraftEntityInput `json:"tags,omitempty"`
	Image          *graphql.Upload     `json:"image,omitempty"`
	Fingerprints   []*FingerprintInput `json:"fingerprints"`
}

type SceneDraftPerformer

type SceneDraftPerformer interface {
	IsSceneDraftPerformer()
}

type SceneDraftStudio

type SceneDraftStudio interface {
	IsSceneDraftStudio()
}

type SceneDraftTag

type SceneDraftTag interface {
	IsSceneDraftTag()
}

type SceneEdit

type SceneEdit struct {
	Title          *string `json:"title,omitempty"`
	Details        *string `json:"details,omitempty"`
	AddedUrls      []*URL  `json:"added_urls,omitempty"`
	RemovedUrls    []*URL  `json:"removed_urls,omitempty"`
	Date           *string `json:"date,omitempty"`
	ProductionDate *string `json:"production_date,omitempty"`
	Studio         *Studio `json:"studio,omitempty"`
	// Added or modified performer appearance entries
	AddedPerformers     []*PerformerAppearance `json:"added_performers,omitempty"`
	RemovedPerformers   []*PerformerAppearance `json:"removed_performers,omitempty"`
	AddedTags           []*Tag                 `json:"added_tags,omitempty"`
	RemovedTags         []*Tag                 `json:"removed_tags,omitempty"`
	AddedImages         []*Image               `json:"added_images,omitempty"`
	RemovedImages       []*Image               `json:"removed_images,omitempty"`
	AddedFingerprints   []*Fingerprint         `json:"added_fingerprints,omitempty"`
	RemovedFingerprints []*Fingerprint         `json:"removed_fingerprints,omitempty"`
	Duration            *int                   `json:"duration,omitempty"`
	Director            *string                `json:"director,omitempty"`
	Code                *string                `json:"code,omitempty"`
	DraftID             *string                `json:"draft_id,omitempty"`
	Urls                []*URL                 `json:"urls"`
	Performers          []*PerformerAppearance `json:"performers"`
	Tags                []*Tag                 `json:"tags"`
	Images              []*Image               `json:"images"`
	Fingerprints        []*Fingerprint         `json:"fingerprints"`
}

func (SceneEdit) IsEditDetails

func (SceneEdit) IsEditDetails()

type SceneEditDetailsInput

type SceneEditDetailsInput struct {
	Title          *string                     `json:"title,omitempty"`
	Details        *string                     `json:"details,omitempty"`
	Urls           []*URLInput                 `json:"urls,omitempty"`
	Date           *string                     `json:"date,omitempty"`
	ProductionDate *string                     `json:"production_date,omitempty"`
	StudioID       *string                     `json:"studio_id,omitempty"`
	Performers     []*PerformerAppearanceInput `json:"performers,omitempty"`
	TagIds         []string                    `json:"tag_ids,omitempty"`
	ImageIds       []string                    `json:"image_ids,omitempty"`
	Duration       *int                        `json:"duration,omitempty"`
	Director       *string                     `json:"director,omitempty"`
	Code           *string                     `json:"code,omitempty"`
	Fingerprints   []*FingerprintInput         `json:"fingerprints,omitempty"`
	DraftID        *string                     `json:"draft_id,omitempty"`
}

type SceneEditInput

type SceneEditInput struct {
	Edit *EditInput `json:"edit"`
	// Not required for destroy type
	Details *SceneEditDetailsInput `json:"details,omitempty"`
}

type SceneFragment

type SceneFragment struct {
	ID           string                         "json:\"id\" graphql:\"id\""
	Title        *string                        "json:\"title,omitempty\" graphql:\"title\""
	Code         *string                        "json:\"code,omitempty\" graphql:\"code\""
	Details      *string                        "json:\"details,omitempty\" graphql:\"details\""
	Director     *string                        "json:\"director,omitempty\" graphql:\"director\""
	Duration     *int                           "json:\"duration,omitempty\" graphql:\"duration\""
	Date         *string                        "json:\"date,omitempty\" graphql:\"date\""
	Urls         []*URLFragment                 "json:\"urls\" graphql:\"urls\""
	Images       []*ImageFragment               "json:\"images\" graphql:\"images\""
	Studio       *StudioFragment                "json:\"studio,omitempty\" graphql:\"studio\""
	Tags         []*TagFragment                 "json:\"tags\" graphql:\"tags\""
	Performers   []*PerformerAppearanceFragment "json:\"performers\" graphql:\"performers\""
	Fingerprints []*FingerprintFragment         "json:\"fingerprints\" graphql:\"fingerprints\""
}

func (*SceneFragment) GetCode

func (t *SceneFragment) GetCode() *string

func (*SceneFragment) GetDate

func (t *SceneFragment) GetDate() *string

func (*SceneFragment) GetDetails

func (t *SceneFragment) GetDetails() *string

func (*SceneFragment) GetDirector

func (t *SceneFragment) GetDirector() *string

func (*SceneFragment) GetDuration

func (t *SceneFragment) GetDuration() *int

func (*SceneFragment) GetFingerprints

func (t *SceneFragment) GetFingerprints() []*FingerprintFragment

func (*SceneFragment) GetID

func (t *SceneFragment) GetID() string

func (*SceneFragment) GetImages

func (t *SceneFragment) GetImages() []*ImageFragment

func (*SceneFragment) GetPerformers

func (t *SceneFragment) GetPerformers() []*PerformerAppearanceFragment

func (*SceneFragment) GetStudio

func (t *SceneFragment) GetStudio() *StudioFragment

func (*SceneFragment) GetTags

func (t *SceneFragment) GetTags() []*TagFragment

func (*SceneFragment) GetTitle

func (t *SceneFragment) GetTitle() *string

func (*SceneFragment) GetUrls

func (t *SceneFragment) GetUrls() []*URLFragment

type SceneFragment_Studio_StudioFragment_Parent

type SceneFragment_Studio_StudioFragment_Parent struct {
	ID   string "json:\"id\" graphql:\"id\""
	Name string "json:\"name\" graphql:\"name\""
}

func (*SceneFragment_Studio_StudioFragment_Parent) GetID

func (*SceneFragment_Studio_StudioFragment_Parent) GetName

type SceneFragment_Tags_TagFragment_Category added in v0.31.0

type SceneFragment_Tags_TagFragment_Category struct {
	Description *string "json:\"description,omitempty\" graphql:\"description\""
	ID          string  "json:\"id\" graphql:\"id\""
	Name        string  "json:\"name\" graphql:\"name\""
}

func (*SceneFragment_Tags_TagFragment_Category) GetDescription added in v0.31.0

func (t *SceneFragment_Tags_TagFragment_Category) GetDescription() *string

func (*SceneFragment_Tags_TagFragment_Category) GetID added in v0.31.0

func (*SceneFragment_Tags_TagFragment_Category) GetName added in v0.31.0

type SceneQueryInput

type SceneQueryInput struct {
	// Filter to search title and details - assumes like query unless quoted
	Text *string `json:"text,omitempty"`
	// Filter to search title - assumes like query unless quoted
	Title *string `json:"title,omitempty"`
	// Filter to search urls - assumes like query unless quoted
	URL *string `json:"url,omitempty"`
	// Filter by date
	Date *DateCriterionInput `json:"date,omitempty"`
	// Filter by production date
	ProductionDate *DateCriterionInput `json:"production_date,omitempty"`
	// Filter to only include scenes with this studio
	Studios *MultiIDCriterionInput `json:"studios,omitempty"`
	// Filter to only include scenes with this studio as primary or parent
	ParentStudio *string `json:"parentStudio,omitempty"`
	// Filter to only include scenes with these tags
	Tags *MultiIDCriterionInput `json:"tags,omitempty"`
	// Filter to only include scenes with these performers
	Performers *MultiIDCriterionInput `json:"performers,omitempty"`
	// Filter to include scenes with performer appearing as alias
	Alias *StringCriterionInput `json:"alias,omitempty"`
	// Filter to only include scenes with these fingerprints
	Fingerprints *MultiStringCriterionInput `json:"fingerprints,omitempty"`
	// Filter by favorited entity
	Favorites *FavoriteFilter `json:"favorites,omitempty"`
	// Filter to scenes with fingerprints submitted by the user
	HasFingerprintSubmissions *bool             `json:"has_fingerprint_submissions,omitempty"`
	Page                      int               `json:"page"`
	PerPage                   int               `json:"per_page"`
	Direction                 SortDirectionEnum `json:"direction"`
	Sort                      SceneSortEnum     `json:"sort"`
}

type SceneSortEnum

type SceneSortEnum string
const (
	SceneSortEnumTitle     SceneSortEnum = "TITLE"
	SceneSortEnumDate      SceneSortEnum = "DATE"
	SceneSortEnumTrending  SceneSortEnum = "TRENDING"
	SceneSortEnumCreatedAt SceneSortEnum = "CREATED_AT"
	SceneSortEnumUpdatedAt SceneSortEnum = "UPDATED_AT"
)

func (SceneSortEnum) IsValid

func (e SceneSortEnum) IsValid() bool

func (SceneSortEnum) MarshalGQL

func (e SceneSortEnum) MarshalGQL(w io.Writer)

func (SceneSortEnum) MarshalJSON

func (e SceneSortEnum) MarshalJSON() ([]byte, error)

func (SceneSortEnum) String

func (e SceneSortEnum) String() string

func (*SceneSortEnum) UnmarshalGQL

func (e *SceneSortEnum) UnmarshalGQL(v any) error

func (*SceneSortEnum) UnmarshalJSON

func (e *SceneSortEnum) UnmarshalJSON(b []byte) error

type SceneUpdateInput

type SceneUpdateInput struct {
	ID             string                      `json:"id"`
	Title          *string                     `json:"title,omitempty"`
	Details        *string                     `json:"details,omitempty"`
	Urls           []*URLInput                 `json:"urls,omitempty"`
	Date           *string                     `json:"date,omitempty"`
	ProductionDate *string                     `json:"production_date,omitempty"`
	StudioID       *string                     `json:"studio_id,omitempty"`
	Performers     []*PerformerAppearanceInput `json:"performers,omitempty"`
	TagIds         []string                    `json:"tag_ids,omitempty"`
	ImageIds       []string                    `json:"image_ids,omitempty"`
	Fingerprints   []*FingerprintEditInput     `json:"fingerprints,omitempty"`
	Duration       *int                        `json:"duration,omitempty"`
	Director       *string                     `json:"director,omitempty"`
	Code           *string                     `json:"code,omitempty"`
}

type SearchPerformer

type SearchPerformer struct {
	SearchPerformer []*PerformerFragment "json:\"searchPerformer\" graphql:\"searchPerformer\""
}

func (*SearchPerformer) GetSearchPerformer

func (t *SearchPerformer) GetSearchPerformer() []*PerformerFragment

type SearchScene

type SearchScene struct {
	SearchScene []*SceneFragment "json:\"searchScene\" graphql:\"searchScene\""
}

func (*SearchScene) GetSearchScene

func (t *SearchScene) GetSearchScene() []*SceneFragment

type SearchScene_SearchScene_SceneFragment_Studio_StudioFragment_Parent

type SearchScene_SearchScene_SceneFragment_Studio_StudioFragment_Parent struct {
	ID   string "json:\"id\" graphql:\"id\""
	Name string "json:\"name\" graphql:\"name\""
}

func (*SearchScene_SearchScene_SceneFragment_Studio_StudioFragment_Parent) GetID

func (*SearchScene_SearchScene_SceneFragment_Studio_StudioFragment_Parent) GetName

type SearchScene_SearchScene_SceneFragment_Tags_TagFragment_Category added in v0.31.0

type SearchScene_SearchScene_SceneFragment_Tags_TagFragment_Category struct {
	Description *string "json:\"description,omitempty\" graphql:\"description\""
	ID          string  "json:\"id\" graphql:\"id\""
	Name        string  "json:\"name\" graphql:\"name\""
}

func (*SearchScene_SearchScene_SceneFragment_Tags_TagFragment_Category) GetDescription added in v0.31.0

func (*SearchScene_SearchScene_SceneFragment_Tags_TagFragment_Category) GetID added in v0.31.0

func (*SearchScene_SearchScene_SceneFragment_Tags_TagFragment_Category) GetName added in v0.31.0

type Site

type Site struct {
	ID          string              `json:"id"`
	Name        string              `json:"name"`
	Description *string             `json:"description,omitempty"`
	URL         *string             `json:"url,omitempty"`
	Regex       *string             `json:"regex,omitempty"`
	ValidTypes  []ValidSiteTypeEnum `json:"valid_types"`
	Icon        string              `json:"icon"`
	Created     time.Time           `json:"created"`
	Updated     time.Time           `json:"updated"`
}

type SiteCreateInput

type SiteCreateInput struct {
	Name        string              `json:"name"`
	Description *string             `json:"description,omitempty"`
	URL         *string             `json:"url,omitempty"`
	Regex       *string             `json:"regex,omitempty"`
	ValidTypes  []ValidSiteTypeEnum `json:"valid_types"`
}

type SiteDestroyInput

type SiteDestroyInput struct {
	ID string `json:"id"`
}

type SiteUpdateInput

type SiteUpdateInput struct {
	ID          string              `json:"id"`
	Name        string              `json:"name"`
	Description *string             `json:"description,omitempty"`
	URL         *string             `json:"url,omitempty"`
	Regex       *string             `json:"regex,omitempty"`
	ValidTypes  []ValidSiteTypeEnum `json:"valid_types"`
}

type SortDirectionEnum

type SortDirectionEnum string
const (
	SortDirectionEnumAsc  SortDirectionEnum = "ASC"
	SortDirectionEnumDesc SortDirectionEnum = "DESC"
)

func (SortDirectionEnum) IsValid

func (e SortDirectionEnum) IsValid() bool

func (SortDirectionEnum) MarshalGQL

func (e SortDirectionEnum) MarshalGQL(w io.Writer)

func (SortDirectionEnum) MarshalJSON

func (e SortDirectionEnum) MarshalJSON() ([]byte, error)

func (SortDirectionEnum) String

func (e SortDirectionEnum) String() string

func (*SortDirectionEnum) UnmarshalGQL

func (e *SortDirectionEnum) UnmarshalGQL(v any) error

func (*SortDirectionEnum) UnmarshalJSON

func (e *SortDirectionEnum) UnmarshalJSON(b []byte) error

type StashBoxConfig

type StashBoxConfig struct {
	HostURL                    string `json:"host_url"`
	RequireInvite              bool   `json:"require_invite"`
	RequireActivation          bool   `json:"require_activation"`
	VotePromotionThreshold     *int   `json:"vote_promotion_threshold,omitempty"`
	VoteApplicationThreshold   int    `json:"vote_application_threshold"`
	VotingPeriod               int    `json:"voting_period"`
	MinDestructiveVotingPeriod int    `json:"min_destructive_voting_period"`
	VoteCronInterval           string `json:"vote_cron_interval"`
	GuidelinesURL              string `json:"guidelines_url"`
	RequireSceneDraft          bool   `json:"require_scene_draft"`
	EditUpdateLimit            int    `json:"edit_update_limit"`
	RequireTagRole             bool   `json:"require_tag_role"`
}

type StashBoxGraphQLClient

type StashBoxGraphQLClient interface {
	FindScenesBySceneFingerprints(ctx context.Context, fingerprints [][]*FingerprintQueryInput, interceptors ...clientv2.RequestInterceptor) (*FindScenesBySceneFingerprints, error)
	SearchScene(ctx context.Context, term string, interceptors ...clientv2.RequestInterceptor) (*SearchScene, error)
	SearchPerformer(ctx context.Context, term string, interceptors ...clientv2.RequestInterceptor) (*SearchPerformer, error)
	FindPerformerByID(ctx context.Context, id string, interceptors ...clientv2.RequestInterceptor) (*FindPerformerByID, error)
	FindSceneByID(ctx context.Context, id string, interceptors ...clientv2.RequestInterceptor) (*FindSceneByID, error)
	FindStudio(ctx context.Context, id *string, name *string, interceptors ...clientv2.RequestInterceptor) (*FindStudio, error)
	FindTag(ctx context.Context, id *string, name *string, interceptors ...clientv2.RequestInterceptor) (*FindTag, error)
	QueryTags(ctx context.Context, input TagQueryInput, interceptors ...clientv2.RequestInterceptor) (*QueryTags, error)
	SubmitFingerprint(ctx context.Context, input FingerprintSubmission, interceptors ...clientv2.RequestInterceptor) (*SubmitFingerprint, error)
	Me(ctx context.Context, interceptors ...clientv2.RequestInterceptor) (*Me, error)
	SubmitSceneDraft(ctx context.Context, input SceneDraftInput, interceptors ...clientv2.RequestInterceptor) (*SubmitSceneDraft, error)
	SubmitPerformerDraft(ctx context.Context, input PerformerDraftInput, interceptors ...clientv2.RequestInterceptor) (*SubmitPerformerDraft, error)
}

func NewClient

func NewClient(cli clientv2.HttpClient, baseURL string, options *clientv2.Options, interceptors ...clientv2.RequestInterceptor) StashBoxGraphQLClient

type StringCriterionInput

type StringCriterionInput struct {
	Value    string            `json:"value"`
	Modifier CriterionModifier `json:"modifier"`
}

type Studio

type Studio struct {
	ID           string                     `json:"id"`
	Name         string                     `json:"name"`
	Aliases      []string                   `json:"aliases"`
	Urls         []*URL                     `json:"urls"`
	Parent       *Studio                    `json:"parent,omitempty"`
	ChildStudios []*Studio                  `json:"child_studios"`
	Images       []*Image                   `json:"images"`
	Deleted      bool                       `json:"deleted"`
	IsFavorite   bool                       `json:"is_favorite"`
	Created      time.Time                  `json:"created"`
	Updated      time.Time                  `json:"updated"`
	Performers   *QueryPerformersResultType `json:"performers"`
}

func (Studio) IsEditTarget

func (Studio) IsEditTarget()

func (Studio) IsSceneDraftStudio

func (Studio) IsSceneDraftStudio()

type StudioCreateInput

type StudioCreateInput struct {
	Name     string      `json:"name"`
	Aliases  []string    `json:"aliases,omitempty"`
	Urls     []*URLInput `json:"urls,omitempty"`
	ParentID *string     `json:"parent_id,omitempty"`
	ImageIds []string    `json:"image_ids,omitempty"`
}

type StudioDestroyInput

type StudioDestroyInput struct {
	ID string `json:"id"`
}

type StudioEdit

type StudioEdit struct {
	Name *string `json:"name,omitempty"`
	// Added and modified URLs
	AddedUrls      []*URL   `json:"added_urls,omitempty"`
	RemovedUrls    []*URL   `json:"removed_urls,omitempty"`
	Parent         *Studio  `json:"parent,omitempty"`
	AddedImages    []*Image `json:"added_images,omitempty"`
	RemovedImages  []*Image `json:"removed_images,omitempty"`
	AddedAliases   []string `json:"added_aliases,omitempty"`
	RemovedAliases []string `json:"removed_aliases,omitempty"`
	Images         []*Image `json:"images"`
	Urls           []*URL   `json:"urls"`
}

func (StudioEdit) IsEditDetails

func (StudioEdit) IsEditDetails()

type StudioEditDetailsInput

type StudioEditDetailsInput struct {
	Name     *string     `json:"name,omitempty"`
	Aliases  []string    `json:"aliases,omitempty"`
	Urls     []*URLInput `json:"urls,omitempty"`
	ParentID *string     `json:"parent_id,omitempty"`
	ImageIds []string    `json:"image_ids,omitempty"`
}

type StudioEditInput

type StudioEditInput struct {
	Edit *EditInput `json:"edit"`
	// Not required for destroy type
	Details *StudioEditDetailsInput `json:"details,omitempty"`
}

type StudioFragment

type StudioFragment struct {
	Name    string                 "json:\"name\" graphql:\"name\""
	ID      string                 "json:\"id\" graphql:\"id\""
	Aliases []string               "json:\"aliases\" graphql:\"aliases\""
	Urls    []*URLFragment         "json:\"urls\" graphql:\"urls\""
	Parent  *StudioFragment_Parent "json:\"parent,omitempty\" graphql:\"parent\""
	Images  []*ImageFragment       "json:\"images\" graphql:\"images\""
}

func (*StudioFragment) GetAliases added in v0.30.0

func (t *StudioFragment) GetAliases() []string

func (*StudioFragment) GetID

func (t *StudioFragment) GetID() string

func (*StudioFragment) GetImages

func (t *StudioFragment) GetImages() []*ImageFragment

func (*StudioFragment) GetName

func (t *StudioFragment) GetName() string

func (*StudioFragment) GetParent

func (t *StudioFragment) GetParent() *StudioFragment_Parent

func (*StudioFragment) GetUrls

func (t *StudioFragment) GetUrls() []*URLFragment

type StudioFragment_Parent

type StudioFragment_Parent struct {
	ID   string "json:\"id\" graphql:\"id\""
	Name string "json:\"name\" graphql:\"name\""
}

func (*StudioFragment_Parent) GetID

func (t *StudioFragment_Parent) GetID() string

func (*StudioFragment_Parent) GetName

func (t *StudioFragment_Parent) GetName() string

type StudioQueryInput

type StudioQueryInput struct {
	// Filter to search name - assumes like query unless quoted
	Name *string `json:"name,omitempty"`
	// Filter to search studio name, aliases and parent studio name - assumes like query unless quoted
	Names *string `json:"names,omitempty"`
	// Filter to search url - assumes like query unless quoted
	URL       *string           `json:"url,omitempty"`
	Parent    *IDCriterionInput `json:"parent,omitempty"`
	HasParent *bool             `json:"has_parent,omitempty"`
	// Filter by studio favorite status for the current user
	IsFavorite *bool             `json:"is_favorite,omitempty"`
	Page       int               `json:"page"`
	PerPage    int               `json:"per_page"`
	Direction  SortDirectionEnum `json:"direction"`
	Sort       StudioSortEnum    `json:"sort"`
}

type StudioSortEnum

type StudioSortEnum string
const (
	StudioSortEnumName      StudioSortEnum = "NAME"
	StudioSortEnumCreatedAt StudioSortEnum = "CREATED_AT"
	StudioSortEnumUpdatedAt StudioSortEnum = "UPDATED_AT"
)

func (StudioSortEnum) IsValid

func (e StudioSortEnum) IsValid() bool

func (StudioSortEnum) MarshalGQL

func (e StudioSortEnum) MarshalGQL(w io.Writer)

func (StudioSortEnum) MarshalJSON

func (e StudioSortEnum) MarshalJSON() ([]byte, error)

func (StudioSortEnum) String

func (e StudioSortEnum) String() string

func (*StudioSortEnum) UnmarshalGQL

func (e *StudioSortEnum) UnmarshalGQL(v any) error

func (*StudioSortEnum) UnmarshalJSON

func (e *StudioSortEnum) UnmarshalJSON(b []byte) error

type StudioUpdateInput

type StudioUpdateInput struct {
	ID       string      `json:"id"`
	Name     *string     `json:"name,omitempty"`
	Aliases  []string    `json:"aliases,omitempty"`
	Urls     []*URLInput `json:"urls,omitempty"`
	ParentID *string     `json:"parent_id,omitempty"`
	ImageIds []string    `json:"image_ids,omitempty"`
}

type SubmitFingerprint

type SubmitFingerprint struct {
	SubmitFingerprint bool "json:\"submitFingerprint\" graphql:\"submitFingerprint\""
}

func (*SubmitFingerprint) GetSubmitFingerprint

func (t *SubmitFingerprint) GetSubmitFingerprint() bool

type SubmitPerformerDraft

type SubmitPerformerDraft struct {
	SubmitPerformerDraft SubmitPerformerDraft_SubmitPerformerDraft "json:\"submitPerformerDraft\" graphql:\"submitPerformerDraft\""
}

func (*SubmitPerformerDraft) GetSubmitPerformerDraft

type SubmitPerformerDraft_SubmitPerformerDraft

type SubmitPerformerDraft_SubmitPerformerDraft struct {
	ID *string "json:\"id,omitempty\" graphql:\"id\""
}

func (*SubmitPerformerDraft_SubmitPerformerDraft) GetID

type SubmitSceneDraft

type SubmitSceneDraft struct {
	SubmitSceneDraft SubmitSceneDraft_SubmitSceneDraft "json:\"submitSceneDraft\" graphql:\"submitSceneDraft\""
}

func (*SubmitSceneDraft) GetSubmitSceneDraft

func (t *SubmitSceneDraft) GetSubmitSceneDraft() *SubmitSceneDraft_SubmitSceneDraft

type SubmitSceneDraft_SubmitSceneDraft

type SubmitSceneDraft_SubmitSceneDraft struct {
	ID *string "json:\"id,omitempty\" graphql:\"id\""
}

func (*SubmitSceneDraft_SubmitSceneDraft) GetID

type Tag

type Tag struct {
	ID          string       `json:"id"`
	Name        string       `json:"name"`
	Description *string      `json:"description,omitempty"`
	Aliases     []string     `json:"aliases"`
	Deleted     bool         `json:"deleted"`
	Edits       []*Edit      `json:"edits"`
	Category    *TagCategory `json:"category,omitempty"`
	Created     time.Time    `json:"created"`
	Updated     time.Time    `json:"updated"`
}

func (Tag) IsEditTarget

func (Tag) IsEditTarget()

func (Tag) IsSceneDraftTag

func (Tag) IsSceneDraftTag()

type TagCategory

type TagCategory struct {
	ID          string       `json:"id"`
	Name        string       `json:"name"`
	Group       TagGroupEnum `json:"group"`
	Description *string      `json:"description,omitempty"`
}

type TagCategoryCreateInput

type TagCategoryCreateInput struct {
	Name        string       `json:"name"`
	Group       TagGroupEnum `json:"group"`
	Description *string      `json:"description,omitempty"`
}

type TagCategoryDestroyInput

type TagCategoryDestroyInput struct {
	ID string `json:"id"`
}

type TagCategoryUpdateInput

type TagCategoryUpdateInput struct {
	ID          string        `json:"id"`
	Name        *string       `json:"name,omitempty"`
	Group       *TagGroupEnum `json:"group,omitempty"`
	Description *string       `json:"description,omitempty"`
}

type TagCreateInput

type TagCreateInput struct {
	Name        string   `json:"name"`
	Description *string  `json:"description,omitempty"`
	Aliases     []string `json:"aliases,omitempty"`
	CategoryID  *string  `json:"category_id,omitempty"`
}

type TagDestroyInput

type TagDestroyInput struct {
	ID string `json:"id"`
}

type TagEdit

type TagEdit struct {
	Name           *string      `json:"name,omitempty"`
	Description    *string      `json:"description,omitempty"`
	AddedAliases   []string     `json:"added_aliases,omitempty"`
	RemovedAliases []string     `json:"removed_aliases,omitempty"`
	Category       *TagCategory `json:"category,omitempty"`
	Aliases        []string     `json:"aliases"`
}

func (TagEdit) IsEditDetails

func (TagEdit) IsEditDetails()

type TagEditDetailsInput

type TagEditDetailsInput struct {
	Name        *string  `json:"name,omitempty"`
	Description *string  `json:"description,omitempty"`
	Aliases     []string `json:"aliases,omitempty"`
	CategoryID  *string  `json:"category_id,omitempty"`
}

type TagEditInput

type TagEditInput struct {
	Edit *EditInput `json:"edit"`
	// Not required for destroy type
	Details *TagEditDetailsInput `json:"details,omitempty"`
}

type TagFragment

type TagFragment struct {
	Name        string                "json:\"name\" graphql:\"name\""
	ID          string                "json:\"id\" graphql:\"id\""
	Description *string               "json:\"description,omitempty\" graphql:\"description\""
	Aliases     []string              "json:\"aliases\" graphql:\"aliases\""
	Category    *TagFragment_Category "json:\"category,omitempty\" graphql:\"category\""
}

func (*TagFragment) GetAliases added in v0.31.0

func (t *TagFragment) GetAliases() []string

func (*TagFragment) GetCategory added in v0.31.0

func (t *TagFragment) GetCategory() *TagFragment_Category

func (*TagFragment) GetDescription added in v0.31.0

func (t *TagFragment) GetDescription() *string

func (*TagFragment) GetID

func (t *TagFragment) GetID() string

func (*TagFragment) GetName

func (t *TagFragment) GetName() string

type TagFragment_Category added in v0.31.0

type TagFragment_Category struct {
	Description *string "json:\"description,omitempty\" graphql:\"description\""
	ID          string  "json:\"id\" graphql:\"id\""
	Name        string  "json:\"name\" graphql:\"name\""
}

func (*TagFragment_Category) GetDescription added in v0.31.0

func (t *TagFragment_Category) GetDescription() *string

func (*TagFragment_Category) GetID added in v0.31.0

func (t *TagFragment_Category) GetID() string

func (*TagFragment_Category) GetName added in v0.31.0

func (t *TagFragment_Category) GetName() string

type TagGroupEnum

type TagGroupEnum string
const (
	TagGroupEnumPeople TagGroupEnum = "PEOPLE"
	TagGroupEnumScene  TagGroupEnum = "SCENE"
	TagGroupEnumAction TagGroupEnum = "ACTION"
)

func (TagGroupEnum) IsValid

func (e TagGroupEnum) IsValid() bool

func (TagGroupEnum) MarshalGQL

func (e TagGroupEnum) MarshalGQL(w io.Writer)

func (TagGroupEnum) MarshalJSON

func (e TagGroupEnum) MarshalJSON() ([]byte, error)

func (TagGroupEnum) String

func (e TagGroupEnum) String() string

func (*TagGroupEnum) UnmarshalGQL

func (e *TagGroupEnum) UnmarshalGQL(v any) error

func (*TagGroupEnum) UnmarshalJSON

func (e *TagGroupEnum) UnmarshalJSON(b []byte) error

type TagQueryInput

type TagQueryInput struct {
	// Filter to search name, aliases and description - assumes like query unless quoted
	Text *string `json:"text,omitempty"`
	// Searches name and aliases - assumes like query unless quoted
	Names *string `json:"names,omitempty"`
	// Filter to search name - assumes like query unless quoted
	Name *string `json:"name,omitempty"`
	// Filter to category ID
	CategoryID *string           `json:"category_id,omitempty"`
	Page       int               `json:"page"`
	PerPage    int               `json:"per_page"`
	Direction  SortDirectionEnum `json:"direction"`
	Sort       TagSortEnum       `json:"sort"`
}

type TagSortEnum

type TagSortEnum string
const (
	TagSortEnumName      TagSortEnum = "NAME"
	TagSortEnumCreatedAt TagSortEnum = "CREATED_AT"
	TagSortEnumUpdatedAt TagSortEnum = "UPDATED_AT"
)

func (TagSortEnum) IsValid

func (e TagSortEnum) IsValid() bool

func (TagSortEnum) MarshalGQL

func (e TagSortEnum) MarshalGQL(w io.Writer)

func (TagSortEnum) MarshalJSON

func (e TagSortEnum) MarshalJSON() ([]byte, error)

func (TagSortEnum) String

func (e TagSortEnum) String() string

func (*TagSortEnum) UnmarshalGQL

func (e *TagSortEnum) UnmarshalGQL(v any) error

func (*TagSortEnum) UnmarshalJSON

func (e *TagSortEnum) UnmarshalJSON(b []byte) error

type TagUpdateInput

type TagUpdateInput struct {
	ID          string   `json:"id"`
	Name        *string  `json:"name,omitempty"`
	Description *string  `json:"description,omitempty"`
	Aliases     []string `json:"aliases,omitempty"`
	CategoryID  *string  `json:"category_id,omitempty"`
}

type TargetTypeEnum

type TargetTypeEnum string
const (
	TargetTypeEnumScene     TargetTypeEnum = "SCENE"
	TargetTypeEnumStudio    TargetTypeEnum = "STUDIO"
	TargetTypeEnumPerformer TargetTypeEnum = "PERFORMER"
	TargetTypeEnumTag       TargetTypeEnum = "TAG"
)

func (TargetTypeEnum) IsValid

func (e TargetTypeEnum) IsValid() bool

func (TargetTypeEnum) MarshalGQL

func (e TargetTypeEnum) MarshalGQL(w io.Writer)

func (TargetTypeEnum) MarshalJSON

func (e TargetTypeEnum) MarshalJSON() ([]byte, error)

func (TargetTypeEnum) String

func (e TargetTypeEnum) String() string

func (*TargetTypeEnum) UnmarshalGQL

func (e *TargetTypeEnum) UnmarshalGQL(v any) error

func (*TargetTypeEnum) UnmarshalJSON

func (e *TargetTypeEnum) UnmarshalJSON(b []byte) error

type URL

type URL struct {
	URL  string `json:"url"`
	Type string `json:"type"`
	Site *Site  `json:"site"`
}

type URLFragment

type URLFragment struct {
	URL  string "json:\"url\" graphql:\"url\""
	Type string "json:\"type\" graphql:\"type\""
}

func (*URLFragment) GetType

func (t *URLFragment) GetType() string

func (*URLFragment) GetURL

func (t *URLFragment) GetURL() string

type URLInput

type URLInput struct {
	URL    string `json:"url"`
	SiteID string `json:"site_id"`
}

type UpdatedEdit

type UpdatedEdit struct {
	Edit *Edit `json:"edit"`
}

func (UpdatedEdit) IsNotificationData

func (UpdatedEdit) IsNotificationData()

type User

type User struct {
	ID   string `json:"id"`
	Name string `json:"name"`
	// Should not be visible to other users
	Roles []RoleEnum `json:"roles,omitempty"`
	// Should not be visible to other users
	Email *string `json:"email,omitempty"`
	// Should not be visible to other users
	APIKey                    *string            `json:"api_key,omitempty"`
	NotificationSubscriptions []NotificationEnum `json:"notification_subscriptions"`
	//  Vote counts by type
	VoteCount *UserVoteCount `json:"vote_count"`
	//  Edit counts by status
	EditCount *UserEditCount `json:"edit_count"`
	// Calls to the API from this user over a configurable time period
	APICalls          int          `json:"api_calls"`
	InvitedBy         *User        `json:"invited_by,omitempty"`
	InviteTokens      *int         `json:"invite_tokens,omitempty"`
	ActiveInviteCodes []string     `json:"active_invite_codes,omitempty"`
	InviteCodes       []*InviteKey `json:"invite_codes,omitempty"`
}

type UserChangeEmailInput

type UserChangeEmailInput struct {
	ExistingEmailToken *string `json:"existing_email_token,omitempty"`
	NewEmailToken      *string `json:"new_email_token,omitempty"`
	NewEmail           *string `json:"new_email,omitempty"`
}

type UserChangeEmailStatus

type UserChangeEmailStatus string
const (
	UserChangeEmailStatusConfirmOld   UserChangeEmailStatus = "CONFIRM_OLD"
	UserChangeEmailStatusConfirmNew   UserChangeEmailStatus = "CONFIRM_NEW"
	UserChangeEmailStatusExpired      UserChangeEmailStatus = "EXPIRED"
	UserChangeEmailStatusInvalidToken UserChangeEmailStatus = "INVALID_TOKEN"
	UserChangeEmailStatusSuccess      UserChangeEmailStatus = "SUCCESS"
	UserChangeEmailStatusError        UserChangeEmailStatus = "ERROR"
)

func (UserChangeEmailStatus) IsValid

func (e UserChangeEmailStatus) IsValid() bool

func (UserChangeEmailStatus) MarshalGQL

func (e UserChangeEmailStatus) MarshalGQL(w io.Writer)

func (UserChangeEmailStatus) MarshalJSON

func (e UserChangeEmailStatus) MarshalJSON() ([]byte, error)

func (UserChangeEmailStatus) String

func (e UserChangeEmailStatus) String() string

func (*UserChangeEmailStatus) UnmarshalGQL

func (e *UserChangeEmailStatus) UnmarshalGQL(v any) error

func (*UserChangeEmailStatus) UnmarshalJSON

func (e *UserChangeEmailStatus) UnmarshalJSON(b []byte) error

type UserChangePasswordInput

type UserChangePasswordInput struct {
	// Password in plain text
	ExistingPassword *string `json:"existing_password,omitempty"`
	NewPassword      string  `json:"new_password"`
	ResetKey         *string `json:"reset_key,omitempty"`
}

type UserCreateInput

type UserCreateInput struct {
	Name string `json:"name"`
	// Password in plain text
	Password    string     `json:"password"`
	Roles       []RoleEnum `json:"roles"`
	Email       string     `json:"email"`
	InvitedByID *string    `json:"invited_by_id,omitempty"`
}

type UserDestroyInput

type UserDestroyInput struct {
	ID string `json:"id"`
}

type UserEditCount

type UserEditCount struct {
	Accepted          int `json:"accepted"`
	Rejected          int `json:"rejected"`
	Pending           int `json:"pending"`
	ImmediateAccepted int `json:"immediate_accepted"`
	ImmediateRejected int `json:"immediate_rejected"`
	Failed            int `json:"failed"`
	Canceled          int `json:"canceled"`
}

type UserQueryInput

type UserQueryInput struct {
	// Filter to search user name - assumes like query unless quoted
	Name *string `json:"name,omitempty"`
	// Filter to search email - assumes like query unless quoted
	Email *string `json:"email,omitempty"`
	// Filter by roles
	Roles *RoleCriterionInput `json:"roles,omitempty"`
	// Filter by api key
	APIKey *string `json:"apiKey,omitempty"`
	// Filter by successful edits
	SuccessfulEdits *IntCriterionInput `json:"successful_edits,omitempty"`
	// Filter by unsuccessful edits
	UnsuccessfulEdits *IntCriterionInput `json:"unsuccessful_edits,omitempty"`
	// Filter by votes on successful edits
	SuccessfulVotes *IntCriterionInput `json:"successful_votes,omitempty"`
	// Filter by votes on unsuccessful edits
	UnsuccessfulVotes *IntCriterionInput `json:"unsuccessful_votes,omitempty"`
	// Filter by number of API calls
	APICalls *IntCriterionInput `json:"api_calls,omitempty"`
	// Filter by user that invited
	InvitedBy *string `json:"invited_by,omitempty"`
	Page      int     `json:"page"`
	PerPage   int     `json:"per_page"`
}

type UserUpdateInput

type UserUpdateInput struct {
	ID   string  `json:"id"`
	Name *string `json:"name,omitempty"`
	// Password in plain text
	Password *string    `json:"password,omitempty"`
	Roles    []RoleEnum `json:"roles,omitempty"`
	Email    *string    `json:"email,omitempty"`
}

type UserVoteCount

type UserVoteCount struct {
	Abstain         int `json:"abstain"`
	Accept          int `json:"accept"`
	Reject          int `json:"reject"`
	ImmediateAccept int `json:"immediate_accept"`
	ImmediateReject int `json:"immediate_reject"`
}

type UserVotedFilterEnum

type UserVotedFilterEnum string
const (
	UserVotedFilterEnumAbstain  UserVotedFilterEnum = "ABSTAIN"
	UserVotedFilterEnumAccept   UserVotedFilterEnum = "ACCEPT"
	UserVotedFilterEnumReject   UserVotedFilterEnum = "REJECT"
	UserVotedFilterEnumNotVoted UserVotedFilterEnum = "NOT_VOTED"
)

func (UserVotedFilterEnum) IsValid

func (e UserVotedFilterEnum) IsValid() bool

func (UserVotedFilterEnum) MarshalGQL

func (e UserVotedFilterEnum) MarshalGQL(w io.Writer)

func (UserVotedFilterEnum) MarshalJSON

func (e UserVotedFilterEnum) MarshalJSON() ([]byte, error)

func (UserVotedFilterEnum) String

func (e UserVotedFilterEnum) String() string

func (*UserVotedFilterEnum) UnmarshalGQL

func (e *UserVotedFilterEnum) UnmarshalGQL(v any) error

func (*UserVotedFilterEnum) UnmarshalJSON

func (e *UserVotedFilterEnum) UnmarshalJSON(b []byte) error

type ValidSiteTypeEnum

type ValidSiteTypeEnum string
const (
	ValidSiteTypeEnumPerformer ValidSiteTypeEnum = "PERFORMER"
	ValidSiteTypeEnumScene     ValidSiteTypeEnum = "SCENE"
	ValidSiteTypeEnumStudio    ValidSiteTypeEnum = "STUDIO"
)

func (ValidSiteTypeEnum) IsValid

func (e ValidSiteTypeEnum) IsValid() bool

func (ValidSiteTypeEnum) MarshalGQL

func (e ValidSiteTypeEnum) MarshalGQL(w io.Writer)

func (ValidSiteTypeEnum) MarshalJSON

func (e ValidSiteTypeEnum) MarshalJSON() ([]byte, error)

func (ValidSiteTypeEnum) String

func (e ValidSiteTypeEnum) String() string

func (*ValidSiteTypeEnum) UnmarshalGQL

func (e *ValidSiteTypeEnum) UnmarshalGQL(v any) error

func (*ValidSiteTypeEnum) UnmarshalJSON

func (e *ValidSiteTypeEnum) UnmarshalJSON(b []byte) error

type Version

type Version struct {
	Hash      string `json:"hash"`
	BuildTime string `json:"build_time"`
	BuildType string `json:"build_type"`
	Version   string `json:"version"`
}

type VoteStatusEnum

type VoteStatusEnum string
const (
	VoteStatusEnumAccepted          VoteStatusEnum = "ACCEPTED"
	VoteStatusEnumRejected          VoteStatusEnum = "REJECTED"
	VoteStatusEnumPending           VoteStatusEnum = "PENDING"
	VoteStatusEnumImmediateAccepted VoteStatusEnum = "IMMEDIATE_ACCEPTED"
	VoteStatusEnumImmediateRejected VoteStatusEnum = "IMMEDIATE_REJECTED"
	VoteStatusEnumFailed            VoteStatusEnum = "FAILED"
	VoteStatusEnumCanceled          VoteStatusEnum = "CANCELED"
)

func (VoteStatusEnum) IsValid

func (e VoteStatusEnum) IsValid() bool

func (VoteStatusEnum) MarshalGQL

func (e VoteStatusEnum) MarshalGQL(w io.Writer)

func (VoteStatusEnum) MarshalJSON

func (e VoteStatusEnum) MarshalJSON() ([]byte, error)

func (VoteStatusEnum) String

func (e VoteStatusEnum) String() string

func (*VoteStatusEnum) UnmarshalGQL

func (e *VoteStatusEnum) UnmarshalGQL(v any) error

func (*VoteStatusEnum) UnmarshalJSON

func (e *VoteStatusEnum) UnmarshalJSON(b []byte) error

type VoteTypeEnum

type VoteTypeEnum string
const (
	VoteTypeEnumAbstain VoteTypeEnum = "ABSTAIN"
	VoteTypeEnumAccept  VoteTypeEnum = "ACCEPT"
	VoteTypeEnumReject  VoteTypeEnum = "REJECT"
	// Immediately accepts the edit - bypassing the vote
	VoteTypeEnumImmediateAccept VoteTypeEnum = "IMMEDIATE_ACCEPT"
	// Immediately rejects the edit - bypassing the vote
	VoteTypeEnumImmediateReject VoteTypeEnum = "IMMEDIATE_REJECT"
)

func (VoteTypeEnum) IsValid

func (e VoteTypeEnum) IsValid() bool

func (VoteTypeEnum) MarshalGQL

func (e VoteTypeEnum) MarshalGQL(w io.Writer)

func (VoteTypeEnum) MarshalJSON

func (e VoteTypeEnum) MarshalJSON() ([]byte, error)

func (VoteTypeEnum) String

func (e VoteTypeEnum) String() string

func (*VoteTypeEnum) UnmarshalGQL

func (e *VoteTypeEnum) UnmarshalGQL(v any) error

func (*VoteTypeEnum) UnmarshalJSON

func (e *VoteTypeEnum) UnmarshalJSON(b []byte) error

Jump to

Keyboard shortcuts

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