graphql

package
v0.29.0 Latest Latest
Warning

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

Go to latest
Published: Oct 20, 2025 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 FindSceneByFingerprintDocument = `` /* 1532-byte string literal not displayed */
View Source
const FindSceneByIDDocument = `` /* 1464-byte string literal not displayed */
View Source
const FindScenesByFullFingerprintsDocument = `` /* 1550-byte string literal not displayed */
View Source
const FindScenesBySceneFingerprintsDocument = `` /* 1555-byte string literal not displayed */
View Source
const FindStudioDocument = `` /* 344-byte string literal not displayed */
View Source
const MeDocument = `query Me {
	me {
		name
	}
}
`
View Source
const SearchPerformerDocument = `` /* 817-byte string literal not displayed */
View Source
const SearchSceneDocument = `` /* 1474-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{
	FindSceneByFingerprintDocument:        "FindSceneByFingerprint",
	FindScenesByFullFingerprintsDocument:  "FindScenesByFullFingerprints",
	FindScenesBySceneFingerprintsDocument: "FindScenesBySceneFingerprints",
	SearchSceneDocument:                   "SearchScene",
	SearchPerformerDocument:               "SearchPerformer",
	FindPerformerByIDDocument:             "FindPerformerByID",
	FindSceneByIDDocument:                 "FindSceneByID",
	FindStudioDocument:                    "FindStudio",
	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) FindSceneByFingerprint

func (c *Client) FindSceneByFingerprint(ctx context.Context, fingerprint FingerprintQueryInput, interceptors ...clientv2.RequestInterceptor) (*FindSceneByFingerprint, error)

func (*Client) FindSceneByID

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

func (*Client) FindScenesByFullFingerprints

func (c *Client) FindScenesByFullFingerprints(ctx context.Context, fingerprints []*FingerprintQueryInput, interceptors ...clientv2.RequestInterceptor) (*FindScenesByFullFingerprints, 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) Me

func (c *Client) Me(ctx context.Context, interceptors ...clientv2.RequestInterceptor) (*Me, 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 FindSceneByFingerprint

type FindSceneByFingerprint struct {
	FindSceneByFingerprint []*SceneFragment "json:\"findSceneByFingerprint\" graphql:\"findSceneByFingerprint\""
}

func (*FindSceneByFingerprint) GetFindSceneByFingerprint

func (t *FindSceneByFingerprint) GetFindSceneByFingerprint() []*SceneFragment

type FindSceneByFingerprint_FindSceneByFingerprint_SceneFragment_Studio_StudioFragment_Parent

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

func (*FindSceneByFingerprint_FindSceneByFingerprint_SceneFragment_Studio_StudioFragment_Parent) GetID

func (*FindSceneByFingerprint_FindSceneByFingerprint_SceneFragment_Studio_StudioFragment_Parent) GetName

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 FindScenesByFullFingerprints

type FindScenesByFullFingerprints struct {
	FindScenesByFullFingerprints []*SceneFragment "json:\"findScenesByFullFingerprints\" graphql:\"findScenesByFullFingerprints\""
}

func (*FindScenesByFullFingerprints) GetFindScenesByFullFingerprints

func (t *FindScenesByFullFingerprints) GetFindScenesByFullFingerprints() []*SceneFragment

type FindScenesByFullFingerprints_FindScenesByFullFingerprints_SceneFragment_Studio_StudioFragment_Parent

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

func (*FindScenesByFullFingerprints_FindScenesByFullFingerprints_SceneFragment_Studio_StudioFragment_Parent) GetID

func (*FindScenesByFullFingerprints_FindScenesByFullFingerprints_SceneFragment_Studio_StudioFragment_Parent) GetName

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 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 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 QueryTagsResultType

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

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 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 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 {
	FindSceneByFingerprint(ctx context.Context, fingerprint FingerprintQueryInput, interceptors ...clientv2.RequestInterceptor) (*FindSceneByFingerprint, error)
	FindScenesByFullFingerprints(ctx context.Context, fingerprints []*FingerprintQueryInput, interceptors ...clientv2.RequestInterceptor) (*FindScenesByFullFingerprints, error)
	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)
	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\""
	Urls   []*URLFragment         "json:\"urls\" graphql:\"urls\""
	Parent *StudioFragment_Parent "json:\"parent,omitempty\" graphql:\"parent\""
	Images []*ImageFragment       "json:\"images\" graphql:\"images\""
}

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\""
}

func (*TagFragment) GetID

func (t *TagFragment) GetID() string

func (*TagFragment) GetName

func (t *TagFragment) 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