generated

package
v0.2.7-beta.1 Latest Latest
Warning

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

Go to latest
Published: Dec 18, 2025 License: MIT Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var AllUserRole = []UserRole{
	UserRoleAdmin,
	UserRoleUser,
}

Functions

func NewExecutableSchema

func NewExecutableSchema(cfg Config) graphql.ExecutableSchema

NewExecutableSchema creates an ExecutableSchema from the ResolverRoot interface.

Types

type BulkCueCreateInput added in v0.1.3

type BulkCueCreateInput struct {
	Cues []*CreateCueInput `json:"cues"`
}

type BulkCueListCreateInput added in v0.1.3

type BulkCueListCreateInput struct {
	CueLists []*CreateCueListInput `json:"cueLists"`
}

type BulkCueListUpdateInput added in v0.1.3

type BulkCueListUpdateInput struct {
	CueLists []*CueListUpdateItem `json:"cueLists"`
}

type BulkCueUpdateInput

type BulkCueUpdateInput struct {
	CueIds      []string                       `json:"cueIds"`
	FadeInTime  graphql.Omittable[*float64]    `json:"fadeInTime,omitempty"`
	FadeOutTime graphql.Omittable[*float64]    `json:"fadeOutTime,omitempty"`
	FollowTime  graphql.Omittable[*float64]    `json:"followTime,omitempty"`
	EasingType  graphql.Omittable[*EasingType] `json:"easingType,omitempty"`
}

type BulkDeleteResult added in v0.1.3

type BulkDeleteResult struct {
	DeletedCount int      `json:"deletedCount"`
	DeletedIds   []string `json:"deletedIds"`
}

type BulkFixtureCreateInput

type BulkFixtureCreateInput struct {
	Fixtures []*CreateFixtureInstanceInput `json:"fixtures"`
}

type BulkFixtureDefinitionCreateInput added in v0.1.3

type BulkFixtureDefinitionCreateInput struct {
	Definitions []*CreateFixtureDefinitionInput `json:"definitions"`
}

type BulkFixtureDefinitionUpdateInput added in v0.1.3

type BulkFixtureDefinitionUpdateInput struct {
	Definitions []*FixtureDefinitionUpdateItem `json:"definitions"`
}

type BulkFixtureUpdateInput

type BulkFixtureUpdateInput struct {
	Fixtures []*FixtureUpdateItem `json:"fixtures"`
}

type BulkProjectCreateInput added in v0.1.3

type BulkProjectCreateInput struct {
	Projects []*CreateProjectInput `json:"projects"`
}

type BulkProjectUpdateInput added in v0.1.3

type BulkProjectUpdateInput struct {
	Projects []*ProjectUpdateItem `json:"projects"`
}

type BulkSceneBoardButtonCreateInput added in v0.1.3

type BulkSceneBoardButtonCreateInput struct {
	Buttons []*CreateSceneBoardButtonInput `json:"buttons"`
}

type BulkSceneBoardButtonUpdateInput added in v0.1.3

type BulkSceneBoardButtonUpdateInput struct {
	Buttons []*SceneBoardButtonUpdateItem `json:"buttons"`
}

type BulkSceneBoardCreateInput added in v0.1.3

type BulkSceneBoardCreateInput struct {
	SceneBoards []*CreateSceneBoardInput `json:"sceneBoards"`
}

type BulkSceneBoardUpdateInput added in v0.1.3

type BulkSceneBoardUpdateInput struct {
	SceneBoards []*SceneBoardUpdateItem `json:"sceneBoards"`
}

type BulkSceneCreateInput added in v0.1.3

type BulkSceneCreateInput struct {
	Scenes []*CreateSceneInput `json:"scenes"`
}

type BulkSceneUpdateInput added in v0.1.3

type BulkSceneUpdateInput struct {
	Scenes []*SceneUpdateItem `json:"scenes"`
}

type ChannelAssignmentInput

type ChannelAssignmentInput struct {
	ProjectID       string                  `json:"projectId"`
	Universe        graphql.Omittable[*int] `json:"universe,omitempty"`
	StartingChannel graphql.Omittable[*int] `json:"startingChannel,omitempty"`
	FixtureSpecs    []*FixtureSpecInput     `json:"fixtureSpecs"`
}

type ChannelAssignmentSuggestion

type ChannelAssignmentSuggestion struct {
	Universe                   int                         `json:"universe"`
	Assignments                []*FixtureChannelAssignment `json:"assignments"`
	TotalChannelsNeeded        int                         `json:"totalChannelsNeeded"`
	AvailableChannelsRemaining int                         `json:"availableChannelsRemaining"`
}

type ChannelDefinitionResolver

type ChannelDefinitionResolver interface {
	Type(ctx context.Context, obj *models.ChannelDefinition) (ChannelType, error)

	FadeBehavior(ctx context.Context, obj *models.ChannelDefinition) (FadeBehavior, error)
}

type ChannelFadeBehaviorInput added in v0.2.0

type ChannelFadeBehaviorInput struct {
	ChannelID    string       `json:"channelId"`
	FadeBehavior FadeBehavior `json:"fadeBehavior"`
}

type ChannelMapFixture

type ChannelMapFixture struct {
	ID           string      `json:"id"`
	Name         string      `json:"name"`
	Type         FixtureType `json:"type"`
	StartChannel int         `json:"startChannel"`
	EndChannel   int         `json:"endChannel"`
	ChannelCount int         `json:"channelCount"`
}

type ChannelMapResult

type ChannelMapResult struct {
	ProjectID string                `json:"projectId"`
	Universes []*UniverseChannelMap `json:"universes"`
}

type ChannelType

type ChannelType string
const (
	ChannelTypeIntensity  ChannelType = "INTENSITY"
	ChannelTypeRed        ChannelType = "RED"
	ChannelTypeGreen      ChannelType = "GREEN"
	ChannelTypeBlue       ChannelType = "BLUE"
	ChannelTypeWhite      ChannelType = "WHITE"
	ChannelTypeAmber      ChannelType = "AMBER"
	ChannelTypeUv         ChannelType = "UV"
	ChannelTypePan        ChannelType = "PAN"
	ChannelTypeTilt       ChannelType = "TILT"
	ChannelTypeZoom       ChannelType = "ZOOM"
	ChannelTypeFocus      ChannelType = "FOCUS"
	ChannelTypeIris       ChannelType = "IRIS"
	ChannelTypeGobo       ChannelType = "GOBO"
	ChannelTypeColorWheel ChannelType = "COLOR_WHEEL"
	ChannelTypeEffect     ChannelType = "EFFECT"
	ChannelTypeStrobe     ChannelType = "STROBE"
	ChannelTypeMacro      ChannelType = "MACRO"
	ChannelTypeOther      ChannelType = "OTHER"
)

func (ChannelType) IsValid

func (e ChannelType) IsValid() bool

func (ChannelType) MarshalGQL

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

func (ChannelType) MarshalJSON

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

func (ChannelType) String

func (e ChannelType) String() string

func (*ChannelType) UnmarshalGQL

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

func (*ChannelType) UnmarshalJSON

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

type ChannelUsage

type ChannelUsage struct {
	FixtureID   string      `json:"fixtureId"`
	FixtureName string      `json:"fixtureName"`
	ChannelType ChannelType `json:"channelType"`
}

type ChannelValueInput added in v0.2.0

type ChannelValueInput struct {
	Offset int `json:"offset"`
	Value  int `json:"value"`
}

type ComplexityRoot

type ComplexityRoot struct {
	BulkDeleteResult struct {
		DeletedCount func(childComplexity int) int
		DeletedIds   func(childComplexity int) int
	}

	ChannelAssignmentSuggestion struct {
		Assignments                func(childComplexity int) int
		AvailableChannelsRemaining func(childComplexity int) int
		TotalChannelsNeeded        func(childComplexity int) int
		Universe                   func(childComplexity int) int
	}

	ChannelDefinition struct {
		DefaultValue func(childComplexity int) int
		FadeBehavior func(childComplexity int) int
		ID           func(childComplexity int) int
		IsDiscrete   func(childComplexity int) int
		MaxValue     func(childComplexity int) int
		MinValue     func(childComplexity int) int
		Name         func(childComplexity int) int
		Offset       func(childComplexity int) int
		Type         func(childComplexity int) int
	}

	ChannelMapFixture struct {
		ChannelCount func(childComplexity int) int
		EndChannel   func(childComplexity int) int
		ID           func(childComplexity int) int
		Name         func(childComplexity int) int
		StartChannel func(childComplexity int) int
		Type         func(childComplexity int) int
	}

	ChannelMapResult struct {
		ProjectID func(childComplexity int) int
		Universes func(childComplexity int) int
	}

	ChannelUsage struct {
		ChannelType func(childComplexity int) int
		FixtureID   func(childComplexity int) int
		FixtureName func(childComplexity int) int
	}

	ChannelValue struct {
		Offset func(childComplexity int) int
		Value  func(childComplexity int) int
	}

	Cue struct {
		CueList     func(childComplexity int) int
		CueNumber   func(childComplexity int) int
		EasingType  func(childComplexity int) int
		FadeInTime  func(childComplexity int) int
		FadeOutTime func(childComplexity int) int
		FollowTime  func(childComplexity int) int
		ID          func(childComplexity int) int
		Name        func(childComplexity int) int
		Notes       func(childComplexity int) int
		Scene       func(childComplexity int) int
	}

	CueList struct {
		CreatedAt     func(childComplexity int) int
		CueCount      func(childComplexity int) int
		Cues          func(childComplexity int) int
		Description   func(childComplexity int) int
		ID            func(childComplexity int) int
		Loop          func(childComplexity int) int
		Name          func(childComplexity int) int
		Project       func(childComplexity int) int
		TotalDuration func(childComplexity int) int
		UpdatedAt     func(childComplexity int) int
	}

	CueListPlaybackStatus struct {
		CueListID       func(childComplexity int) int
		CurrentCue      func(childComplexity int) int
		CurrentCueIndex func(childComplexity int) int
		FadeProgress    func(childComplexity int) int
		IsFading        func(childComplexity int) int
		IsPlaying       func(childComplexity int) int
		LastUpdated     func(childComplexity int) int
		NextCue         func(childComplexity int) int
		PreviousCue     func(childComplexity int) int
	}

	CueListSummary struct {
		CreatedAt     func(childComplexity int) int
		CueCount      func(childComplexity int) int
		Description   func(childComplexity int) int
		ID            func(childComplexity int) int
		Loop          func(childComplexity int) int
		Name          func(childComplexity int) int
		TotalDuration func(childComplexity int) int
	}

	CuePage struct {
		Cues       func(childComplexity int) int
		Pagination func(childComplexity int) int
	}

	CueUsageSummary struct {
		CueID       func(childComplexity int) int
		CueListID   func(childComplexity int) int
		CueListName func(childComplexity int) int
		CueName     func(childComplexity int) int
		CueNumber   func(childComplexity int) int
	}

	ExportResult struct {
		JSONContent func(childComplexity int) int
		ProjectID   func(childComplexity int) int
		ProjectName func(childComplexity int) int
		Stats       func(childComplexity int) int
	}

	ExportStats struct {
		CueListsCount           func(childComplexity int) int
		CuesCount               func(childComplexity int) int
		FixtureDefinitionsCount func(childComplexity int) int
		FixtureInstancesCount   func(childComplexity int) int
		SceneBoardsCount        func(childComplexity int) int
		ScenesCount             func(childComplexity int) int
	}

	FixtureChannelAssignment struct {
		ChannelCount func(childComplexity int) int
		ChannelRange func(childComplexity int) int
		EndChannel   func(childComplexity int) int
		FixtureName  func(childComplexity int) int
		Manufacturer func(childComplexity int) int
		Mode         func(childComplexity int) int
		Model        func(childComplexity int) int
		StartChannel func(childComplexity int) int
	}

	FixtureDefinition struct {
		Channels     func(childComplexity int) int
		CreatedAt    func(childComplexity int) int
		ID           func(childComplexity int) int
		IsBuiltIn    func(childComplexity int) int
		Manufacturer func(childComplexity int) int
		Model        func(childComplexity int) int
		Modes        func(childComplexity int) int
		Type         func(childComplexity int) int
	}

	FixtureInstance struct {
		ChannelCount   func(childComplexity int) int
		Channels       func(childComplexity int) int
		CreatedAt      func(childComplexity int) int
		DefinitionID   func(childComplexity int) int
		Description    func(childComplexity int) int
		ID             func(childComplexity int) int
		LayoutRotation func(childComplexity int) int
		LayoutX        func(childComplexity int) int
		LayoutY        func(childComplexity int) int
		Manufacturer   func(childComplexity int) int
		ModeName       func(childComplexity int) int
		Model          func(childComplexity int) int
		Name           func(childComplexity int) int
		Project        func(childComplexity int) int
		ProjectOrder   func(childComplexity int) int
		StartChannel   func(childComplexity int) int
		Tags           func(childComplexity int) int
		Type           func(childComplexity int) int
		Universe       func(childComplexity int) int
	}

	FixtureInstancePage struct {
		Fixtures   func(childComplexity int) int
		Pagination func(childComplexity int) int
	}

	FixtureMapping struct {
		LacyLightsKey   func(childComplexity int) int
		QlcManufacturer func(childComplexity int) int
		QlcMode         func(childComplexity int) int
		QlcModel        func(childComplexity int) int
	}

	FixtureMappingSuggestion struct {
		Fixture     func(childComplexity int) int
		Suggestions func(childComplexity int) int
	}

	FixtureMode struct {
		ChannelCount func(childComplexity int) int
		Channels     func(childComplexity int) int
		ID           func(childComplexity int) int
		Name         func(childComplexity int) int
		ShortName    func(childComplexity int) int
	}

	FixtureUsage struct {
		Cues        func(childComplexity int) int
		FixtureID   func(childComplexity int) int
		FixtureName func(childComplexity int) int
		Scenes      func(childComplexity int) int
	}

	FixtureValue struct {
		Channels   func(childComplexity int) int
		Fixture    func(childComplexity int) int
		ID         func(childComplexity int) int
		SceneOrder func(childComplexity int) int
	}

	ImportResult struct {
		ProjectID func(childComplexity int) int
		Stats     func(childComplexity int) int
		Warnings  func(childComplexity int) int
	}

	ImportStats struct {
		CueListsCreated           func(childComplexity int) int
		CuesCreated               func(childComplexity int) int
		FixtureDefinitionsCreated func(childComplexity int) int
		FixtureInstancesCreated   func(childComplexity int) int
		SceneBoardsCreated        func(childComplexity int) int
		ScenesCreated             func(childComplexity int) int
	}

	InstanceChannel struct {
		DefaultValue func(childComplexity int) int
		FadeBehavior func(childComplexity int) int
		ID           func(childComplexity int) int
		IsDiscrete   func(childComplexity int) int
		MaxValue     func(childComplexity int) int
		MinValue     func(childComplexity int) int
		Name         func(childComplexity int) int
		Offset       func(childComplexity int) int
		Type         func(childComplexity int) int
	}

	LacyLightsFixture struct {
		Manufacturer func(childComplexity int) int
		Model        func(childComplexity int) int
	}

	ModeChannel struct {
		Channel func(childComplexity int) int
		ID      func(childComplexity int) int
		Offset  func(childComplexity int) int
	}

	Mutation struct {
		ActivateSceneFromBoard                 func(childComplexity int, sceneBoardID string, sceneID string, fadeTimeOverride *float64) int
		AddFixturesToScene                     func(childComplexity int, sceneID string, fixtureValues []*FixtureValueInput, overwriteExisting *bool) int
		AddSceneToBoard                        func(childComplexity int, input CreateSceneBoardButtonInput) int
		BulkCreateCueLists                     func(childComplexity int, input BulkCueListCreateInput) int
		BulkCreateCues                         func(childComplexity int, input BulkCueCreateInput) int
		BulkCreateFixtureDefinitions           func(childComplexity int, input BulkFixtureDefinitionCreateInput) int
		BulkCreateFixtures                     func(childComplexity int, input BulkFixtureCreateInput) int
		BulkCreateProjects                     func(childComplexity int, input BulkProjectCreateInput) int
		BulkCreateSceneBoardButtons            func(childComplexity int, input BulkSceneBoardButtonCreateInput) int
		BulkCreateSceneBoards                  func(childComplexity int, input BulkSceneBoardCreateInput) int
		BulkCreateScenes                       func(childComplexity int, input BulkSceneCreateInput) int
		BulkDeleteCueLists                     func(childComplexity int, cueListIds []string) int
		BulkDeleteCues                         func(childComplexity int, cueIds []string) int
		BulkDeleteFixtureDefinitions           func(childComplexity int, definitionIds []string) int
		BulkDeleteFixtures                     func(childComplexity int, fixtureIds []string) int
		BulkDeleteProjects                     func(childComplexity int, projectIds []string) int
		BulkDeleteSceneBoardButtons            func(childComplexity int, buttonIds []string) int
		BulkDeleteSceneBoards                  func(childComplexity int, sceneBoardIds []string) int
		BulkDeleteScenes                       func(childComplexity int, sceneIds []string) int
		BulkUpdateCueLists                     func(childComplexity int, input BulkCueListUpdateInput) int
		BulkUpdateCues                         func(childComplexity int, input BulkCueUpdateInput) int
		BulkUpdateFixtureDefinitions           func(childComplexity int, input BulkFixtureDefinitionUpdateInput) int
		BulkUpdateFixtures                     func(childComplexity int, input BulkFixtureUpdateInput) int
		BulkUpdateInstanceChannelsFadeBehavior func(childComplexity int, updates []*ChannelFadeBehaviorInput) int
		BulkUpdateProjects                     func(childComplexity int, input BulkProjectUpdateInput) int
		BulkUpdateSceneBoardButtons            func(childComplexity int, input BulkSceneBoardButtonUpdateInput) int
		BulkUpdateSceneBoards                  func(childComplexity int, input BulkSceneBoardUpdateInput) int
		BulkUpdateScenes                       func(childComplexity int, input BulkSceneUpdateInput) int
		CancelOFLImport                        func(childComplexity int) int
		CancelPreviewSession                   func(childComplexity int, sessionID string) int
		CloneScene                             func(childComplexity int, sceneID string, newName string) int
		CommitPreviewSession                   func(childComplexity int, sessionID string) int
		ConnectWiFi                            func(childComplexity int, ssid string, password *string) int
		CreateCue                              func(childComplexity int, input CreateCueInput) int
		CreateCueList                          func(childComplexity int, input CreateCueListInput) int
		CreateFixtureDefinition                func(childComplexity int, input CreateFixtureDefinitionInput) int
		CreateFixtureInstance                  func(childComplexity int, input CreateFixtureInstanceInput) int
		CreateProject                          func(childComplexity int, input CreateProjectInput) int
		CreateScene                            func(childComplexity int, input CreateSceneInput) int
		CreateSceneBoard                       func(childComplexity int, input CreateSceneBoardInput) int
		DeleteCue                              func(childComplexity int, id string) int
		DeleteCueList                          func(childComplexity int, id string) int
		DeleteFixtureDefinition                func(childComplexity int, id string) int
		DeleteFixtureInstance                  func(childComplexity int, id string) int
		DeleteProject                          func(childComplexity int, id string) int
		DeleteScene                            func(childComplexity int, id string) int
		DeleteSceneBoard                       func(childComplexity int, id string) int
		DisconnectWiFi                         func(childComplexity int) int
		DuplicateScene                         func(childComplexity int, id string) int
		ExportProject                          func(childComplexity int, projectID string, options *ExportOptionsInput) int
		ExportProjectToQlc                     func(childComplexity int, projectID string, fixtureMappings []*FixtureMappingInput) int
		FadeToBlack                            func(childComplexity int, fadeOutTime float64) int
		ForgetWiFiNetwork                      func(childComplexity int, ssid string) int
		GoToCue                                func(childComplexity int, cueListID string, cueIndex int, fadeInTime *float64) int
		ImportOFLFixture                       func(childComplexity int, input ImportOFLFixtureInput) int
		ImportProject                          func(childComplexity int, jsonContent string, options ImportOptionsInput) int
		ImportProjectFromQlc                   func(childComplexity int, xmlContent string, originalFileName string) int
		InitializePreviewWithScene             func(childComplexity int, sessionID string, sceneID string) int
		NextCue                                func(childComplexity int, cueListID string, fadeInTime *float64) int
		PlayCue                                func(childComplexity int, cueID string, fadeInTime *float64) int
		PreviousCue                            func(childComplexity int, cueListID string, fadeInTime *float64) int
		RemoveFixturesFromScene                func(childComplexity int, sceneID string, fixtureIds []string) int
		RemoveSceneFromBoard                   func(childComplexity int, buttonID string) int
		ReorderCues                            func(childComplexity int, cueListID string, cueOrders []*CueOrderInput) int
		ReorderProjectFixtures                 func(childComplexity int, projectID string, fixtureOrders []*FixtureOrderInput) int
		ReorderSceneFixtures                   func(childComplexity int, sceneID string, fixtureOrders []*FixtureOrderInput) int
		SetChannelValue                        func(childComplexity int, universe int, channel int, value int) int
		SetSceneLive                           func(childComplexity int, sceneID string) int
		SetWiFiEnabled                         func(childComplexity int, enabled bool) int
		StartCueList                           func(childComplexity int, cueListID string, startFromCue *int, fadeInTime *float64) int
		StartPreviewSession                    func(childComplexity int, projectID string) int
		StopCueList                            func(childComplexity int, cueListID string) int
		TriggerOFLImport                       func(childComplexity int, options *OFLImportOptionsInput) int
		UpdateAllRepositories                  func(childComplexity int) int
		UpdateCue                              func(childComplexity int, id string, input CreateCueInput) int
		UpdateCueList                          func(childComplexity int, id string, input CreateCueListInput) int
		UpdateFadeUpdateRate                   func(childComplexity int, rateHz int) int
		UpdateFixtureDefinition                func(childComplexity int, id string, input CreateFixtureDefinitionInput) int
		UpdateFixtureInstance                  func(childComplexity int, id string, input UpdateFixtureInstanceInput) int
		UpdateFixturePositions                 func(childComplexity int, positions []*FixturePositionInput) int
		UpdateInstanceChannelFadeBehavior      func(childComplexity int, channelID string, fadeBehavior FadeBehavior) int
		UpdatePreviewChannel                   func(childComplexity int, sessionID string, fixtureID string, channelIndex int, value int) int
		UpdateProject                          func(childComplexity int, id string, input CreateProjectInput) int
		UpdateRepository                       func(childComplexity int, repository string, version *string) int
		UpdateScene                            func(childComplexity int, id string, input UpdateSceneInput) int
		UpdateSceneBoard                       func(childComplexity int, id string, input UpdateSceneBoardInput) int
		UpdateSceneBoardButton                 func(childComplexity int, id string, input UpdateSceneBoardButtonInput) int
		UpdateSceneBoardButtonPositions        func(childComplexity int, positions []*SceneBoardButtonPositionInput) int
		UpdateScenePartial                     func(childComplexity int, sceneID string, name *string, description *string, fixtureValues []*FixtureValueInput, mergeFixtures *bool) int
		UpdateSetting                          func(childComplexity int, input UpdateSettingInput) int
	}

	NetworkInterfaceOption struct {
		Address       func(childComplexity int) int
		Broadcast     func(childComplexity int) int
		Description   func(childComplexity int) int
		InterfaceType func(childComplexity int) int
		Name          func(childComplexity int) int
	}

	OFLFixtureUpdate struct {
		ChangeType    func(childComplexity int) int
		CurrentHash   func(childComplexity int) int
		FixtureKey    func(childComplexity int) int
		InstanceCount func(childComplexity int) int
		IsInUse       func(childComplexity int) int
		Manufacturer  func(childComplexity int) int
		Model         func(childComplexity int) int
		NewHash       func(childComplexity int) int
	}

	OFLImportResult struct {
		ErrorMessage func(childComplexity int) int
		OflVersion   func(childComplexity int) int
		Stats        func(childComplexity int) int
		Success      func(childComplexity int) int
	}

	OFLImportStats struct {
		DurationSeconds   func(childComplexity int) int
		FailedImports     func(childComplexity int) int
		SkippedDuplicates func(childComplexity int) int
		SuccessfulImports func(childComplexity int) int
		TotalProcessed    func(childComplexity int) int
		UpdatedFixtures   func(childComplexity int) int
	}

	OFLImportStatus struct {
		CompletedAt               func(childComplexity int) int
		CurrentFixture            func(childComplexity int) int
		CurrentManufacturer       func(childComplexity int) int
		ErrorMessage              func(childComplexity int) int
		EstimatedSecondsRemaining func(childComplexity int) int
		FailedCount               func(childComplexity int) int
		ImportedCount             func(childComplexity int) int
		IsImporting               func(childComplexity int) int
		OflVersion                func(childComplexity int) int
		PercentComplete           func(childComplexity int) int
		Phase                     func(childComplexity int) int
		SkippedCount              func(childComplexity int) int
		StartedAt                 func(childComplexity int) int
		TotalFixtures             func(childComplexity int) int
		UsingBundledData          func(childComplexity int) int
	}

	OFLUpdateCheckResult struct {
		ChangedFixtureCount func(childComplexity int) int
		ChangedInUseCount   func(childComplexity int) int
		CheckedAt           func(childComplexity int) int
		CurrentFixtureCount func(childComplexity int) int
		FixtureUpdates      func(childComplexity int) int
		NewFixtureCount     func(childComplexity int) int
		OflFixtureCount     func(childComplexity int) int
		OflVersion          func(childComplexity int) int
	}

	PaginationInfo struct {
		HasMore    func(childComplexity int) int
		Page       func(childComplexity int) int
		PerPage    func(childComplexity int) int
		Total      func(childComplexity int) int
		TotalPages func(childComplexity int) int
	}

	PreviewSession struct {
		CreatedAt func(childComplexity int) int
		DmxOutput func(childComplexity int) int
		ID        func(childComplexity int) int
		IsActive  func(childComplexity int) int
		Project   func(childComplexity int) int
		User      func(childComplexity int) int
	}

	Project struct {
		CreatedAt    func(childComplexity int) int
		CueListCount func(childComplexity int) int
		CueLists     func(childComplexity int) int
		Description  func(childComplexity int) int
		FixtureCount func(childComplexity int) int
		Fixtures     func(childComplexity int) int
		ID           func(childComplexity int) int
		Name         func(childComplexity int) int
		SceneBoards  func(childComplexity int) int
		SceneCount   func(childComplexity int) int
		Scenes       func(childComplexity int) int
		UpdatedAt    func(childComplexity int) int
		Users        func(childComplexity int) int
	}

	ProjectUser struct {
		ID       func(childComplexity int) int
		JoinedAt func(childComplexity int) int
		Project  func(childComplexity int) int
		Role     func(childComplexity int) int
		User     func(childComplexity int) int
	}

	QLCExportResult struct {
		CueListCount func(childComplexity int) int
		FixtureCount func(childComplexity int) int
		ProjectName  func(childComplexity int) int
		SceneCount   func(childComplexity int) int
		XMLContent   func(childComplexity int) int
	}

	QLCFixtureDefinition struct {
		Manufacturer func(childComplexity int) int
		Model        func(childComplexity int) int
		Modes        func(childComplexity int) int
		Type         func(childComplexity int) int
	}

	QLCFixtureMappingResult struct {
		DefaultMappings    func(childComplexity int) int
		LacyLightsFixtures func(childComplexity int) int
		ProjectID          func(childComplexity int) int
		Suggestions        func(childComplexity int) int
	}

	QLCFixtureMode struct {
		ChannelCount func(childComplexity int) int
		Name         func(childComplexity int) int
	}

	QLCImportResult struct {
		CueListCount     func(childComplexity int) int
		FixtureCount     func(childComplexity int) int
		OriginalFileName func(childComplexity int) int
		Project          func(childComplexity int) int
		SceneCount       func(childComplexity int) int
		Warnings         func(childComplexity int) int
	}

	Query struct {
		AllDmxOutput                    func(childComplexity int) int
		AvailableVersions               func(childComplexity int, repository string) int
		ChannelMap                      func(childComplexity int, projectID string, universe *int) int
		CheckOFLUpdates                 func(childComplexity int) int
		CompareScenes                   func(childComplexity int, sceneID1 string, sceneID2 string) int
		Cue                             func(childComplexity int, id string) int
		CueList                         func(childComplexity int, id string, page *int, perPage *int, includeSceneDetails *bool) int
		CueListPlaybackStatus           func(childComplexity int, cueListID string) int
		CueLists                        func(childComplexity int, projectID string) int
		CueListsByIds                   func(childComplexity int, ids []string) int
		CuesByIds                       func(childComplexity int, ids []string) int
		CurrentActiveScene              func(childComplexity int) int
		DmxOutput                       func(childComplexity int, universe int) int
		FixtureDefinition               func(childComplexity int, id string) int
		FixtureDefinitions              func(childComplexity int, filter *FixtureDefinitionFilter) int
		FixtureDefinitionsByIds         func(childComplexity int, ids []string) int
		FixtureInstance                 func(childComplexity int, id string) int
		FixtureInstances                func(childComplexity int, projectID string, page *int, perPage *int, filter *FixtureFilterInput) int
		FixtureUsage                    func(childComplexity int, fixtureID string) int
		FixturesByIds                   func(childComplexity int, ids []string) int
		GetQLCFixtureMappingSuggestions func(childComplexity int, projectID string) int
		NetworkInterfaceOptions         func(childComplexity int) int
		OflImportStatus                 func(childComplexity int) int
		PreviewSession                  func(childComplexity int, sessionID string) int
		Project                         func(childComplexity int, id string) int
		Projects                        func(childComplexity int) int
		ProjectsByIds                   func(childComplexity int, ids []string) int
		SavedWifiNetworks               func(childComplexity int) int
		Scene                           func(childComplexity int, id string, includeFixtureValues *bool) int
		SceneBoard                      func(childComplexity int, id string) int
		SceneBoardButton                func(childComplexity int, id string) int
		SceneBoards                     func(childComplexity int, projectID string) int
		SceneBoardsByIds                func(childComplexity int, ids []string) int
		SceneFixtures                   func(childComplexity int, sceneID string) int
		SceneUsage                      func(childComplexity int, sceneID string) int
		Scenes                          func(childComplexity int, projectID string, page *int, perPage *int, filter *SceneFilterInput, sortBy *SceneSortField) int
		ScenesByIds                     func(childComplexity int, ids []string) int
		SearchCues                      func(childComplexity int, cueListID string, query string, page *int, perPage *int) int
		SearchFixtures                  func(childComplexity int, projectID string, query string, filter *FixtureFilterInput, page *int, perPage *int) int
		SearchScenes                    func(childComplexity int, projectID string, query string, filter *SceneFilterInput, page *int, perPage *int) int
		Setting                         func(childComplexity int, key string) int
		Settings                        func(childComplexity int) int
		SuggestChannelAssignment        func(childComplexity int, input ChannelAssignmentInput) int
		SystemInfo                      func(childComplexity int) int
		SystemVersions                  func(childComplexity int) int
		WifiNetworks                    func(childComplexity int, rescan *bool, deduplicate *bool) int
		WifiStatus                      func(childComplexity int) int
	}

	RepositoryVersion struct {
		Installed       func(childComplexity int) int
		Latest          func(childComplexity int) int
		Repository      func(childComplexity int) int
		UpdateAvailable func(childComplexity int) int
	}

	Scene struct {
		CreatedAt     func(childComplexity int) int
		Description   func(childComplexity int) int
		FixtureValues func(childComplexity int) int
		ID            func(childComplexity int) int
		Name          func(childComplexity int) int
		Project       func(childComplexity int) int
		UpdatedAt     func(childComplexity int) int
	}

	SceneBoard struct {
		Buttons         func(childComplexity int) int
		CanvasHeight    func(childComplexity int) int
		CanvasWidth     func(childComplexity int) int
		CreatedAt       func(childComplexity int) int
		DefaultFadeTime func(childComplexity int) int
		Description     func(childComplexity int) int
		GridSize        func(childComplexity int) int
		ID              func(childComplexity int) int
		Name            func(childComplexity int) int
		Project         func(childComplexity int) int
		UpdatedAt       func(childComplexity int) int
	}

	SceneBoardButton struct {
		Color      func(childComplexity int) int
		CreatedAt  func(childComplexity int) int
		Height     func(childComplexity int) int
		ID         func(childComplexity int) int
		Label      func(childComplexity int) int
		LayoutX    func(childComplexity int) int
		LayoutY    func(childComplexity int) int
		Scene      func(childComplexity int) int
		SceneBoard func(childComplexity int) int
		UpdatedAt  func(childComplexity int) int
		Width      func(childComplexity int) int
	}

	SceneComparison struct {
		Differences           func(childComplexity int) int
		DifferentFixtureCount func(childComplexity int) int
		IdenticalFixtureCount func(childComplexity int) int
		Scene1                func(childComplexity int) int
		Scene2                func(childComplexity int) int
	}

	SceneDifference struct {
		DifferenceType func(childComplexity int) int
		FixtureID      func(childComplexity int) int
		FixtureName    func(childComplexity int) int
		Scene1Values   func(childComplexity int) int
		Scene2Values   func(childComplexity int) int
	}

	SceneFixtureSummary struct {
		FixtureID   func(childComplexity int) int
		FixtureName func(childComplexity int) int
		FixtureType func(childComplexity int) int
	}

	ScenePage struct {
		Pagination func(childComplexity int) int
		Scenes     func(childComplexity int) int
	}

	SceneSummary struct {
		CreatedAt    func(childComplexity int) int
		Description  func(childComplexity int) int
		FixtureCount func(childComplexity int) int
		ID           func(childComplexity int) int
		Name         func(childComplexity int) int
		UpdatedAt    func(childComplexity int) int
	}

	SceneUsage struct {
		Cues      func(childComplexity int) int
		SceneID   func(childComplexity int) int
		SceneName func(childComplexity int) int
	}

	Setting struct {
		CreatedAt func(childComplexity int) int
		ID        func(childComplexity int) int
		Key       func(childComplexity int) int
		UpdatedAt func(childComplexity int) int
		Value     func(childComplexity int) int
	}

	Subscription struct {
		CueListPlaybackUpdated func(childComplexity int, cueListID string) int
		DmxOutputChanged       func(childComplexity int, universe *int) int
		OflImportProgress      func(childComplexity int) int
		PreviewSessionUpdated  func(childComplexity int, projectID string) int
		ProjectUpdated         func(childComplexity int, projectID string) int
		SystemInfoUpdated      func(childComplexity int) int
		WifiStatusUpdated      func(childComplexity int) int
	}

	SystemInfo struct {
		ArtnetBroadcastAddress func(childComplexity int) int
		ArtnetEnabled          func(childComplexity int) int
		FadeUpdateRateHz       func(childComplexity int) int
	}

	SystemVersionInfo struct {
		LastChecked                func(childComplexity int) int
		Repositories               func(childComplexity int) int
		VersionManagementSupported func(childComplexity int) int
	}

	UniverseChannelMap struct {
		AvailableChannels func(childComplexity int) int
		ChannelUsage      func(childComplexity int) int
		Fixtures          func(childComplexity int) int
		Universe          func(childComplexity int) int
		UsedChannels      func(childComplexity int) int
	}

	UniverseOutput struct {
		Channels func(childComplexity int) int
		Universe func(childComplexity int) int
	}

	UpdateResult struct {
		Error           func(childComplexity int) int
		Message         func(childComplexity int) int
		NewVersion      func(childComplexity int) int
		PreviousVersion func(childComplexity int) int
		Repository      func(childComplexity int) int
		Success         func(childComplexity int) int
	}

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

	WiFiConnectionResult struct {
		Connected func(childComplexity int) int
		Message   func(childComplexity int) int
		Success   func(childComplexity int) int
	}

	WiFiNetwork struct {
		Frequency      func(childComplexity int) int
		InUse          func(childComplexity int) int
		Saved          func(childComplexity int) int
		Security       func(childComplexity int) int
		SignalStrength func(childComplexity int) int
		Ssid           func(childComplexity int) int
	}

	WiFiStatus struct {
		Available      func(childComplexity int) int
		Connected      func(childComplexity int) int
		Enabled        func(childComplexity int) int
		Frequency      func(childComplexity int) int
		IPAddress      func(childComplexity int) int
		MacAddress     func(childComplexity int) int
		SignalStrength func(childComplexity int) int
		Ssid           func(childComplexity int) int
	}
}

type Config

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

type CreateChannelDefinitionInput

type CreateChannelDefinitionInput struct {
	Name         string                           `json:"name"`
	Type         ChannelType                      `json:"type"`
	Offset       int                              `json:"offset"`
	MinValue     int                              `json:"minValue"`
	MaxValue     int                              `json:"maxValue"`
	DefaultValue int                              `json:"defaultValue"`
	FadeBehavior graphql.Omittable[*FadeBehavior] `json:"fadeBehavior,omitempty"`
	IsDiscrete   graphql.Omittable[*bool]         `json:"isDiscrete,omitempty"`
}

type CreateCueInput

type CreateCueInput struct {
	Name        string                         `json:"name"`
	CueNumber   float64                        `json:"cueNumber"`
	CueListID   string                         `json:"cueListId"`
	SceneID     string                         `json:"sceneId"`
	FadeInTime  float64                        `json:"fadeInTime"`
	FadeOutTime float64                        `json:"fadeOutTime"`
	FollowTime  graphql.Omittable[*float64]    `json:"followTime,omitempty"`
	EasingType  graphql.Omittable[*EasingType] `json:"easingType,omitempty"`
	Notes       graphql.Omittable[*string]     `json:"notes,omitempty"`
}

type CreateCueListInput

type CreateCueListInput struct {
	Name        string                     `json:"name"`
	Description graphql.Omittable[*string] `json:"description,omitempty"`
	Loop        graphql.Omittable[*bool]   `json:"loop,omitempty"`
	ProjectID   string                     `json:"projectId"`
}

type CreateFixtureDefinitionInput

type CreateFixtureDefinitionInput struct {
	Manufacturer string                                `json:"manufacturer"`
	Model        string                                `json:"model"`
	Type         FixtureType                           `json:"type"`
	Channels     []*CreateChannelDefinitionInput       `json:"channels"`
	Modes        graphql.Omittable[[]*CreateModeInput] `json:"modes,omitempty"`
}

type CreateFixtureInstanceInput

type CreateFixtureInstanceInput struct {
	Name         string                      `json:"name"`
	Description  graphql.Omittable[*string]  `json:"description,omitempty"`
	DefinitionID string                      `json:"definitionId"`
	ModeID       graphql.Omittable[*string]  `json:"modeId,omitempty"`
	ProjectID    string                      `json:"projectId"`
	Universe     int                         `json:"universe"`
	StartChannel int                         `json:"startChannel"`
	Tags         graphql.Omittable[[]string] `json:"tags,omitempty"`
}

type CreateModeInput added in v0.2.1

type CreateModeInput struct {
	Name      string                     `json:"name"`
	ShortName graphql.Omittable[*string] `json:"shortName,omitempty"`
	Channels  []string                   `json:"channels"`
}

type CreateProjectInput

type CreateProjectInput struct {
	Name        string                     `json:"name"`
	Description graphql.Omittable[*string] `json:"description,omitempty"`
}

type CreateSceneBoardButtonInput

type CreateSceneBoardButtonInput struct {
	SceneBoardID string                     `json:"sceneBoardId"`
	SceneID      string                     `json:"sceneId"`
	LayoutX      int                        `json:"layoutX"`
	LayoutY      int                        `json:"layoutY"`
	Width        graphql.Omittable[*int]    `json:"width,omitempty"`
	Height       graphql.Omittable[*int]    `json:"height,omitempty"`
	Color        graphql.Omittable[*string] `json:"color,omitempty"`
	Label        graphql.Omittable[*string] `json:"label,omitempty"`
}

type CreateSceneBoardInput

type CreateSceneBoardInput struct {
	Name            string                      `json:"name"`
	Description     graphql.Omittable[*string]  `json:"description,omitempty"`
	ProjectID       string                      `json:"projectId"`
	DefaultFadeTime graphql.Omittable[*float64] `json:"defaultFadeTime,omitempty"`
	GridSize        graphql.Omittable[*int]     `json:"gridSize,omitempty"`
	CanvasWidth     graphql.Omittable[*int]     `json:"canvasWidth,omitempty"`
	CanvasHeight    graphql.Omittable[*int]     `json:"canvasHeight,omitempty"`
}

type CreateSceneInput

type CreateSceneInput struct {
	Name          string                     `json:"name"`
	Description   graphql.Omittable[*string] `json:"description,omitempty"`
	ProjectID     string                     `json:"projectId"`
	FixtureValues []*FixtureValueInput       `json:"fixtureValues"`
}

type CueListPlaybackStatus

type CueListPlaybackStatus struct {
	CueListID       string `json:"cueListId"`
	CurrentCueIndex *int   `json:"currentCueIndex,omitempty"`
	// True when a scene's values are currently active on DMX fixtures (stays true after fade completes until stopped)
	IsPlaying bool `json:"isPlaying"`
	// True when a fade-in transition is in progress
	IsFading     bool        `json:"isFading"`
	CurrentCue   *models.Cue `json:"currentCue,omitempty"`
	NextCue      *models.Cue `json:"nextCue,omitempty"`
	PreviousCue  *models.Cue `json:"previousCue,omitempty"`
	FadeProgress *float64    `json:"fadeProgress,omitempty"`
	LastUpdated  string      `json:"lastUpdated"`
}

type CueListResolver

type CueListResolver interface {
	Project(ctx context.Context, obj *models.CueList) (*models.Project, error)
	Cues(ctx context.Context, obj *models.CueList) ([]*models.Cue, error)
	CueCount(ctx context.Context, obj *models.CueList) (int, error)
	TotalDuration(ctx context.Context, obj *models.CueList) (float64, error)
	CreatedAt(ctx context.Context, obj *models.CueList) (string, error)
	UpdatedAt(ctx context.Context, obj *models.CueList) (string, error)
}

type CueListSummary

type CueListSummary struct {
	ID            string  `json:"id"`
	Name          string  `json:"name"`
	Description   *string `json:"description,omitempty"`
	CueCount      int     `json:"cueCount"`
	TotalDuration float64 `json:"totalDuration"`
	Loop          bool    `json:"loop"`
	CreatedAt     string  `json:"createdAt"`
}

type CueListUpdateItem added in v0.1.3

type CueListUpdateItem struct {
	CueListID   string                     `json:"cueListId"`
	Name        graphql.Omittable[*string] `json:"name,omitempty"`
	Description graphql.Omittable[*string] `json:"description,omitempty"`
	Loop        graphql.Omittable[*bool]   `json:"loop,omitempty"`
}

type CueOrderInput

type CueOrderInput struct {
	CueID     string  `json:"cueId"`
	CueNumber float64 `json:"cueNumber"`
}

type CuePage

type CuePage struct {
	Cues       []*models.Cue  `json:"cues"`
	Pagination PaginationInfo `json:"pagination"`
}

type CueResolver

type CueResolver interface {
	Scene(ctx context.Context, obj *models.Cue) (*models.Scene, error)
	CueList(ctx context.Context, obj *models.Cue) (*models.CueList, error)

	EasingType(ctx context.Context, obj *models.Cue) (*EasingType, error)
}

type CueUsageSummary

type CueUsageSummary struct {
	CueID       string  `json:"cueId"`
	CueNumber   float64 `json:"cueNumber"`
	CueName     string  `json:"cueName"`
	CueListID   string  `json:"cueListId"`
	CueListName string  `json:"cueListName"`
}

type DifferenceType

type DifferenceType string
const (
	DifferenceTypeValuesChanged DifferenceType = "VALUES_CHANGED"
	DifferenceTypeOnlyInScene1  DifferenceType = "ONLY_IN_SCENE1"
	DifferenceTypeOnlyInScene2  DifferenceType = "ONLY_IN_SCENE2"
)

func (DifferenceType) IsValid

func (e DifferenceType) IsValid() bool

func (DifferenceType) MarshalGQL

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

func (DifferenceType) MarshalJSON

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

func (DifferenceType) String

func (e DifferenceType) String() string

func (*DifferenceType) UnmarshalGQL

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

func (*DifferenceType) UnmarshalJSON

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

type DirectiveRoot

type DirectiveRoot struct {
}

type EasingType

type EasingType string
const (
	EasingTypeLinear             EasingType = "LINEAR"
	EasingTypeEaseInOutCubic     EasingType = "EASE_IN_OUT_CUBIC"
	EasingTypeEaseInOutSine      EasingType = "EASE_IN_OUT_SINE"
	EasingTypeEaseOutExponential EasingType = "EASE_OUT_EXPONENTIAL"
	EasingTypeBezier             EasingType = "BEZIER"
	EasingTypeSCurve             EasingType = "S_CURVE"
)

func (EasingType) IsValid

func (e EasingType) IsValid() bool

func (EasingType) MarshalGQL

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

func (EasingType) MarshalJSON

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

func (EasingType) String

func (e EasingType) String() string

func (*EasingType) UnmarshalGQL

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

func (*EasingType) UnmarshalJSON

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

type ExportOptionsInput

type ExportOptionsInput struct {
	Description     graphql.Omittable[*string] `json:"description,omitempty"`
	IncludeFixtures graphql.Omittable[*bool]   `json:"includeFixtures,omitempty"`
	IncludeScenes   graphql.Omittable[*bool]   `json:"includeScenes,omitempty"`
	IncludeCueLists graphql.Omittable[*bool]   `json:"includeCueLists,omitempty"`
}

type ExportResult

type ExportResult struct {
	ProjectID   string      `json:"projectId"`
	ProjectName string      `json:"projectName"`
	JSONContent string      `json:"jsonContent"`
	Stats       ExportStats `json:"stats"`
}

type ExportStats

type ExportStats struct {
	FixtureDefinitionsCount int `json:"fixtureDefinitionsCount"`
	FixtureInstancesCount   int `json:"fixtureInstancesCount"`
	ScenesCount             int `json:"scenesCount"`
	CueListsCount           int `json:"cueListsCount"`
	CuesCount               int `json:"cuesCount"`
	SceneBoardsCount        int `json:"sceneBoardsCount"`
}

type FadeBehavior added in v0.2.0

type FadeBehavior string

Determines how a channel behaves during scene transitions. FADE - Interpolate smoothly between values (default for intensity, colors) SNAP - Jump to target value at start of transition (for gobos, macros, effects) SNAP_END - Jump to target value at end of transition

const (
	FadeBehaviorFade    FadeBehavior = "FADE"
	FadeBehaviorSnap    FadeBehavior = "SNAP"
	FadeBehaviorSnapEnd FadeBehavior = "SNAP_END"
)

func (FadeBehavior) IsValid added in v0.2.0

func (e FadeBehavior) IsValid() bool

func (FadeBehavior) MarshalGQL added in v0.2.0

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

func (FadeBehavior) MarshalJSON added in v0.2.0

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

func (FadeBehavior) String added in v0.2.0

func (e FadeBehavior) String() string

func (*FadeBehavior) UnmarshalGQL added in v0.2.0

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

func (*FadeBehavior) UnmarshalJSON added in v0.2.0

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

type FixtureChannelAssignment

type FixtureChannelAssignment struct {
	FixtureName  string  `json:"fixtureName"`
	Manufacturer string  `json:"manufacturer"`
	Model        string  `json:"model"`
	Mode         *string `json:"mode,omitempty"`
	StartChannel int     `json:"startChannel"`
	EndChannel   int     `json:"endChannel"`
	ChannelCount int     `json:"channelCount"`
	ChannelRange string  `json:"channelRange"`
}

type FixtureConflictStrategy

type FixtureConflictStrategy string
const (
	FixtureConflictStrategySkip    FixtureConflictStrategy = "SKIP"
	FixtureConflictStrategyReplace FixtureConflictStrategy = "REPLACE"
	FixtureConflictStrategyError   FixtureConflictStrategy = "ERROR"
)

func (FixtureConflictStrategy) IsValid

func (e FixtureConflictStrategy) IsValid() bool

func (FixtureConflictStrategy) MarshalGQL

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

func (FixtureConflictStrategy) MarshalJSON

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

func (FixtureConflictStrategy) String

func (e FixtureConflictStrategy) String() string

func (*FixtureConflictStrategy) UnmarshalGQL

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

func (*FixtureConflictStrategy) UnmarshalJSON

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

type FixtureDefinitionFilter

type FixtureDefinitionFilter struct {
	Manufacturer graphql.Omittable[*string]       `json:"manufacturer,omitempty"`
	Model        graphql.Omittable[*string]       `json:"model,omitempty"`
	Type         graphql.Omittable[*FixtureType]  `json:"type,omitempty"`
	IsBuiltIn    graphql.Omittable[*bool]         `json:"isBuiltIn,omitempty"`
	ChannelTypes graphql.Omittable[[]ChannelType] `json:"channelTypes,omitempty"`
}

type FixtureDefinitionResolver

type FixtureDefinitionResolver interface {
	Type(ctx context.Context, obj *models.FixtureDefinition) (FixtureType, error)
	Channels(ctx context.Context, obj *models.FixtureDefinition) ([]*models.ChannelDefinition, error)
	Modes(ctx context.Context, obj *models.FixtureDefinition) ([]*models.FixtureMode, error)

	CreatedAt(ctx context.Context, obj *models.FixtureDefinition) (string, error)
}

type FixtureDefinitionUpdateItem added in v0.1.3

type FixtureDefinitionUpdateItem struct {
	DefinitionID string                          `json:"definitionId"`
	Manufacturer graphql.Omittable[*string]      `json:"manufacturer,omitempty"`
	Model        graphql.Omittable[*string]      `json:"model,omitempty"`
	Type         graphql.Omittable[*FixtureType] `json:"type,omitempty"`
}

type FixtureFilterInput

type FixtureFilterInput struct {
	Type         graphql.Omittable[*FixtureType] `json:"type,omitempty"`
	Universe     graphql.Omittable[*int]         `json:"universe,omitempty"`
	Tags         graphql.Omittable[[]string]     `json:"tags,omitempty"`
	Manufacturer graphql.Omittable[*string]      `json:"manufacturer,omitempty"`
	Model        graphql.Omittable[*string]      `json:"model,omitempty"`
}

type FixtureInstancePage

type FixtureInstancePage struct {
	Fixtures   []*models.FixtureInstance `json:"fixtures"`
	Pagination PaginationInfo            `json:"pagination"`
}

type FixtureInstanceResolver

type FixtureInstanceResolver interface {
	Manufacturer(ctx context.Context, obj *models.FixtureInstance) (string, error)
	Model(ctx context.Context, obj *models.FixtureInstance) (string, error)
	Type(ctx context.Context, obj *models.FixtureInstance) (FixtureType, error)
	ModeName(ctx context.Context, obj *models.FixtureInstance) (string, error)
	ChannelCount(ctx context.Context, obj *models.FixtureInstance) (int, error)
	Channels(ctx context.Context, obj *models.FixtureInstance) ([]*models.InstanceChannel, error)
	Project(ctx context.Context, obj *models.FixtureInstance) (*models.Project, error)

	Tags(ctx context.Context, obj *models.FixtureInstance) ([]string, error)

	CreatedAt(ctx context.Context, obj *models.FixtureInstance) (string, error)
}

type FixtureMapping

type FixtureMapping struct {
	LacyLightsKey   string `json:"lacyLightsKey"`
	QlcManufacturer string `json:"qlcManufacturer"`
	QlcModel        string `json:"qlcModel"`
	QlcMode         string `json:"qlcMode"`
}

type FixtureMappingInput

type FixtureMappingInput struct {
	LacyLightsKey   string `json:"lacyLightsKey"`
	QlcManufacturer string `json:"qlcManufacturer"`
	QlcModel        string `json:"qlcModel"`
	QlcMode         string `json:"qlcMode"`
}

type FixtureMappingSuggestion

type FixtureMappingSuggestion struct {
	Fixture     LacyLightsFixture       `json:"fixture"`
	Suggestions []*QLCFixtureDefinition `json:"suggestions"`
}

type FixtureModeResolver

type FixtureModeResolver interface {
	Channels(ctx context.Context, obj *models.FixtureMode) ([]*models.ModeChannel, error)
}

type FixtureOrderInput

type FixtureOrderInput struct {
	FixtureID string `json:"fixtureId"`
	Order     int    `json:"order"`
}

type FixturePositionInput

type FixturePositionInput struct {
	FixtureID      string                      `json:"fixtureId"`
	LayoutX        float64                     `json:"layoutX"`
	LayoutY        float64                     `json:"layoutY"`
	LayoutRotation graphql.Omittable[*float64] `json:"layoutRotation,omitempty"`
}

type FixtureSpecInput

type FixtureSpecInput struct {
	Name         string                     `json:"name"`
	Manufacturer string                     `json:"manufacturer"`
	Model        string                     `json:"model"`
	Mode         graphql.Omittable[*string] `json:"mode,omitempty"`
	ChannelCount graphql.Omittable[*int]    `json:"channelCount,omitempty"`
}

type FixtureType

type FixtureType string
const (
	FixtureTypeLedPar     FixtureType = "LED_PAR"
	FixtureTypeMovingHead FixtureType = "MOVING_HEAD"
	FixtureTypeStrobe     FixtureType = "STROBE"
	FixtureTypeDimmer     FixtureType = "DIMMER"
	FixtureTypeOther      FixtureType = "OTHER"
)

func (FixtureType) IsValid

func (e FixtureType) IsValid() bool

func (FixtureType) MarshalGQL

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

func (FixtureType) MarshalJSON

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

func (FixtureType) String

func (e FixtureType) String() string

func (*FixtureType) UnmarshalGQL

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

func (*FixtureType) UnmarshalJSON

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

type FixtureUpdateItem

type FixtureUpdateItem struct {
	FixtureID      string                      `json:"fixtureId"`
	Name           graphql.Omittable[*string]  `json:"name,omitempty"`
	Description    graphql.Omittable[*string]  `json:"description,omitempty"`
	Universe       graphql.Omittable[*int]     `json:"universe,omitempty"`
	StartChannel   graphql.Omittable[*int]     `json:"startChannel,omitempty"`
	Tags           graphql.Omittable[[]string] `json:"tags,omitempty"`
	LayoutX        graphql.Omittable[*float64] `json:"layoutX,omitempty"`
	LayoutY        graphql.Omittable[*float64] `json:"layoutY,omitempty"`
	LayoutRotation graphql.Omittable[*float64] `json:"layoutRotation,omitempty"`
}

type FixtureUsage

type FixtureUsage struct {
	FixtureID   string             `json:"fixtureId"`
	FixtureName string             `json:"fixtureName"`
	Scenes      []*SceneSummary    `json:"scenes"`
	Cues        []*CueUsageSummary `json:"cues"`
}

type FixtureValueInput

type FixtureValueInput struct {
	FixtureID  string                  `json:"fixtureId"`
	Channels   []*ChannelValueInput    `json:"channels"`
	SceneOrder graphql.Omittable[*int] `json:"sceneOrder,omitempty"`
}

type FixtureValueResolver

type FixtureValueResolver interface {
	Fixture(ctx context.Context, obj *models.FixtureValue) (*models.FixtureInstance, error)
	Channels(ctx context.Context, obj *models.FixtureValue) ([]*models.ChannelValue, error)
}

type ImportMode

type ImportMode string
const (
	ImportModeCreate ImportMode = "CREATE"
	ImportModeMerge  ImportMode = "MERGE"
)

func (ImportMode) IsValid

func (e ImportMode) IsValid() bool

func (ImportMode) MarshalGQL

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

func (ImportMode) MarshalJSON

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

func (ImportMode) String

func (e ImportMode) String() string

func (*ImportMode) UnmarshalGQL

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

func (*ImportMode) UnmarshalJSON

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

type ImportOFLFixtureInput

type ImportOFLFixtureInput struct {
	Manufacturer   string                   `json:"manufacturer"`
	OflFixtureJSON string                   `json:"oflFixtureJson"`
	Replace        graphql.Omittable[*bool] `json:"replace,omitempty"`
}

type ImportOptionsInput

type ImportOptionsInput struct {
	Mode                    ImportMode                                  `json:"mode"`
	TargetProjectID         graphql.Omittable[*string]                  `json:"targetProjectId,omitempty"`
	ProjectName             graphql.Omittable[*string]                  `json:"projectName,omitempty"`
	FixtureConflictStrategy graphql.Omittable[*FixtureConflictStrategy] `json:"fixtureConflictStrategy,omitempty"`
	ImportBuiltInFixtures   graphql.Omittable[*bool]                    `json:"importBuiltInFixtures,omitempty"`
}

type ImportResult

type ImportResult struct {
	ProjectID string      `json:"projectId"`
	Stats     ImportStats `json:"stats"`
	Warnings  []string    `json:"warnings"`
}

type ImportStats

type ImportStats struct {
	FixtureDefinitionsCreated int `json:"fixtureDefinitionsCreated"`
	FixtureInstancesCreated   int `json:"fixtureInstancesCreated"`
	ScenesCreated             int `json:"scenesCreated"`
	CueListsCreated           int `json:"cueListsCreated"`
	CuesCreated               int `json:"cuesCreated"`
	SceneBoardsCreated        int `json:"sceneBoardsCreated"`
}

type InstanceChannelResolver

type InstanceChannelResolver interface {
	Type(ctx context.Context, obj *models.InstanceChannel) (ChannelType, error)

	FadeBehavior(ctx context.Context, obj *models.InstanceChannel) (FadeBehavior, error)
}

type LacyLightsFixture

type LacyLightsFixture struct {
	Manufacturer string `json:"manufacturer"`
	Model        string `json:"model"`
}

type ModeChannelResolver

type ModeChannelResolver interface {
	Channel(ctx context.Context, obj *models.ModeChannel) (*models.ChannelDefinition, error)
}

type Mutation

type Mutation struct {
}

type MutationResolver

type MutationResolver interface {
	CreateProject(ctx context.Context, input CreateProjectInput) (*models.Project, error)
	UpdateProject(ctx context.Context, id string, input CreateProjectInput) (*models.Project, error)
	DeleteProject(ctx context.Context, id string) (bool, error)
	BulkCreateProjects(ctx context.Context, input BulkProjectCreateInput) ([]*models.Project, error)
	BulkUpdateProjects(ctx context.Context, input BulkProjectUpdateInput) ([]*models.Project, error)
	BulkDeleteProjects(ctx context.Context, projectIds []string) (*BulkDeleteResult, error)
	CreateFixtureDefinition(ctx context.Context, input CreateFixtureDefinitionInput) (*models.FixtureDefinition, error)
	ImportOFLFixture(ctx context.Context, input ImportOFLFixtureInput) (*models.FixtureDefinition, error)
	UpdateFixtureDefinition(ctx context.Context, id string, input CreateFixtureDefinitionInput) (*models.FixtureDefinition, error)
	DeleteFixtureDefinition(ctx context.Context, id string) (bool, error)
	BulkCreateFixtureDefinitions(ctx context.Context, input BulkFixtureDefinitionCreateInput) ([]*models.FixtureDefinition, error)
	BulkUpdateFixtureDefinitions(ctx context.Context, input BulkFixtureDefinitionUpdateInput) ([]*models.FixtureDefinition, error)
	BulkDeleteFixtureDefinitions(ctx context.Context, definitionIds []string) (*BulkDeleteResult, error)
	CreateFixtureInstance(ctx context.Context, input CreateFixtureInstanceInput) (*models.FixtureInstance, error)
	UpdateFixtureInstance(ctx context.Context, id string, input UpdateFixtureInstanceInput) (*models.FixtureInstance, error)
	BulkUpdateFixtures(ctx context.Context, input BulkFixtureUpdateInput) ([]*models.FixtureInstance, error)
	BulkCreateFixtures(ctx context.Context, input BulkFixtureCreateInput) ([]*models.FixtureInstance, error)
	DeleteFixtureInstance(ctx context.Context, id string) (bool, error)
	BulkDeleteFixtures(ctx context.Context, fixtureIds []string) (*BulkDeleteResult, error)
	UpdateInstanceChannelFadeBehavior(ctx context.Context, channelID string, fadeBehavior FadeBehavior) (*models.InstanceChannel, error)
	BulkUpdateInstanceChannelsFadeBehavior(ctx context.Context, updates []*ChannelFadeBehaviorInput) ([]*models.InstanceChannel, error)
	ReorderProjectFixtures(ctx context.Context, projectID string, fixtureOrders []*FixtureOrderInput) (bool, error)
	ReorderSceneFixtures(ctx context.Context, sceneID string, fixtureOrders []*FixtureOrderInput) (bool, error)
	UpdateFixturePositions(ctx context.Context, positions []*FixturePositionInput) (bool, error)
	CreateScene(ctx context.Context, input CreateSceneInput) (*models.Scene, error)
	UpdateScene(ctx context.Context, id string, input UpdateSceneInput) (*models.Scene, error)
	DuplicateScene(ctx context.Context, id string) (*models.Scene, error)
	CloneScene(ctx context.Context, sceneID string, newName string) (*models.Scene, error)
	DeleteScene(ctx context.Context, id string) (bool, error)
	BulkCreateScenes(ctx context.Context, input BulkSceneCreateInput) ([]*models.Scene, error)
	BulkUpdateScenes(ctx context.Context, input BulkSceneUpdateInput) ([]*models.Scene, error)
	BulkDeleteScenes(ctx context.Context, sceneIds []string) (*BulkDeleteResult, error)
	AddFixturesToScene(ctx context.Context, sceneID string, fixtureValues []*FixtureValueInput, overwriteExisting *bool) (*models.Scene, error)
	RemoveFixturesFromScene(ctx context.Context, sceneID string, fixtureIds []string) (*models.Scene, error)
	UpdateScenePartial(ctx context.Context, sceneID string, name *string, description *string, fixtureValues []*FixtureValueInput, mergeFixtures *bool) (*models.Scene, error)
	CreateSceneBoard(ctx context.Context, input CreateSceneBoardInput) (*models.SceneBoard, error)
	UpdateSceneBoard(ctx context.Context, id string, input UpdateSceneBoardInput) (*models.SceneBoard, error)
	DeleteSceneBoard(ctx context.Context, id string) (bool, error)
	BulkCreateSceneBoards(ctx context.Context, input BulkSceneBoardCreateInput) ([]*models.SceneBoard, error)
	BulkUpdateSceneBoards(ctx context.Context, input BulkSceneBoardUpdateInput) ([]*models.SceneBoard, error)
	BulkDeleteSceneBoards(ctx context.Context, sceneBoardIds []string) (*BulkDeleteResult, error)
	AddSceneToBoard(ctx context.Context, input CreateSceneBoardButtonInput) (*models.SceneBoardButton, error)
	UpdateSceneBoardButton(ctx context.Context, id string, input UpdateSceneBoardButtonInput) (*models.SceneBoardButton, error)
	RemoveSceneFromBoard(ctx context.Context, buttonID string) (bool, error)
	UpdateSceneBoardButtonPositions(ctx context.Context, positions []*SceneBoardButtonPositionInput) (bool, error)
	BulkCreateSceneBoardButtons(ctx context.Context, input BulkSceneBoardButtonCreateInput) ([]*models.SceneBoardButton, error)
	BulkUpdateSceneBoardButtons(ctx context.Context, input BulkSceneBoardButtonUpdateInput) ([]*models.SceneBoardButton, error)
	BulkDeleteSceneBoardButtons(ctx context.Context, buttonIds []string) (*BulkDeleteResult, error)
	ActivateSceneFromBoard(ctx context.Context, sceneBoardID string, sceneID string, fadeTimeOverride *float64) (bool, error)
	CreateCueList(ctx context.Context, input CreateCueListInput) (*models.CueList, error)
	UpdateCueList(ctx context.Context, id string, input CreateCueListInput) (*models.CueList, error)
	DeleteCueList(ctx context.Context, id string) (bool, error)
	BulkCreateCueLists(ctx context.Context, input BulkCueListCreateInput) ([]*models.CueList, error)
	BulkUpdateCueLists(ctx context.Context, input BulkCueListUpdateInput) ([]*models.CueList, error)
	BulkDeleteCueLists(ctx context.Context, cueListIds []string) (*BulkDeleteResult, error)
	CreateCue(ctx context.Context, input CreateCueInput) (*models.Cue, error)
	UpdateCue(ctx context.Context, id string, input CreateCueInput) (*models.Cue, error)
	DeleteCue(ctx context.Context, id string) (bool, error)
	ReorderCues(ctx context.Context, cueListID string, cueOrders []*CueOrderInput) (bool, error)
	BulkCreateCues(ctx context.Context, input BulkCueCreateInput) ([]*models.Cue, error)
	BulkUpdateCues(ctx context.Context, input BulkCueUpdateInput) ([]*models.Cue, error)
	BulkDeleteCues(ctx context.Context, cueIds []string) (*BulkDeleteResult, error)
	StartPreviewSession(ctx context.Context, projectID string) (*models.PreviewSession, error)
	CommitPreviewSession(ctx context.Context, sessionID string) (bool, error)
	CancelPreviewSession(ctx context.Context, sessionID string) (bool, error)
	UpdatePreviewChannel(ctx context.Context, sessionID string, fixtureID string, channelIndex int, value int) (bool, error)
	InitializePreviewWithScene(ctx context.Context, sessionID string, sceneID string) (bool, error)
	SetChannelValue(ctx context.Context, universe int, channel int, value int) (bool, error)
	SetSceneLive(ctx context.Context, sceneID string) (bool, error)
	PlayCue(ctx context.Context, cueID string, fadeInTime *float64) (bool, error)
	FadeToBlack(ctx context.Context, fadeOutTime float64) (bool, error)
	StartCueList(ctx context.Context, cueListID string, startFromCue *int, fadeInTime *float64) (bool, error)
	NextCue(ctx context.Context, cueListID string, fadeInTime *float64) (bool, error)
	PreviousCue(ctx context.Context, cueListID string, fadeInTime *float64) (bool, error)
	GoToCue(ctx context.Context, cueListID string, cueIndex int, fadeInTime *float64) (bool, error)
	StopCueList(ctx context.Context, cueListID string) (bool, error)
	ExportProject(ctx context.Context, projectID string, options *ExportOptionsInput) (*ExportResult, error)
	ImportProject(ctx context.Context, jsonContent string, options ImportOptionsInput) (*ImportResult, error)
	ImportProjectFromQlc(ctx context.Context, xmlContent string, originalFileName string) (*QLCImportResult, error)
	ExportProjectToQlc(ctx context.Context, projectID string, fixtureMappings []*FixtureMappingInput) (*QLCExportResult, error)
	UpdateSetting(ctx context.Context, input UpdateSettingInput) (*models.Setting, error)
	UpdateFadeUpdateRate(ctx context.Context, rateHz int) (bool, error)
	ConnectWiFi(ctx context.Context, ssid string, password *string) (*WiFiConnectionResult, error)
	DisconnectWiFi(ctx context.Context) (*WiFiConnectionResult, error)
	SetWiFiEnabled(ctx context.Context, enabled bool) (*WiFiStatus, error)
	ForgetWiFiNetwork(ctx context.Context, ssid string) (bool, error)
	UpdateRepository(ctx context.Context, repository string, version *string) (*UpdateResult, error)
	UpdateAllRepositories(ctx context.Context) ([]*UpdateResult, error)
	TriggerOFLImport(ctx context.Context, options *OFLImportOptionsInput) (*OFLImportResult, error)
	CancelOFLImport(ctx context.Context) (bool, error)
}

type NetworkInterfaceOption

type NetworkInterfaceOption struct {
	Name          string `json:"name"`
	Address       string `json:"address"`
	Broadcast     string `json:"broadcast"`
	Description   string `json:"description"`
	InterfaceType string `json:"interfaceType"`
}

type OFLFixtureChangeType added in v0.2.0

type OFLFixtureChangeType string

Type of fixture change detected during OFL update check

const (
	OFLFixtureChangeTypeNew       OFLFixtureChangeType = "NEW"
	OFLFixtureChangeTypeUpdated   OFLFixtureChangeType = "UPDATED"
	OFLFixtureChangeTypeUnchanged OFLFixtureChangeType = "UNCHANGED"
)

func (OFLFixtureChangeType) IsValid added in v0.2.0

func (e OFLFixtureChangeType) IsValid() bool

func (OFLFixtureChangeType) MarshalGQL added in v0.2.0

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

func (OFLFixtureChangeType) MarshalJSON added in v0.2.0

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

func (OFLFixtureChangeType) String added in v0.2.0

func (e OFLFixtureChangeType) String() string

func (*OFLFixtureChangeType) UnmarshalGQL added in v0.2.0

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

func (*OFLFixtureChangeType) UnmarshalJSON added in v0.2.0

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

type OFLFixtureUpdate added in v0.2.0

type OFLFixtureUpdate struct {
	// Unique key (manufacturer/model)
	FixtureKey string `json:"fixtureKey"`
	// Manufacturer name
	Manufacturer string `json:"manufacturer"`
	// Model name
	Model string `json:"model"`
	// Type of change
	ChangeType OFLFixtureChangeType `json:"changeType"`
	// Whether this fixture is currently in use by any project
	IsInUse bool `json:"isInUse"`
	// Number of instances using this definition
	InstanceCount int `json:"instanceCount"`
	// Current hash (null if new)
	CurrentHash *string `json:"currentHash,omitempty"`
	// New hash from OFL
	NewHash string `json:"newHash"`
}

Information about a fixture that may need updating

type OFLImportOptionsInput added in v0.2.0

type OFLImportOptionsInput struct {
	// Force reimport of all fixtures, even if unchanged
	ForceReimport graphql.Omittable[*bool] `json:"forceReimport,omitempty"`
	// Update fixtures that are currently in use by projects
	UpdateInUseFixtures graphql.Omittable[*bool] `json:"updateInUseFixtures,omitempty"`
	// Only import specific manufacturers (empty = all)
	Manufacturers graphql.Omittable[[]string] `json:"manufacturers,omitempty"`
	// Prefer bundled data over fetching from GitHub
	PreferBundled graphql.Omittable[*bool] `json:"preferBundled,omitempty"`
}

Options for triggering an OFL import

type OFLImportPhase added in v0.2.0

type OFLImportPhase string

Phases of the OFL import process

const (
	OFLImportPhaseIdle        OFLImportPhase = "IDLE"
	OFLImportPhaseDownloading OFLImportPhase = "DOWNLOADING"
	OFLImportPhaseExtracting  OFLImportPhase = "EXTRACTING"
	OFLImportPhaseParsing     OFLImportPhase = "PARSING"
	OFLImportPhaseImporting   OFLImportPhase = "IMPORTING"
	OFLImportPhaseComplete    OFLImportPhase = "COMPLETE"
	OFLImportPhaseFailed      OFLImportPhase = "FAILED"
	OFLImportPhaseCancelled   OFLImportPhase = "CANCELLED"
)

func (OFLImportPhase) IsValid added in v0.2.0

func (e OFLImportPhase) IsValid() bool

func (OFLImportPhase) MarshalGQL added in v0.2.0

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

func (OFLImportPhase) MarshalJSON added in v0.2.0

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

func (OFLImportPhase) String added in v0.2.0

func (e OFLImportPhase) String() string

func (*OFLImportPhase) UnmarshalGQL added in v0.2.0

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

func (*OFLImportPhase) UnmarshalJSON added in v0.2.0

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

type OFLImportResult added in v0.2.0

type OFLImportResult struct {
	Success      bool           `json:"success"`
	Stats        OFLImportStats `json:"stats"`
	ErrorMessage *string        `json:"errorMessage,omitempty"`
	OflVersion   string         `json:"oflVersion"`
}

Final result of an OFL import operation

type OFLImportStats added in v0.2.0

type OFLImportStats struct {
	TotalProcessed    int     `json:"totalProcessed"`
	SuccessfulImports int     `json:"successfulImports"`
	FailedImports     int     `json:"failedImports"`
	SkippedDuplicates int     `json:"skippedDuplicates"`
	UpdatedFixtures   int     `json:"updatedFixtures"`
	DurationSeconds   float64 `json:"durationSeconds"`
}

Statistics about an OFL import

type OFLImportStatus added in v0.2.0

type OFLImportStatus struct {
	// Whether an import is currently in progress
	IsImporting bool `json:"isImporting"`
	// Current phase of the import
	Phase OFLImportPhase `json:"phase"`
	// Total number of fixtures to import
	TotalFixtures int `json:"totalFixtures"`
	// Number of fixtures successfully imported
	ImportedCount int `json:"importedCount"`
	// Number of fixtures that failed to import
	FailedCount int `json:"failedCount"`
	// Number of fixtures skipped (already exist)
	SkippedCount int `json:"skippedCount"`
	// Percentage complete (0-100)
	PercentComplete float64 `json:"percentComplete"`
	// Name of the current fixture being imported
	CurrentFixture *string `json:"currentFixture,omitempty"`
	// Current manufacturer being processed
	CurrentManufacturer *string `json:"currentManufacturer,omitempty"`
	// Estimated seconds remaining (null if unknown)
	EstimatedSecondsRemaining *int `json:"estimatedSecondsRemaining,omitempty"`
	// Error message if phase is FAILED
	ErrorMessage *string `json:"errorMessage,omitempty"`
	// When the import started
	StartedAt *string `json:"startedAt,omitempty"`
	// When the import completed (if done)
	CompletedAt *string `json:"completedAt,omitempty"`
	// OFL version/commit being imported
	OflVersion *string `json:"oflVersion,omitempty"`
	// Whether using bundled data (offline) or fetched from GitHub
	UsingBundledData bool `json:"usingBundledData"`
}

Real-time status of an OFL import operation

type OFLUpdateCheckResult added in v0.2.0

type OFLUpdateCheckResult struct {
	// Total fixtures in current database
	CurrentFixtureCount int `json:"currentFixtureCount"`
	// Total fixtures in OFL source
	OflFixtureCount int `json:"oflFixtureCount"`
	// Number of new fixtures available
	NewFixtureCount int `json:"newFixtureCount"`
	// Number of changed fixtures
	ChangedFixtureCount int `json:"changedFixtureCount"`
	// Number of changed fixtures that are in use
	ChangedInUseCount int `json:"changedInUseCount"`
	// Detailed list of fixture changes (limited)
	FixtureUpdates []*OFLFixtureUpdate `json:"fixtureUpdates"`
	// OFL version/commit being checked
	OflVersion string `json:"oflVersion"`
	// When this check was performed
	CheckedAt string `json:"checkedAt"`
}

Result of checking for OFL updates

type PaginationInfo

type PaginationInfo struct {
	Total      int  `json:"total"`
	Page       int  `json:"page"`
	PerPage    int  `json:"perPage"`
	TotalPages int  `json:"totalPages"`
	HasMore    bool `json:"hasMore"`
}

type PreviewSessionResolver

type PreviewSessionResolver interface {
	Project(ctx context.Context, obj *models.PreviewSession) (*models.Project, error)
	User(ctx context.Context, obj *models.PreviewSession) (*models.User, error)

	CreatedAt(ctx context.Context, obj *models.PreviewSession) (string, error)
	DmxOutput(ctx context.Context, obj *models.PreviewSession) ([]*UniverseOutput, error)
}

type ProjectResolver

type ProjectResolver interface {
	FixtureCount(ctx context.Context, obj *models.Project) (int, error)
	SceneCount(ctx context.Context, obj *models.Project) (int, error)
	CueListCount(ctx context.Context, obj *models.Project) (int, error)
	CreatedAt(ctx context.Context, obj *models.Project) (string, error)
	UpdatedAt(ctx context.Context, obj *models.Project) (string, error)
	Fixtures(ctx context.Context, obj *models.Project) ([]*models.FixtureInstance, error)
	Scenes(ctx context.Context, obj *models.Project) ([]*models.Scene, error)
	CueLists(ctx context.Context, obj *models.Project) ([]*models.CueList, error)
	SceneBoards(ctx context.Context, obj *models.Project) ([]*models.SceneBoard, error)
	Users(ctx context.Context, obj *models.Project) ([]*models.ProjectUser, error)
}

type ProjectRole

type ProjectRole string
const (
	ProjectRoleOwner  ProjectRole = "OWNER"
	ProjectRoleEditor ProjectRole = "EDITOR"
	ProjectRoleViewer ProjectRole = "VIEWER"
)

func (ProjectRole) IsValid

func (e ProjectRole) IsValid() bool

func (ProjectRole) MarshalGQL

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

func (ProjectRole) MarshalJSON

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

func (ProjectRole) String

func (e ProjectRole) String() string

func (*ProjectRole) UnmarshalGQL

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

func (*ProjectRole) UnmarshalJSON

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

type ProjectUpdateItem added in v0.1.3

type ProjectUpdateItem struct {
	ProjectID   string                     `json:"projectId"`
	Name        graphql.Omittable[*string] `json:"name,omitempty"`
	Description graphql.Omittable[*string] `json:"description,omitempty"`
}

type ProjectUserResolver

type ProjectUserResolver interface {
	User(ctx context.Context, obj *models.ProjectUser) (*models.User, error)
	Project(ctx context.Context, obj *models.ProjectUser) (*models.Project, error)
	Role(ctx context.Context, obj *models.ProjectUser) (ProjectRole, error)
	JoinedAt(ctx context.Context, obj *models.ProjectUser) (string, error)
}

type QLCExportResult

type QLCExportResult struct {
	ProjectName  string `json:"projectName"`
	XMLContent   string `json:"xmlContent"`
	FixtureCount int    `json:"fixtureCount"`
	SceneCount   int    `json:"sceneCount"`
	CueListCount int    `json:"cueListCount"`
}

type QLCFixtureDefinition

type QLCFixtureDefinition struct {
	Manufacturer string            `json:"manufacturer"`
	Model        string            `json:"model"`
	Type         string            `json:"type"`
	Modes        []*QLCFixtureMode `json:"modes"`
}

type QLCFixtureMappingResult

type QLCFixtureMappingResult struct {
	ProjectID          string                      `json:"projectId"`
	LacyLightsFixtures []*LacyLightsFixture        `json:"lacyLightsFixtures"`
	Suggestions        []*FixtureMappingSuggestion `json:"suggestions"`
	DefaultMappings    []*FixtureMapping           `json:"defaultMappings"`
}

type QLCFixtureMode

type QLCFixtureMode struct {
	Name         string `json:"name"`
	ChannelCount int    `json:"channelCount"`
}

type QLCImportResult

type QLCImportResult struct {
	Project          models.Project `json:"project"`
	OriginalFileName string         `json:"originalFileName"`
	FixtureCount     int            `json:"fixtureCount"`
	SceneCount       int            `json:"sceneCount"`
	CueListCount     int            `json:"cueListCount"`
	Warnings         []string       `json:"warnings"`
}

type Query

type Query struct {
}

type QueryResolver

type QueryResolver interface {
	Projects(ctx context.Context) ([]*models.Project, error)
	Project(ctx context.Context, id string) (*models.Project, error)
	FixtureDefinitions(ctx context.Context, filter *FixtureDefinitionFilter) ([]*models.FixtureDefinition, error)
	FixtureDefinition(ctx context.Context, id string) (*models.FixtureDefinition, error)
	FixtureInstances(ctx context.Context, projectID string, page *int, perPage *int, filter *FixtureFilterInput) (*FixtureInstancePage, error)
	FixtureInstance(ctx context.Context, id string) (*models.FixtureInstance, error)
	SearchFixtures(ctx context.Context, projectID string, query string, filter *FixtureFilterInput, page *int, perPage *int) (*FixtureInstancePage, error)
	ChannelMap(ctx context.Context, projectID string, universe *int) (*ChannelMapResult, error)
	SuggestChannelAssignment(ctx context.Context, input ChannelAssignmentInput) (*ChannelAssignmentSuggestion, error)
	Scenes(ctx context.Context, projectID string, page *int, perPage *int, filter *SceneFilterInput, sortBy *SceneSortField) (*ScenePage, error)
	Scene(ctx context.Context, id string, includeFixtureValues *bool) (*models.Scene, error)
	SceneFixtures(ctx context.Context, sceneID string) ([]*SceneFixtureSummary, error)
	SearchScenes(ctx context.Context, projectID string, query string, filter *SceneFilterInput, page *int, perPage *int) (*ScenePage, error)
	SceneBoards(ctx context.Context, projectID string) ([]*models.SceneBoard, error)
	SceneBoard(ctx context.Context, id string) (*models.SceneBoard, error)
	SceneBoardButton(ctx context.Context, id string) (*models.SceneBoardButton, error)
	FixtureUsage(ctx context.Context, fixtureID string) (*FixtureUsage, error)
	SceneUsage(ctx context.Context, sceneID string) (*SceneUsage, error)
	CompareScenes(ctx context.Context, sceneID1 string, sceneID2 string) (*SceneComparison, error)
	CueLists(ctx context.Context, projectID string) ([]*CueListSummary, error)
	CueList(ctx context.Context, id string, page *int, perPage *int, includeSceneDetails *bool) (*models.CueList, error)
	CueListPlaybackStatus(ctx context.Context, cueListID string) (*CueListPlaybackStatus, error)
	Cue(ctx context.Context, id string) (*models.Cue, error)
	SearchCues(ctx context.Context, cueListID string, query string, page *int, perPage *int) (*CuePage, error)
	DmxOutput(ctx context.Context, universe int) ([]int, error)
	AllDmxOutput(ctx context.Context) ([]*UniverseOutput, error)
	PreviewSession(ctx context.Context, sessionID string) (*models.PreviewSession, error)
	CurrentActiveScene(ctx context.Context) (*models.Scene, error)
	Settings(ctx context.Context) ([]*models.Setting, error)
	Setting(ctx context.Context, key string) (*models.Setting, error)
	SystemInfo(ctx context.Context) (*SystemInfo, error)
	NetworkInterfaceOptions(ctx context.Context) ([]*NetworkInterfaceOption, error)
	WifiNetworks(ctx context.Context, rescan *bool, deduplicate *bool) ([]*WiFiNetwork, error)
	WifiStatus(ctx context.Context) (*WiFiStatus, error)
	SavedWifiNetworks(ctx context.Context) ([]*WiFiNetwork, error)
	GetQLCFixtureMappingSuggestions(ctx context.Context, projectID string) (*QLCFixtureMappingResult, error)
	SystemVersions(ctx context.Context) (*SystemVersionInfo, error)
	AvailableVersions(ctx context.Context, repository string) ([]string, error)
	OflImportStatus(ctx context.Context) (*OFLImportStatus, error)
	CheckOFLUpdates(ctx context.Context) (*OFLUpdateCheckResult, error)
	FixturesByIds(ctx context.Context, ids []string) ([]*models.FixtureInstance, error)
	ScenesByIds(ctx context.Context, ids []string) ([]*models.Scene, error)
	CuesByIds(ctx context.Context, ids []string) ([]*models.Cue, error)
	CueListsByIds(ctx context.Context, ids []string) ([]*models.CueList, error)
	SceneBoardsByIds(ctx context.Context, ids []string) ([]*models.SceneBoard, error)
	FixtureDefinitionsByIds(ctx context.Context, ids []string) ([]*models.FixtureDefinition, error)
	ProjectsByIds(ctx context.Context, ids []string) ([]*models.Project, error)
}

type RepositoryVersion

type RepositoryVersion struct {
	Repository      string `json:"repository"`
	Installed       string `json:"installed"`
	Latest          string `json:"latest"`
	UpdateAvailable bool   `json:"updateAvailable"`
}

type ResolverRoot

type ResolverRoot interface {
	ChannelDefinition() ChannelDefinitionResolver
	Cue() CueResolver
	CueList() CueListResolver
	FixtureDefinition() FixtureDefinitionResolver
	FixtureInstance() FixtureInstanceResolver
	FixtureMode() FixtureModeResolver
	FixtureValue() FixtureValueResolver
	InstanceChannel() InstanceChannelResolver
	ModeChannel() ModeChannelResolver
	Mutation() MutationResolver
	PreviewSession() PreviewSessionResolver
	Project() ProjectResolver
	ProjectUser() ProjectUserResolver
	Query() QueryResolver
	Scene() SceneResolver
	SceneBoard() SceneBoardResolver
	SceneBoardButton() SceneBoardButtonResolver
	Setting() SettingResolver
	Subscription() SubscriptionResolver
	User() UserResolver
}

type SceneBoardButtonPositionInput

type SceneBoardButtonPositionInput struct {
	ButtonID string `json:"buttonId"`
	LayoutX  int    `json:"layoutX"`
	LayoutY  int    `json:"layoutY"`
}

type SceneBoardButtonResolver

type SceneBoardButtonResolver interface {
	SceneBoard(ctx context.Context, obj *models.SceneBoardButton) (*models.SceneBoard, error)
	Scene(ctx context.Context, obj *models.SceneBoardButton) (*models.Scene, error)

	CreatedAt(ctx context.Context, obj *models.SceneBoardButton) (string, error)
	UpdatedAt(ctx context.Context, obj *models.SceneBoardButton) (string, error)
}

type SceneBoardButtonUpdateItem added in v0.1.3

type SceneBoardButtonUpdateItem struct {
	ButtonID string                     `json:"buttonId"`
	LayoutX  graphql.Omittable[*int]    `json:"layoutX,omitempty"`
	LayoutY  graphql.Omittable[*int]    `json:"layoutY,omitempty"`
	Width    graphql.Omittable[*int]    `json:"width,omitempty"`
	Height   graphql.Omittable[*int]    `json:"height,omitempty"`
	Color    graphql.Omittable[*string] `json:"color,omitempty"`
	Label    graphql.Omittable[*string] `json:"label,omitempty"`
}

type SceneBoardResolver

type SceneBoardResolver interface {
	Project(ctx context.Context, obj *models.SceneBoard) (*models.Project, error)

	Buttons(ctx context.Context, obj *models.SceneBoard) ([]*models.SceneBoardButton, error)
	CreatedAt(ctx context.Context, obj *models.SceneBoard) (string, error)
	UpdatedAt(ctx context.Context, obj *models.SceneBoard) (string, error)
}

type SceneBoardUpdateItem added in v0.1.3

type SceneBoardUpdateItem struct {
	SceneBoardID    string                      `json:"sceneBoardId"`
	Name            graphql.Omittable[*string]  `json:"name,omitempty"`
	Description     graphql.Omittable[*string]  `json:"description,omitempty"`
	DefaultFadeTime graphql.Omittable[*float64] `json:"defaultFadeTime,omitempty"`
	GridSize        graphql.Omittable[*int]     `json:"gridSize,omitempty"`
	CanvasWidth     graphql.Omittable[*int]     `json:"canvasWidth,omitempty"`
	CanvasHeight    graphql.Omittable[*int]     `json:"canvasHeight,omitempty"`
}

type SceneComparison

type SceneComparison struct {
	Scene1                SceneSummary       `json:"scene1"`
	Scene2                SceneSummary       `json:"scene2"`
	Differences           []*SceneDifference `json:"differences"`
	IdenticalFixtureCount int                `json:"identicalFixtureCount"`
	DifferentFixtureCount int                `json:"differentFixtureCount"`
}

type SceneDifference

type SceneDifference struct {
	FixtureID      string         `json:"fixtureId"`
	FixtureName    string         `json:"fixtureName"`
	DifferenceType DifferenceType `json:"differenceType"`
	Scene1Values   []int          `json:"scene1Values,omitempty"`
	Scene2Values   []int          `json:"scene2Values,omitempty"`
}

type SceneFilterInput

type SceneFilterInput struct {
	NameContains graphql.Omittable[*string] `json:"nameContains,omitempty"`
	UsesFixture  graphql.Omittable[*string] `json:"usesFixture,omitempty"`
}

type SceneFixtureSummary

type SceneFixtureSummary struct {
	FixtureID   string      `json:"fixtureId"`
	FixtureName string      `json:"fixtureName"`
	FixtureType FixtureType `json:"fixtureType"`
}

type ScenePage

type ScenePage struct {
	Scenes     []*SceneSummary `json:"scenes"`
	Pagination PaginationInfo  `json:"pagination"`
}

type SceneResolver

type SceneResolver interface {
	Project(ctx context.Context, obj *models.Scene) (*models.Project, error)
	FixtureValues(ctx context.Context, obj *models.Scene) ([]*models.FixtureValue, error)
	CreatedAt(ctx context.Context, obj *models.Scene) (string, error)
	UpdatedAt(ctx context.Context, obj *models.Scene) (string, error)
}

type SceneSortField

type SceneSortField string
const (
	SceneSortFieldName      SceneSortField = "NAME"
	SceneSortFieldCreatedAt SceneSortField = "CREATED_AT"
	SceneSortFieldUpdatedAt SceneSortField = "UPDATED_AT"
)

func (SceneSortField) IsValid

func (e SceneSortField) IsValid() bool

func (SceneSortField) MarshalGQL

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

func (SceneSortField) MarshalJSON

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

func (SceneSortField) String

func (e SceneSortField) String() string

func (*SceneSortField) UnmarshalGQL

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

func (*SceneSortField) UnmarshalJSON

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

type SceneSummary

type SceneSummary struct {
	ID           string  `json:"id"`
	Name         string  `json:"name"`
	Description  *string `json:"description,omitempty"`
	FixtureCount int     `json:"fixtureCount"`
	CreatedAt    string  `json:"createdAt"`
	UpdatedAt    string  `json:"updatedAt"`
}

type SceneUpdateItem added in v0.1.3

type SceneUpdateItem struct {
	SceneID     string                     `json:"sceneId"`
	Name        graphql.Omittable[*string] `json:"name,omitempty"`
	Description graphql.Omittable[*string] `json:"description,omitempty"`
}

type SceneUsage

type SceneUsage struct {
	SceneID   string             `json:"sceneId"`
	SceneName string             `json:"sceneName"`
	Cues      []*CueUsageSummary `json:"cues"`
}

type SettingResolver

type SettingResolver interface {
	CreatedAt(ctx context.Context, obj *models.Setting) (string, error)
	UpdatedAt(ctx context.Context, obj *models.Setting) (string, error)
}

type Subscription

type Subscription struct {
}

type SubscriptionResolver

type SubscriptionResolver interface {
	DmxOutputChanged(ctx context.Context, universe *int) (<-chan *UniverseOutput, error)
	ProjectUpdated(ctx context.Context, projectID string) (<-chan *models.Project, error)
	PreviewSessionUpdated(ctx context.Context, projectID string) (<-chan *models.PreviewSession, error)
	CueListPlaybackUpdated(ctx context.Context, cueListID string) (<-chan *CueListPlaybackStatus, error)
	SystemInfoUpdated(ctx context.Context) (<-chan *SystemInfo, error)
	WifiStatusUpdated(ctx context.Context) (<-chan *WiFiStatus, error)
	OflImportProgress(ctx context.Context) (<-chan *OFLImportStatus, error)
}

type SystemInfo

type SystemInfo struct {
	ArtnetBroadcastAddress string `json:"artnetBroadcastAddress"`
	ArtnetEnabled          bool   `json:"artnetEnabled"`
	FadeUpdateRateHz       int    `json:"fadeUpdateRateHz"`
}

type SystemVersionInfo

type SystemVersionInfo struct {
	Repositories               []*RepositoryVersion `json:"repositories"`
	LastChecked                string               `json:"lastChecked"`
	VersionManagementSupported bool                 `json:"versionManagementSupported"`
}

type UniverseChannelMap

type UniverseChannelMap struct {
	Universe          int                  `json:"universe"`
	Fixtures          []*ChannelMapFixture `json:"fixtures"`
	ChannelUsage      []*ChannelUsage      `json:"channelUsage"`
	AvailableChannels int                  `json:"availableChannels"`
	UsedChannels      int                  `json:"usedChannels"`
}

type UniverseOutput

type UniverseOutput struct {
	Universe int   `json:"universe"`
	Channels []int `json:"channels"`
}

type UpdateFixtureInstanceInput

type UpdateFixtureInstanceInput struct {
	Name           graphql.Omittable[*string]  `json:"name,omitempty"`
	Description    graphql.Omittable[*string]  `json:"description,omitempty"`
	DefinitionID   graphql.Omittable[*string]  `json:"definitionId,omitempty"`
	ModeID         graphql.Omittable[*string]  `json:"modeId,omitempty"`
	Universe       graphql.Omittable[*int]     `json:"universe,omitempty"`
	StartChannel   graphql.Omittable[*int]     `json:"startChannel,omitempty"`
	Tags           graphql.Omittable[[]string] `json:"tags,omitempty"`
	ProjectOrder   graphql.Omittable[*int]     `json:"projectOrder,omitempty"`
	LayoutX        graphql.Omittable[*float64] `json:"layoutX,omitempty"`
	LayoutY        graphql.Omittable[*float64] `json:"layoutY,omitempty"`
	LayoutRotation graphql.Omittable[*float64] `json:"layoutRotation,omitempty"`
}

type UpdateResult

type UpdateResult struct {
	Success         bool    `json:"success"`
	Repository      string  `json:"repository"`
	PreviousVersion string  `json:"previousVersion"`
	NewVersion      string  `json:"newVersion"`
	Message         *string `json:"message,omitempty"`
	Error           *string `json:"error,omitempty"`
}

type UpdateSceneBoardButtonInput

type UpdateSceneBoardButtonInput struct {
	LayoutX graphql.Omittable[*int]    `json:"layoutX,omitempty"`
	LayoutY graphql.Omittable[*int]    `json:"layoutY,omitempty"`
	Width   graphql.Omittable[*int]    `json:"width,omitempty"`
	Height  graphql.Omittable[*int]    `json:"height,omitempty"`
	Color   graphql.Omittable[*string] `json:"color,omitempty"`
	Label   graphql.Omittable[*string] `json:"label,omitempty"`
}

type UpdateSceneBoardInput

type UpdateSceneBoardInput struct {
	Name            graphql.Omittable[*string]  `json:"name,omitempty"`
	Description     graphql.Omittable[*string]  `json:"description,omitempty"`
	DefaultFadeTime graphql.Omittable[*float64] `json:"defaultFadeTime,omitempty"`
	GridSize        graphql.Omittable[*int]     `json:"gridSize,omitempty"`
	CanvasWidth     graphql.Omittable[*int]     `json:"canvasWidth,omitempty"`
	CanvasHeight    graphql.Omittable[*int]     `json:"canvasHeight,omitempty"`
}

type UpdateSceneInput

type UpdateSceneInput struct {
	Name          graphql.Omittable[*string]              `json:"name,omitempty"`
	Description   graphql.Omittable[*string]              `json:"description,omitempty"`
	FixtureValues graphql.Omittable[[]*FixtureValueInput] `json:"fixtureValues,omitempty"`
}

type UpdateSettingInput

type UpdateSettingInput struct {
	Key   string `json:"key"`
	Value string `json:"value"`
}

type UserResolver

type UserResolver interface {
	Role(ctx context.Context, obj *models.User) (UserRole, error)
	CreatedAt(ctx context.Context, obj *models.User) (string, error)
}

type UserRole

type UserRole string
const (
	UserRoleAdmin UserRole = "ADMIN"
	UserRoleUser  UserRole = "USER"
)

func (UserRole) IsValid

func (e UserRole) IsValid() bool

func (UserRole) MarshalGQL

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

func (UserRole) MarshalJSON

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

func (UserRole) String

func (e UserRole) String() string

func (*UserRole) UnmarshalGQL

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

func (*UserRole) UnmarshalJSON

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

type WiFiConnectionResult

type WiFiConnectionResult struct {
	Success   bool    `json:"success"`
	Message   *string `json:"message,omitempty"`
	Connected bool    `json:"connected"`
}

type WiFiNetwork

type WiFiNetwork struct {
	Ssid           string           `json:"ssid"`
	SignalStrength int              `json:"signalStrength"`
	Frequency      string           `json:"frequency"`
	Security       WiFiSecurityType `json:"security"`
	InUse          bool             `json:"inUse"`
	Saved          bool             `json:"saved"`
}

type WiFiSecurityType

type WiFiSecurityType string
const (
	WiFiSecurityTypeOpen    WiFiSecurityType = "OPEN"
	WiFiSecurityTypeWep     WiFiSecurityType = "WEP"
	WiFiSecurityTypeWpaPsk  WiFiSecurityType = "WPA_PSK"
	WiFiSecurityTypeWpaEap  WiFiSecurityType = "WPA_EAP"
	WiFiSecurityTypeWpa3Psk WiFiSecurityType = "WPA3_PSK"
	WiFiSecurityTypeWpa3Eap WiFiSecurityType = "WPA3_EAP"
	WiFiSecurityTypeOwe     WiFiSecurityType = "OWE"
)

func (WiFiSecurityType) IsValid

func (e WiFiSecurityType) IsValid() bool

func (WiFiSecurityType) MarshalGQL

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

func (WiFiSecurityType) MarshalJSON

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

func (WiFiSecurityType) String

func (e WiFiSecurityType) String() string

func (*WiFiSecurityType) UnmarshalGQL

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

func (*WiFiSecurityType) UnmarshalJSON

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

type WiFiStatus

type WiFiStatus struct {
	Available      bool    `json:"available"`
	Enabled        bool    `json:"enabled"`
	Connected      bool    `json:"connected"`
	Ssid           *string `json:"ssid,omitempty"`
	SignalStrength *int    `json:"signalStrength,omitempty"`
	IPAddress      *string `json:"ipAddress,omitempty"`
	MacAddress     *string `json:"macAddress,omitempty"`
	Frequency      *string `json:"frequency,omitempty"`
}

Jump to

Keyboard shortcuts

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