graph

package
v0.1.13 Latest Latest
Warning

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

Go to latest
Published: Oct 11, 2026 License: MIT Imports: 34 Imported by: 0

Documentation

Overview

Package graph implements the admin GraphQL API. The schema lives in schema.graphqls; generated.go and models_gen.go are generated by gqlgen.

Index

Constants

This section is empty.

Variables

Functions

func NewExecutableSchema

func NewExecutableSchema(cfg Config) graphql.ExecutableSchema

NewExecutableSchema creates an ExecutableSchema from the ResolverRoot interface.

Types

type ActionVisibility

type ActionVisibility struct {
	Action string                `json:"action"`
	Result *configapp.Simulation `json:"result"`
}

type AdminAccount

type AdminAccount struct {
	Username    string    `json:"username"`
	Permissions []string  `json:"permissions"`
	Disabled    bool      `json:"disabled"`
	CreatedAt   time.Time `json:"createdAt"`
	UpdatedAt   time.Time `json:"updatedAt"`
}

type AdminAccountInput

type AdminAccountInput struct {
	Username    string   `json:"username"`
	Password    string   `json:"password"`
	Permissions []string `json:"permissions"`
}

type AdminAccountUpdate

type AdminAccountUpdate struct {
	Username    string   `json:"username"`
	Permissions []string `json:"permissions,omitempty"`
	Disabled    *bool    `json:"disabled,omitempty"`
}

type AppliedPlan added in v0.1.13

type AppliedPlan = configapp.AppliedPlan

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type ApplyPlanInput added in v0.1.13

type ApplyPlanInput struct {
	Plan   any    `json:"plan"`
	PlanID string `json:"planId"`
	// Previewed as a review.
	Review *bool `json:"review,omitempty"`
	// The IDs of the exceptions to confirm, every one of them, as the administrator confirmed them.
	Confirmed []string `json:"confirmed,omitempty"`
}

A plan previewed (planId) to write into the signed-in administrator's workspace.

type CatalogCounts added in v0.1.13

type CatalogCounts = configapp.CatalogCounts

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type CatalogCoverage added in v0.1.13

type CatalogCoverage = configapp.CatalogCoverage

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type CatalogFilter added in v0.1.13

type CatalogFilter = configapp.CatalogFilter

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type CatalogInput added in v0.1.13

type CatalogInput struct {
	Filter *configapp.CatalogFilter `json:"filter"`
	Offset *int                     `json:"offset,omitempty"`
	// At most 500.
	Limit *int `json:"limit,omitempty"`
}
type CatalogLinks = configapp.CatalogLinks

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type CatalogPage added in v0.1.13

type CatalogPage = configapp.CatalogPage

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type CatalogRow added in v0.1.13

type CatalogRow = configapp.CatalogRow

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type ColumnComment

type ColumnComment struct {
	Name        string `json:"name"`
	Description string `json:"description"`
}

type CommitInput added in v0.1.13

type CommitInput = configapp.CommitInput

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type ComplexityRoot

type ComplexityRoot struct {
	ActionVisibility struct {
		Action func(childComplexity int) int
		Result func(childComplexity int) int
	}

	AdminAccount struct {
		CreatedAt   func(childComplexity int) int
		Disabled    func(childComplexity int) int
		Permissions func(childComplexity int) int
		UpdatedAt   func(childComplexity int) int
		Username    func(childComplexity int) int
	}

	AppliedPlan struct {
		Items func(childComplexity int) int
	}

	CatalogCounts struct {
		All       func(childComplexity int) int
		Drift     func(childComplexity int) int
		New       func(childComplexity int) int
		Published func(childComplexity int) int
		Workspace func(childComplexity int) int
	}

	CatalogCoverage struct {
		Datasource func(childComplexity int) int
		Listed     func(childComplexity int) int
		OldestScan func(childComplexity int) int
		Scanned    func(childComplexity int) int
		Unscanned  func(childComplexity int) int
	}

	CatalogLinks struct {
		Incoming func(childComplexity int) int
		Outgoing func(childComplexity int) int
	}

	CatalogPage struct {
		Counts   func(childComplexity int) int
		Coverage func(childComplexity int) int
		Tables   func(childComplexity int) int
		Total    func(childComplexity int) int
	}

	CatalogRow struct {
		Added        func(childComplexity int) int
		Columns      func(childComplexity int) int
		Datasource   func(childComplexity int) int
		Description  func(childComplexity int) int
		Entity       func(childComplexity int) int
		ForeignKeys  func(childComplexity int) int
		HasKey       func(childComplexity int) int
		Missing      func(childComplexity int) int
		Ref          func(childComplexity int) int
		ReferencedBy func(childComplexity int) int
		ScannedAt    func(childComplexity int) int
		Schema       func(childComplexity int) int
		SideEffects  func(childComplexity int) int
		Status       func(childComplexity int) int
		Table        func(childComplexity int) int
		View         func(childComplexity int) int
	}

	ColumnComment struct {
		Description func(childComplexity int) int
		Name        func(childComplexity int) int
	}

	Configuration struct {
		Datasources func(childComplexity int) int
		Entities    func(childComplexity int) int
		Roles       func(childComplexity int) int
		Settings    func(childComplexity int) int
		Users       func(childComplexity int) int
	}

	Datasource struct {
		Connections    func(childComplexity int) int
		Driver         func(childComplexity int) int
		Dsn            func(childComplexity int) int
		Name           func(childComplexity int) int
		ReadAfterWrite func(childComplexity int) int
		Routing        func(childComplexity int) int
	}

	DatasourceConnection struct {
		Dsn    func(childComplexity int) int
		Name   func(childComplexity int) int
		Pooler func(childComplexity int) int
		Role   func(childComplexity int) int
	}

	DatasourceRouting struct {
		Execute func(childComplexity int) int
		Read    func(childComplexity int) int
		Write   func(childComplexity int) int
	}

	DraftRevision struct {
		BasedOn  func(childComplexity int) int
		Revision func(childComplexity int) int
	}

	Entity struct {
		Affects       func(childComplexity int) int
		AllowCascade  func(childComplexity int) int
		Datasource    func(childComplexity int) int
		Description   func(childComplexity int) int
		Fields        func(childComplexity int) int
		Kind          func(childComplexity int) int
		LegacyAccess  func(childComplexity int) int
		Mcp           func(childComplexity int) int
		Name          func(childComplexity int) int
		Params        func(childComplexity int) int
		PrimaryKey    func(childComplexity int) int
		Relationships func(childComplexity int) int
		Schema        func(childComplexity int) int
		Source        func(childComplexity int) int
		TenantPolicy  func(childComplexity int) int
		UniqueKeys    func(childComplexity int) int
	}

	EntityCapability struct {
		Action     func(childComplexity int) int
		Columns    func(childComplexity int) int
		Connection func(childComplexity int) int
		Entity     func(childComplexity int) int
		Privilege  func(childComplexity int) int
		Reason     func(childComplexity int) int
	}

	EntityMCP struct {
		CustomTool       func(childComplexity int) int
		DmlTools         func(childComplexity int) int
		TrustedProcedure func(childComplexity int) int
	}

	EntityVisibility struct {
		Actions func(childComplexity int) int
		Entity  func(childComplexity int) int
	}

	ExecutionStatus struct {
		Aux   func(childComplexity int) int
		Io    func(childComplexity int) int
		Lanes func(childComplexity int) int
		Tasks func(childComplexity int) int
	}

	Field struct {
		Alias       func(childComplexity int) int
		Description func(childComplexity int) int
		Exclude     func(childComplexity int) int
		Mask        func(childComplexity int) int
		Name        func(childComplexity int) int
	}

	FieldReference struct {
		Field func(childComplexity int) int
		Kind  func(childComplexity int) int
		Name  func(childComplexity int) int
		Via   func(childComplexity int) int
	}

	Grant struct {
		Actions          func(childComplexity int) int
		Entity           func(childComplexity int) int
		FieldsRestricted func(childComplexity int) int
		ReadFields       func(childComplexity int) int
		Rows             func(childComplexity int) int
		WriteFields      func(childComplexity int) int
	}

	ImportColumn struct {
		Description func(childComplexity int) int
		Name        func(childComplexity int) int
		Nullable    func(childComplexity int) int
		PrimaryKey  func(childComplexity int) int
		Type        func(childComplexity int) int
	}

	ImportForeignKey struct {
		Columns    func(childComplexity int) int
		Name       func(childComplexity int) int
		OnDelete   func(childComplexity int) int
		OnUpdate   func(childComplexity int) int
		RefColumns func(childComplexity int) int
		RefSchema  func(childComplexity int) int
		RefTable   func(childComplexity int) int
	}

	ImportIndex struct {
		Method  func(childComplexity int) int
		Name    func(childComplexity int) int
		Parts   func(childComplexity int) int
		Primary func(childComplexity int) int
		Unique  func(childComplexity int) int
		Where   func(childComplexity int) int
	}

	ImportKey struct {
		Columns func(childComplexity int) int
		Name    func(childComplexity int) int
		Primary func(childComplexity int) int
		Reason  func(childComplexity int) int
	}

	ImportTable struct {
		Candidate    func(childComplexity int) int
		Columns      func(childComplexity int) int
		ConfiguredAs func(childComplexity int) int
		Description  func(childComplexity int) int
		ForeignKeys  func(childComplexity int) int
		Indexes      func(childComplexity int) int
		Keys         func(childComplexity int) int
		Schema       func(childComplexity int) int
		SideEffects  func(childComplexity int) int
		Status       func(childComplexity int) int
		Table        func(childComplexity int) int
	}

	LaneStatus struct {
		Completed     func(childComplexity int) int
		Inflight      func(childComplexity int) int
		MaxConcurrent func(childComplexity int) int
		MaxQueue      func(childComplexity int) int
		Name          func(childComplexity int) int
		Queued        func(childComplexity int) int
		Rejected      func(childComplexity int) int
	}

	McpToken struct {
		CreatedAt   func(childComplexity int) int
		Datasources func(childComplexity int) int
		ExpiresAt   func(childComplexity int) int
		ID          func(childComplexity int) int
		LastUsedAt  func(childComplexity int) int
		Name        func(childComplexity int) int
		Retired     func(childComplexity int) int
	}

	McpTokenSecret struct {
		Info  func(childComplexity int) int
		Token func(childComplexity int) int
	}

	Mutation struct {
		ApplyPlan           func(childComplexity int, input ApplyPlanInput) int
		CancelScanBatch     func(childComplexity int, id string) int
		CancelSchemaScan    func(childComplexity int, id string) int
		CheckpointWorkspace func(childComplexity int, comment *string) int
		CommitWorkspace     func(childComplexity int, input configapp.CommitInput) int
		CreateAdminAccount  func(childComplexity int, input AdminAccountInput) int
		CreateMcpToken      func(childComplexity int, input configapp.McpTokenInput) int
		DeletePlanTemplate  func(childComplexity int, name string) int
		DiscardDraft        func(childComplexity int, id string) int
		EditWorkspace       func(childComplexity int, input configapp.WorkspaceEditInput) int
		GenerateUserToken   func(childComplexity int) int
		MergeDraft          func(childComplexity int, id string) int
		Publish             func(childComplexity int, input PublishInput) int
		ResetWorkspace      func(childComplexity int, to string) int
		ResolveConflict     func(childComplexity int, id string, theirs bool) int
		RetryScanBatch      func(childComplexity int, id string) int
		RevokeMcpToken      func(childComplexity int, id string) int
		Rollback            func(childComplexity int, input RollbackInput) int
		SavePlanTemplate    func(childComplexity int, input configapp.PlanTemplateInput) int
		SetAdminPassword    func(childComplexity int, input SetAdminPasswordInput) int
		SetPendingState     func(childComplexity int, input configapp.PendingStateInput) int
		StartScanBatch      func(childComplexity int, input configapp.ScanBatchInput) int
		StartSchemaScan     func(childComplexity int, datasource string, schemas []string) int
		UpdateAdminAccount  func(childComplexity int, input AdminAccountUpdate) int
		UpdateWorkspace     func(childComplexity int, to string) int
	}

	PendingPlan struct {
		Key      func(childComplexity int) int
		Report   func(childComplexity int) int
		State    func(childComplexity int) int
		Template func(childComplexity int) int
	}

	PendingState struct {
		Key       func(childComplexity int) int
		Owner     func(childComplexity int) int
		Reason    func(childComplexity int) int
		Status    func(childComplexity int) int
		Until     func(childComplexity int) int
		UpdatedAt func(childComplexity int) int
		UpdatedBy func(childComplexity int) int
	}

	PendingTable struct {
		Added   func(childComplexity int) int
		Entity  func(childComplexity int) int
		Key     func(childComplexity int) int
		Missing func(childComplexity int) int
		Ref     func(childComplexity int) int
		State   func(childComplexity int) int
	}

	PendingWork struct {
		Drift               func(childComplexity int) int
		DriftTables         func(childComplexity int) int
		NewTables           func(childComplexity int) int
		Plans               func(childComplexity int) int
		UnlistedDatasources func(childComplexity int) int
		UnscannedSchemas    func(childComplexity int) int
	}

	PlanChange struct {
		Actions   func(childComplexity int) int
		Entities  func(childComplexity int) int
		Fields    func(childComplexity int) int
		Kind      func(childComplexity int) int
		Mask      func(childComplexity int) int
		Principal func(childComplexity int) int
	}

	PlanException struct {
		Detail  func(childComplexity int) int
		Entity  func(childComplexity int) int
		ID      func(childComplexity int) int
		Kind    func(childComplexity int) int
		Level   func(childComplexity int) int
		Ref     func(childComplexity int) int
		Warning func(childComplexity int) int
	}

	PlanObjects struct {
		Changed    func(childComplexity int) int
		Datasource func(childComplexity int) int
		Imported   func(childComplexity int) int
		Schema     func(childComplexity int) int
		Tables     func(childComplexity int) int
	}

	PlanPreview struct {
		Added      func(childComplexity int) int
		Entities   func(childComplexity int) int
		PlanID     func(childComplexity int) int
		Report     func(childComplexity int) int
		Roles      func(childComplexity int) int
		Users      func(childComplexity int) int
		Validation func(childComplexity int) int
	}

	PlanReport struct {
		Changes     func(childComplexity int) int
		Exceptions  func(childComplexity int) int
		Excluded    func(childComplexity int) int
		Matched     func(childComplexity int) int
		Objects     func(childComplexity int) int
		ScannedFrom func(childComplexity int) int
		ScannedTo   func(childComplexity int) int
		Unscanned   func(childComplexity int) int
	}

	PlanTemplate struct {
		Author    func(childComplexity int) int
		Name      func(childComplexity int) int
		Plan      func(childComplexity int) int
		Recurring func(childComplexity int) int
		UpdatedAt func(childComplexity int) int
		Version   func(childComplexity int) int
	}

	Query struct {
		AdminAccounts        func(childComplexity int) int
		Capabilities         func(childComplexity int) int
		Catalog              func(childComplexity int, input CatalogInput) int
		CatalogLinks         func(childComplexity int, ref string) int
		CatalogRefs          func(childComplexity int, filter configapp.CatalogFilter) int
		CatalogTable         func(childComplexity int, ref string) int
		ConfigSchema         func(childComplexity int) int
		Diff                 func(childComplexity int, from string, to *string) int
		Drafts               func(childComplexity int) int
		FieldReferences      func(childComplexity int, entity string) int
		McpTokens            func(childComplexity int) int
		Me                   func(childComplexity int) int
		Pending              func(childComplexity int) int
		PendingLog           func(childComplexity int, key string) int
		PlanScope            func(childComplexity int, scope any) int
		PlanTemplateVersions func(childComplexity int, name string) int
		PlanTemplates        func(childComplexity int) int
		PreviewPlan          func(childComplexity int, input PlanPreviewInput) int
		Published            func(childComplexity int) int
		Revision             func(childComplexity int, id string) int
		Revisions            func(childComplexity int, limit *int) int
		ScanBatches          func(childComplexity int, datasource string) int
		SchemaList           func(childComplexity int, datasource string, refresh *bool) int
		SchemaScan           func(childComplexity int, id string) int
		SchemaTables         func(childComplexity int, datasource string, schemas []string) int
		ServerStatus         func(childComplexity int) int
		Simulate             func(childComplexity int, input SimulationInput) int
		TableComments        func(childComplexity int, tables []TableRef) int
		Validate             func(childComplexity int, revision *string) int
		Visibility           func(childComplexity int, input VisibilityInput) int
		Workspace            func(childComplexity int) int
		WorkspaceLog         func(childComplexity int, limit *int) int
	}

	Relationship struct {
		Cardinality func(childComplexity int) int
		JoinOn      func(childComplexity int) int
		Name        func(childComplexity int) int
		Target      func(childComplexity int) int
	}

	Revision struct {
		Author      func(childComplexity int) int
		Comment     func(childComplexity int) int
		Config      func(childComplexity int) int
		ContentHash func(childComplexity int) int
		CreatedAt   func(childComplexity int) int
		ID          func(childComplexity int) int
		Parent      func(childComplexity int) int
		PublishedAt func(childComplexity int) int
		Sections    func(childComplexity int) int
		State       func(childComplexity int) int
		Yaml        func(childComplexity int) int
	}

	Role struct {
		Description func(childComplexity int) int
		Grants      func(childComplexity int) int
		Name        func(childComplexity int) int
	}

	ScanBatch struct {
		Canceled   func(childComplexity int) int
		Datasource func(childComplexity int) int
		Done       func(childComplexity int) int
		Failed     func(childComplexity int) int
		FinishedAt func(childComplexity int) int
		ID         func(childComplexity int) int
		Items      func(childComplexity int) int
		Pending    func(childComplexity int) int
		StartedAt  func(childComplexity int) int
		StartedBy  func(childComplexity int) int
		State      func(childComplexity int) int
		Total      func(childComplexity int) int
	}

	ScanBatchItem struct {
		Error  func(childComplexity int) int
		Schema func(childComplexity int) int
		State  func(childComplexity int) int
	}

	ScanJob struct {
		Datasource func(childComplexity int) int
		Error      func(childComplexity int) int
		ID         func(childComplexity int) int
		State      func(childComplexity int) int
	}

	SchemaImport struct {
		Datasource    func(childComplexity int) int
		DefaultSchema func(childComplexity int) int
		Source        func(childComplexity int) int
		Tables        func(childComplexity int) int
	}

	SchemaInfo struct {
		Name      func(childComplexity int) int
		ScannedAt func(childComplexity int) int
		Tables    func(childComplexity int) int
	}

	SchemaList struct {
		Datasource    func(childComplexity int) int
		DefaultSchema func(childComplexity int) int
		ListedAt      func(childComplexity int) int
		Schemas       func(childComplexity int) int
		Source        func(childComplexity int) int
	}

	ScopeCondition struct {
		Matched func(childComplexity int) int
		Name    func(childComplexity int) int
		Value   func(childComplexity int) int
	}

	ScopeStats struct {
		Conditions func(childComplexity int) int
		Samples    func(childComplexity int) int
		Total      func(childComplexity int) int
	}

	ServerStatus struct {
		AppliedRevision func(childComplexity int) int
		Execution       func(childComplexity int) int
		Unapplied       func(childComplexity int) int
		Watching        func(childComplexity int) int
	}

	Simulation struct {
		Allowed     func(childComplexity int) int
		FieldScopes func(childComplexity int) int
		Fields      func(childComplexity int) int
		Grants      func(childComplexity int) int
		Reason      func(childComplexity int) int
		RowFilter   func(childComplexity int) int
	}

	SlotStatus struct {
		Size    func(childComplexity int) int
		Used    func(childComplexity int) int
		Waiting func(childComplexity int) int
	}

	TableComments struct {
		Columns     func(childComplexity int) int
		Description func(childComplexity int) int
	}

	TableLink struct {
		Columns    func(childComplexity int) int
		Entity     func(childComplexity int) int
		Name       func(childComplexity int) int
		Ref        func(childComplexity int) int
		RefColumns func(childComplexity int) int
	}

	TaskStatus struct {
		Name    func(childComplexity int) int
		Running func(childComplexity int) int
	}

	UnappliedRevision struct {
		Error           func(childComplexity int) int
		ID              func(childComplexity int) int
		RestartRequired func(childComplexity int) int
	}

	UnscannedSchemas struct {
		Datasource func(childComplexity int) int
		Schemas    func(childComplexity int) int
	}

	User struct {
		Description func(childComplexity int) int
		Disabled    func(childComplexity int) int
		Grants      func(childComplexity int) int
		Name        func(childComplexity int) int
		Roles       func(childComplexity int) int
		Subject     func(childComplexity int) int
		TokenHash   func(childComplexity int) int
	}

	UserToken struct {
		Token     func(childComplexity int) int
		TokenHash func(childComplexity int) int
	}

	Validation struct {
		ContentHash     func(childComplexity int) int
		Error           func(childComplexity int) int
		Ok              func(childComplexity int) int
		RestartRequired func(childComplexity int) int
		Warnings        func(childComplexity int) int
	}

	Workspace struct {
		Base       func(childComplexity int) int
		Checkpoint func(childComplexity int) int
		Conflicts  func(childComplexity int) int
		Notes      func(childComplexity int) int
		Sections   func(childComplexity int) int
		Taken      func(childComplexity int) int
		UpdatedAt  func(childComplexity int) int
		UpdatedBy  func(childComplexity int) int
		Version    func(childComplexity int) int
	}

	WorkspaceConflict struct {
		FromBy     func(childComplexity int) int
		FromID     func(childComplexity int) int
		ID         func(childComplexity int) int
		Key        func(childComplexity int) int
		Kind       func(childComplexity int) int
		Mine       func(childComplexity int) int
		MineGone   func(childComplexity int) int
		Path       func(childComplexity int) int
		Source     func(childComplexity int) int
		Theirs     func(childComplexity int) int
		TheirsGone func(childComplexity int) int
	}

	WorkspaceLogEntry struct {
		At      func(childComplexity int) int
		By      func(childComplexity int) int
		Items   func(childComplexity int) int
		Note    func(childComplexity int) int
		Op      func(childComplexity int) int
		Version func(childComplexity int) int
	}

	WorkspaceNote struct {
		By     func(childComplexity int) int
		Source func(childComplexity int) int
		Text   func(childComplexity int) int
	}

	WorkspaceRef struct {
		Key  func(childComplexity int) int
		Kind func(childComplexity int) int
	}
}

type Configuration

type Configuration struct {
	Datasources []Datasource
	Entities    []Entity
	Roles       []Role
	Users       []User
	Settings    any
}

Configuration is the read model of a configuration: its datasources (with secrets redacted) and its sections as the workspace holds them, item by item (configapp.Sections).

type Datasource

type Datasource struct {
	Name   string `json:"name"`
	Driver string `json:"driver"`
	// The read connection's DSN with passwords redacted.
	Dsn         string                 `json:"dsn"`
	Connections []DatasourceConnection `json:"connections"`
	// The connection reads, writes and procedure calls use.
	Routing *DatasourceRouting `json:"routing"`
	// How long a session reads from the write connection after writing (a Go duration); empty when off.
	ReadAfterWrite *string `json:"readAfterWrite,omitempty"`
}

type DatasourceConnection

type DatasourceConnection struct {
	Name string `json:"name"`
	// The DSN with passwords redacted.
	Dsn string `json:"dsn"`
	// primary or replica.
	Role string `json:"role"`
	// transaction behind a transaction-mode pooler; null otherwise.
	Pooler *string `json:"pooler,omitempty"`
}

type DatasourceRouting

type DatasourceRouting struct {
	Read    string `json:"read"`
	Write   string `json:"write"`
	Execute string `json:"execute"`
}

type DirectiveRoot

type DirectiveRoot struct {
}

type DraftRevision added in v0.1.13

type DraftRevision struct {
	Revision *Revision `json:"revision"`
	// The first revision up its parents that is not a draft.
	BasedOn *string `json:"basedOn,omitempty"`
}

type Entity

type Entity = configapp.EntityItem

The configuration read model is the workspace's items: a value as the configuration says it, null when unset. (Field is bound in gqlgen.yml: an alias of that name would also bind the introspection type __Field.)

type EntityCapability

type EntityCapability struct {
	Entity    string    `json:"entity"`
	Action    string    `json:"action"`
	Privilege Privilege `json:"privilege"`
	// The connection the action routes to.
	Connection string `json:"connection"`
	// Columns granted at column level when the table-level privilege is not.
	Columns []string `json:"columns,omitempty"`
	Reason  *string  `json:"reason,omitempty"`
}

type EntityInput

type EntityInput struct {
	Name          string              `json:"name"`
	Source        *string             `json:"source,omitempty"`
	Datasource    *string             `json:"datasource,omitempty"`
	Schema        *string             `json:"schema,omitempty"`
	Kind          *string             `json:"kind,omitempty"`
	Description   *string             `json:"description,omitempty"`
	PrimaryKey    []string            `json:"primaryKey,omitempty"`
	UniqueKeys    [][]string          `json:"uniqueKeys,omitempty"`
	Fields        []FieldInput        `json:"fields,omitempty"`
	Relationships []RelationshipInput `json:"relationships,omitempty"`
	TenantPolicy  any                 `json:"tenantPolicy,omitempty"`
	LegacyAccess  any                 `json:"legacyAccess,omitempty"`
	Mcp           *EntityMCPInput     `json:"mcp,omitempty"`
	Params        []string            `json:"params,omitempty"`
	Affects       []string            `json:"affects,omitempty"`
	AllowCascade  *bool               `json:"allowCascade,omitempty"`
}

type EntityMCP added in v0.1.13

type EntityMCP = configapp.EntityMCPItem

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type EntityMCPInput

type EntityMCPInput struct {
	DmlTools         *bool `json:"dmlTools,omitempty"`
	CustomTool       *bool `json:"customTool,omitempty"`
	TrustedProcedure *bool `json:"trustedProcedure,omitempty"`
}

type EntityVisibility

type EntityVisibility struct {
	Entity string `json:"entity"`
	// One result per action that applies to the entity kind.
	Actions []ActionVisibility `json:"actions"`
}

type ExecutionStatus added in v0.1.13

type ExecutionStatus struct {
	// IO slots every lane draws on.
	Io *SlotStatus `json:"io"`
	// The part of the IO slots the lanes other than serve hold together.
	Aux   *SlotStatus  `json:"aux"`
	Lanes []LaneStatus `json:"lanes"`
	// Background tasks running, by name.
	Tasks []TaskStatus `json:"tasks"`
}

type FieldInput

type FieldInput struct {
	Name        string  `json:"name"`
	Alias       *string `json:"alias,omitempty"`
	Description *string `json:"description,omitempty"`
	Mask        *string `json:"mask,omitempty"`
	Exclude     *bool   `json:"exclude,omitempty"`
}

type FieldReference added in v0.1.13

type FieldReference = configapp.FieldReference

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type Grant

type Grant = configapp.GrantItem

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type GrantInput

type GrantInput struct {
	Entity           string   `json:"entity"`
	Actions          []string `json:"actions"`
	FieldsRestricted *bool    `json:"fieldsRestricted,omitempty"`
	ReadFields       []string `json:"readFields,omitempty"`
	WriteFields      []string `json:"writeFields,omitempty"`
	Rows             any      `json:"rows,omitempty"`
}

type ImportColumn

type ImportColumn struct {
	Name        string `json:"name"`
	Type        string `json:"type"`
	Nullable    bool   `json:"nullable"`
	Description string `json:"description"`
	PrimaryKey  bool   `json:"primaryKey"`
}

type ImportForeignKey

type ImportForeignKey struct {
	Name       string   `json:"name"`
	Columns    []string `json:"columns"`
	RefSchema  string   `json:"refSchema"`
	RefTable   string   `json:"refTable"`
	RefColumns []string `json:"refColumns"`
	// Referential action that writes referencing rows (cascade, set_null, set_default); null when it only checks.
	OnDelete *string `json:"onDelete,omitempty"`
	OnUpdate *string `json:"onUpdate,omitempty"`
}

type ImportIndex added in v0.1.12

type ImportIndex struct {
	Name string `json:"name"`
	// The database's name for the index structure, lower-cased: for example
	// btree, hash, gin, gist, brin, spgist (PostgreSQL); btree, hash, fulltext,
	// spatial (MySQL, OceanBase).
	Method string `json:"method"`
	// Key parts in order: a column, a column prefix such as title(20), or an
	// expression as the database prints it; parts the database does not report
	// are left out (empty when it reports none).
	Parts   []string `json:"parts"`
	Unique  bool     `json:"unique"`
	Primary bool     `json:"primary"`
	// The predicate of a partial index; null for a full one.
	Where *string `json:"where,omitempty"`
}

type ImportKey

type ImportKey struct {
	Name    string   `json:"name"`
	Columns []string `json:"columns"`
	Primary bool     `json:"primary"`
	// Why the key cannot identify a row (partial, expression, prefix, nullable); null when it can.
	Reason *string `json:"reason,omitempty"`
}

type ImportStatus

type ImportStatus string
const (
	// No configured entity reads this table.
	ImportStatusNew ImportStatus = "NEW"
	// An entity of the same datasource already reads this table.
	ImportStatusConfigured ImportStatus = "CONFIGURED"
)

func (ImportStatus) IsValid

func (e ImportStatus) IsValid() bool

func (ImportStatus) MarshalGQL

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

func (ImportStatus) MarshalJSON

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

func (ImportStatus) String

func (e ImportStatus) String() string

func (*ImportStatus) UnmarshalGQL

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

func (*ImportStatus) UnmarshalJSON

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

type ImportTable

type ImportTable struct {
	Schema      string       `json:"schema"`
	Table       string       `json:"table"`
	Description string       `json:"description"`
	Status      ImportStatus `json:"status"`
	// The configured entity name when status is CONFIGURED.
	ConfiguredAs *string        `json:"configuredAs,omitempty"`
	Columns      []ImportColumn `json:"columns"`
	// The primary key and unique keys, including those that cannot identify a row.
	Keys []ImportKey `json:"keys"`
	// Every index, in the database's own terms; the unique ones are also keys.
	Indexes     []ImportIndex      `json:"indexes"`
	ForeignKeys []ImportForeignKey `json:"foreignKeys"`
	// Triggers or rules: a write may change other tables.
	SideEffects bool `json:"sideEffects"`
	// A zero-permission entity proposal; add it to a draft to configure it.
	Candidate *configapp.EntityItem `json:"candidate"`
}

type LaneStatus added in v0.1.13

type LaneStatus struct {
	// serve, admin, scan or background.
	Name          string `json:"name"`
	MaxConcurrent int    `json:"maxConcurrent"`
	MaxQueue      int    `json:"maxQueue"`
	Inflight      int    `json:"inflight"`
	Queued        int    `json:"queued"`
	// Work turned away since the process started.
	Rejected int `json:"rejected"`
	// Work run since the process started.
	Completed int `json:"completed"`
}

type McpToken added in v0.1.13

type McpToken = configapp.McpToken

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type McpTokenInput added in v0.1.13

type McpTokenInput = configapp.McpTokenInput

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type McpTokenSecret added in v0.1.13

type McpTokenSecret = configapp.McpTokenSecret

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type Mutation

type Mutation struct {
}

type MutationResolver

type MutationResolver interface {
	StartSchemaScan(ctx context.Context, datasource string, schemas []string) (*configapp.ScanJob, error)
	CancelSchemaScan(ctx context.Context, id string) (*configapp.ScanJob, error)
	Publish(ctx context.Context, input PublishInput) (*Revision, error)
	Rollback(ctx context.Context, input RollbackInput) (*Revision, error)
	DiscardDraft(ctx context.Context, id string) (*Revision, error)
	GenerateUserToken(ctx context.Context) (*UserToken, error)
	CreateAdminAccount(ctx context.Context, input AdminAccountInput) (*AdminAccount, error)
	UpdateAdminAccount(ctx context.Context, input AdminAccountUpdate) (*AdminAccount, error)
	SetAdminPassword(ctx context.Context, input SetAdminPasswordInput) (*AdminAccount, error)
	EditWorkspace(ctx context.Context, input configapp.WorkspaceEditInput) (*configapp.Workspace, error)
	ApplyPlan(ctx context.Context, input ApplyPlanInput) (*configapp.AppliedPlan, error)
	UpdateWorkspace(ctx context.Context, to string) (*configapp.Workspace, error)
	ResetWorkspace(ctx context.Context, to string) (*configapp.Workspace, error)
	MergeDraft(ctx context.Context, id string) (*configapp.Workspace, error)
	ResolveConflict(ctx context.Context, id string, theirs bool) (*configapp.Workspace, error)
	CheckpointWorkspace(ctx context.Context, comment *string) (*Revision, error)
	CommitWorkspace(ctx context.Context, input configapp.CommitInput) (*Revision, error)
	SavePlanTemplate(ctx context.Context, input configapp.PlanTemplateInput) (*configapp.PlanTemplate, error)
	DeletePlanTemplate(ctx context.Context, name string) (bool, error)
	SetPendingState(ctx context.Context, input configapp.PendingStateInput) (*configapp.PendingState, error)
	CreateMcpToken(ctx context.Context, input configapp.McpTokenInput) (*configapp.McpTokenSecret, error)
	RevokeMcpToken(ctx context.Context, id string) (bool, error)
	StartScanBatch(ctx context.Context, input configapp.ScanBatchInput) (*configapp.ScanBatch, error)
	CancelScanBatch(ctx context.Context, id string) (*configapp.ScanBatch, error)
	RetryScanBatch(ctx context.Context, id string) (*configapp.ScanBatch, error)
}

type PendingPlan added in v0.1.13

type PendingPlan = configapp.PendingPlan

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type PendingState added in v0.1.13

type PendingState = configapp.PendingState

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type PendingStateInput added in v0.1.13

type PendingStateInput = configapp.PendingStateInput

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type PendingTable added in v0.1.13

type PendingTable = configapp.PendingTable

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type PendingWork added in v0.1.13

type PendingWork = configapp.PendingWork

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type PlanChange added in v0.1.13

type PlanChange = configapp.PlanChange

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type PlanException added in v0.1.13

type PlanException = configapp.PlanException

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type PlanObjects added in v0.1.13

type PlanObjects = configapp.PlanObjects

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type PlanPreview added in v0.1.13

type PlanPreview struct {
	// Identifies the plan with what it was evaluated against (base revision,
	// workspace and scans); an agent applies a plan only while it still evaluates to it.
	PlanID string                `json:"planId"`
	Report *configapp.PlanReport `json:"report"`
	// Entities added or changed, whole.
	Entities []configapp.EntityItem `json:"entities"`
	// IDs of the entities added.
	Added []string `json:"added"`
	// Roles and users added or changed, whole.
	Roles []configapp.RoleItem `json:"roles"`
	Users []configapp.UserItem `json:"users"`
	// The draft with the plan applied, as validate checks it.
	Validation *configapp.Validation `json:"validation"`
}

type PlanPreviewInput added in v0.1.13

type PlanPreviewInput struct {
	Plan any `json:"plan"`
	// Report every new table a grant covers (exception review, to confirm), as
	// reviewing a recurring template's proposal needs.
	Review *bool `json:"review,omitempty"`
}

type PlanReport added in v0.1.13

type PlanReport = configapp.PlanReport

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type PlanTemplate added in v0.1.13

type PlanTemplate = configapp.PlanTemplate

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type PlanTemplateInput added in v0.1.13

type PlanTemplateInput = configapp.PlanTemplateInput

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type Privilege

type Privilege string
const (
	PrivilegeGranted Privilege = "GRANTED"
	PrivilegeDenied  Privilege = "DENIED"
	PrivilegeUnknown Privilege = "UNKNOWN"
)

func (Privilege) IsValid

func (e Privilege) IsValid() bool

func (Privilege) MarshalGQL

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

func (Privilege) MarshalJSON

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

func (Privilege) String

func (e Privilege) String() string

func (*Privilege) UnmarshalGQL

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

func (*Privilege) UnmarshalJSON

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

type PublishInput

type PublishInput struct {
	// The draft to publish.
	ID              string `json:"id"`
	RestartRequired *bool  `json:"restartRequired,omitempty"`
	// The published revision the caller based its work on; when another revision
	// was published since, publish fails with extensions.code CONFLICT.
	ExpectedPublished *string `json:"expectedPublished,omitempty"`
}

type Query

type Query struct {
}

type QueryResolver

type QueryResolver interface {
	Me(ctx context.Context) (*AdminAccount, error)
	ServerStatus(ctx context.Context) (*ServerStatus, error)
	ConfigSchema(ctx context.Context) (any, error)
	Published(ctx context.Context) (*Revision, error)
	Revision(ctx context.Context, id string) (*Revision, error)
	Revisions(ctx context.Context, limit *int) ([]Revision, error)
	SchemaList(ctx context.Context, datasource string, refresh *bool) (*configapp.SchemaList, error)
	SchemaTables(ctx context.Context, datasource string, schemas []string) (*SchemaImport, error)
	SchemaScan(ctx context.Context, id string) (*configapp.ScanJob, error)
	TableComments(ctx context.Context, tables []TableRef) ([]*TableComments, error)
	Validate(ctx context.Context, revision *string) (*configapp.Validation, error)
	Capabilities(ctx context.Context) ([]EntityCapability, error)
	Diff(ctx context.Context, from string, to *string) (string, error)
	Simulate(ctx context.Context, input SimulationInput) (*configapp.Simulation, error)
	Visibility(ctx context.Context, input VisibilityInput) ([]EntityVisibility, error)
	AdminAccounts(ctx context.Context) ([]AdminAccount, error)
	Catalog(ctx context.Context, input CatalogInput) (*configapp.CatalogPage, error)
	CatalogRefs(ctx context.Context, filter configapp.CatalogFilter) ([]string, error)
	CatalogTable(ctx context.Context, ref string) (*ImportTable, error)
	CatalogLinks(ctx context.Context, ref string) (*configapp.CatalogLinks, error)
	PlanScope(ctx context.Context, scope any) (*configapp.ScopeStats, error)
	PreviewPlan(ctx context.Context, input PlanPreviewInput) (*PlanPreview, error)
	PlanTemplates(ctx context.Context) ([]configapp.PlanTemplate, error)
	PlanTemplateVersions(ctx context.Context, name string) ([]configapp.PlanTemplate, error)
	Pending(ctx context.Context) (*configapp.PendingWork, error)
	PendingLog(ctx context.Context, key string) ([]configapp.PendingState, error)
	Workspace(ctx context.Context) (*configapp.Workspace, error)
	WorkspaceLog(ctx context.Context, limit *int) ([]configapp.WorkspaceLogEntry, error)
	FieldReferences(ctx context.Context, entity string) ([]configapp.FieldReference, error)
	Drafts(ctx context.Context) ([]DraftRevision, error)
	McpTokens(ctx context.Context) ([]configapp.McpToken, error)
	ScanBatches(ctx context.Context, datasource string) ([]configapp.ScanBatch, error)
}

type Relationship

type Relationship = configapp.RelationshipItem

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type RelationshipInput

type RelationshipInput struct {
	Name        string `json:"name"`
	Target      string `json:"target"`
	Cardinality string `json:"cardinality"`
	JoinOn      any    `json:"joinOn"`
}

type Resolver

type Resolver struct {
	App      *configapp.Service
	Accounts accounts.Service
	// Status reports the serving process; nil reports nothing applied.
	Status func() RuntimeState
}

Resolver is the root resolver. It holds no per-request state: the configuration service holds the business rules and the resolvers adapt GraphQL to it.

func (*Resolver) Mutation

func (r *Resolver) Mutation() MutationResolver

Mutation returns MutationResolver implementation.

func (*Resolver) Query

func (r *Resolver) Query() QueryResolver

Query returns QueryResolver implementation.

func (*Resolver) Revision

func (r *Resolver) Revision() RevisionResolver

Revision returns RevisionResolver implementation.

type ResolverRoot

type ResolverRoot interface {
	Mutation() MutationResolver
	Query() QueryResolver
	Revision() RevisionResolver
}

type Revision

type Revision struct {
	ID          string
	Parent      *string
	State       RevisionState
	ContentHash string
	Author      string
	Comment     string
	CreatedAt   time.Time
	PublishedAt *time.Time
	// contains filtered or unexported fields
}

Revision is the GraphQL Revision. The payload stays private: config and yaml are resolved from it only when a query selects them.

type RevisionResolver

type RevisionResolver interface {
	Config(ctx context.Context, obj *Revision) (*Configuration, error)
	Sections(ctx context.Context, obj *Revision) (any, error)
	Yaml(ctx context.Context, obj *Revision) (string, error)
}

type RevisionState

type RevisionState string
const (
	RevisionStateDraft      RevisionState = "DRAFT"
	RevisionStatePublished  RevisionState = "PUBLISHED"
	RevisionStateSuperseded RevisionState = "SUPERSEDED"
	RevisionStateRolledBack RevisionState = "ROLLED_BACK"
	// A draft an administrator decided not to publish.
	RevisionStateDiscarded RevisionState = "DISCARDED"
)

func (RevisionState) IsValid

func (e RevisionState) IsValid() bool

func (RevisionState) MarshalGQL

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

func (RevisionState) MarshalJSON

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

func (RevisionState) String

func (e RevisionState) String() string

func (*RevisionState) UnmarshalGQL

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

func (*RevisionState) UnmarshalJSON

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

type Role

type Role = configapp.RoleItem

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type RoleInput

type RoleInput struct {
	Name        string       `json:"name"`
	Description *string      `json:"description,omitempty"`
	Grants      []GrantInput `json:"grants,omitempty"`
}

type RollbackInput

type RollbackInput struct {
	// Revision to restore; default: the newest earlier published content.
	To              *string `json:"to,omitempty"`
	RestartRequired *bool   `json:"restartRequired,omitempty"`
	Comment         *string `json:"comment,omitempty"`
}

type RuntimeState

type RuntimeState struct {
	// Applied is the store revision being served; 0 when unknown.
	Applied  int64
	Watching bool
	// Unapplied is a published revision not applied; nil when none.
	Unapplied *bootstrap.StaleState
	// Execution is a snapshot of the execution bus; nil when unknown.
	Execution *bus.Stats
}

RuntimeState is what the serving process reports about itself.

type ScanBatch added in v0.1.13

type ScanBatch = configapp.ScanBatch

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type ScanBatchInput added in v0.1.13

type ScanBatchInput = configapp.ScanBatchInput

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type ScanBatchItem added in v0.1.13

type ScanBatchItem = configapp.ScanBatchItem

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type ScanJob added in v0.1.12

type ScanJob = configapp.ScanJob

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type SchemaImport

type SchemaImport struct {
	Datasource string `json:"datasource"`
	// The schema where entities without a schema read (unqualified names
	// resolve); null when the database cannot report it.
	DefaultSchema *string       `json:"defaultSchema,omitempty"`
	Tables        []ImportTable `json:"tables"`
	// Identifies the database the datasource reads (its driver and read
	// connection); results of another source are stale.
	Source string `json:"source"`
}

type SchemaInfo added in v0.1.12

type SchemaInfo = configapp.SchemaInfo

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type SchemaList added in v0.1.12

type SchemaList = configapp.SchemaList

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type ScopeCondition added in v0.1.13

type ScopeCondition = configapp.ScopeCondition

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type ScopeStats added in v0.1.13

type ScopeStats = configapp.ScopeStats

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type ServerStatus

type ServerStatus struct {
	// Revision this process serves; null when it does not track the store.
	AppliedRevision *string `json:"appliedRevision,omitempty"`
	// Whether the process applies newly published revisions (--watch).
	Watching bool `json:"watching"`
	// A published revision this process has not applied.
	Unapplied *UnappliedRevision `json:"unapplied,omitempty"`
	// What the process runs on its execution bus; null when unknown.
	Execution *ExecutionStatus `json:"execution,omitempty"`
}

type SetAdminPasswordInput

type SetAdminPasswordInput struct {
	Username string `json:"username"`
	Password string `json:"password"`
}

type Simulation

type Simulation = configapp.Simulation

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type SimulationInput

type SimulationInput struct {
	// Default: the signed-in administrator's workspace.
	Revision *string `json:"revision,omitempty"`
	// A configured user name, or role:<name> to evaluate a role.
	User   string `json:"user"`
	Entity string `json:"entity"`
	Action string `json:"action"`
	// Requested fields; empty means the default projection.
	Fields []string `json:"fields,omitempty"`
	// Extra subject attributes; configured user attributes win.
	Subject any `json:"subject,omitempty"`
}

type SlotStatus added in v0.1.13

type SlotStatus struct {
	Size    int `json:"size"`
	Used    int `json:"used"`
	Waiting int `json:"waiting"`
}

type TableComments

type TableComments struct {
	Description string          `json:"description"`
	Columns     []ColumnComment `json:"columns"`
}
type TableLink = configapp.TableLink

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type TableRef

type TableRef struct {
	Datasource string  `json:"datasource"`
	Schema     *string `json:"schema,omitempty"`
	// Physical table name (entity source).
	Table string `json:"table"`
}

type TaskStatus added in v0.1.13

type TaskStatus struct {
	Name    string `json:"name"`
	Running int    `json:"running"`
}

type UnappliedRevision added in v0.1.13

type UnappliedRevision struct {
	ID string `json:"id"`
	// True when only a restart applies it; otherwise building it failed.
	RestartRequired bool   `json:"restartRequired"`
	Error           string `json:"error"`
}

type UnscannedSchemas added in v0.1.13

type UnscannedSchemas = configapp.UnscannedSchemas

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type User

type User = configapp.UserItem

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type UserInput

type UserInput struct {
	Name        string       `json:"name"`
	Description *string      `json:"description,omitempty"`
	Roles       []string     `json:"roles,omitempty"`
	Grants      []GrantInput `json:"grants,omitempty"`
	Subject     any          `json:"subject,omitempty"`
	Disabled    *bool        `json:"disabled,omitempty"`
	TokenHash   *string      `json:"tokenHash,omitempty"`
}

type UserToken

type UserToken struct {
	Token     string `json:"token"`
	TokenHash string `json:"tokenHash"`
}

type Validation

type Validation = configapp.Validation

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type VisibilityInput

type VisibilityInput struct {
	// Default: the signed-in administrator's workspace.
	Revision *string `json:"revision,omitempty"`
	// A configured user name, or role:<name> to evaluate a role.
	User    string `json:"user"`
	Subject any    `json:"subject,omitempty"`
}

type Workspace added in v0.1.13

type Workspace = configapp.Workspace

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type WorkspaceConflict added in v0.1.13

type WorkspaceConflict = configapp.WorkspaceConflict

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type WorkspaceEditInput added in v0.1.13

type WorkspaceEditInput = configapp.WorkspaceEditInput

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type WorkspaceItemInput added in v0.1.13

type WorkspaceItemInput = configapp.WorkspaceItemInput

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type WorkspaceLogEntry added in v0.1.13

type WorkspaceLogEntry = configapp.WorkspaceLogEntry

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type WorkspaceNote added in v0.1.13

type WorkspaceNote = configapp.WorkspaceNote

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

type WorkspaceRef added in v0.1.13

type WorkspaceRef = configapp.WorkspaceRef

The configuration service's results and inputs, under the names of their GraphQL types (gqlgen binds those names in this package).

Jump to

Keyboard shortcuts

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