component

package
v0.4.1 Latest Latest
Warning

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

Go to latest
Published: Jul 29, 2019 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// WidthQuarter is a quarter width section.
	WidthQuarter int = 6
	// WidthHalf is a half width section.
	WidthHalf int = 12
	// WidthFull is a full width section.
	WidthFull int = 24
)
View Source
const (
	FieldTypeCheckBox = "checkbox"
	FieldTypeRadio    = "radio"
	FieldTypeText     = "text"
	FieldTypePassword = "password"
	FieldTypeNumber   = "number"
	FieldTypeSelect   = "select"
	FieldTypeTextarea = "textarea"
	FieldTypeHidden   = "hidden"
)
View Source
const (
	// EdgeTypeImplicit is an implicit edge
	EdgeTypeImplicit = "implicit"
	// EdgeTypeExplicit is an explicit edge
	EdgeTypeExplicit = "explicit"
)

Variables

This section is empty.

Functions

func AssertEqual

func AssertEqual(t *testing.T, expected, got Component)

AssertEqual asserts two components are equal.

Types

type Action

type Action struct {
	Name  string `json:"name"`
	Title string `json:"title"`
	Form  Form   `json:"form"`
}

Action is an action that can be performed on a component.

type AdjList

type AdjList map[string][]Edge

AdjList is an adjacency list - it maps nodes to edges

func (AdjList) Add

func (al AdjList) Add(src string, edge Edge)

Add adds a directed edge to the adjacency list

type Alert

type Alert struct {
	Type    AlertType `json:"type"`
	Message string    `json:"message"`
}

Alert is an alert. It can be used in components which support alerts.

type AlertType

type AlertType string
const (
	// AlertTypeError is an error alert.
	AlertTypeError AlertType = "error"
	// AlertTypeWarning is a warning alert.
	AlertTypeWarning AlertType = "warning"
	// AlertTypeInfo is an info alert.
	AlertTypeInfo AlertType = "info"
	// AlertTypeSuccess is a success alert.
	AlertTypeSuccess AlertType = "success"
)

type Annotations

type Annotations struct {
	Config AnnotationsConfig `json:"config"`
	// contains filtered or unexported fields
}

Annotations is a component representing key/value based annotations

func NewAnnotations

func NewAnnotations(annotations map[string]string) *Annotations

NewAnnotations creates a annotations component

func (*Annotations) GetMetadata

func (t *Annotations) GetMetadata() Metadata

GetMetadata accesses the components metadata. Implements Component.

func (*Annotations) IsEmpty

func (t *Annotations) IsEmpty() bool

IsEmpty specifies whether the component is considered empty. Implements Component.

func (*Annotations) LessThan

func (b *Annotations) LessThan(i interface{}) bool

LessThan returns false.

func (*Annotations) MarshalJSON

func (t *Annotations) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*Annotations) SetAccessor

func (b *Annotations) SetAccessor(accessor string)

SetAccessor sets the accessor for the object.

func (*Annotations) String

func (b *Annotations) String() string

String returns an empty string. If a component wants to provide a value it can override this function.

type AnnotationsConfig

type AnnotationsConfig struct {
	Annotations map[string]string `json:"annotations"`
}

AnnotationsConfig is the contents of Annotations

type Card

type Card struct {
	Config CardConfig `json:"config"`
	// contains filtered or unexported fields
}

Card is a card component.

func NewCard

func NewCard(title string) *Card

NewCard creates a card component.

func (*Card) AddAction

func (c *Card) AddAction(action Action)

AddAction adds an action to a card.

func (*Card) GetMetadata

func (b *Card) GetMetadata() Metadata

GetMetadata returns the component's metadata.

func (*Card) IsEmpty

func (b *Card) IsEmpty() bool

IsEmpty returns false by default. Let the components that wrap base determine if they are empty or not if they wish.

func (*Card) LessThan

func (b *Card) LessThan(i interface{}) bool

LessThan returns false.

func (*Card) MarshalJSON

func (c *Card) MarshalJSON() ([]byte, error)

MarshalJSON marshals a card to JSON.

func (*Card) SetAccessor

func (b *Card) SetAccessor(accessor string)

SetAccessor sets the accessor for the object.

func (*Card) SetAlert

func (c *Card) SetAlert(alert Alert)

SetAlert sets an alert for a card.

func (*Card) SetBody

func (c *Card) SetBody(body Component)

SetBody sets the body for the card.

func (*Card) String

func (b *Card) String() string

String returns an empty string. If a component wants to provide a value it can override this function.

type CardConfig

type CardConfig struct {
	// Body is the body of the card.
	Body Component `json:"body"`
	// Actions are actions for the card.
	Actions []Action `json:"actions"`
	// Alert is the alert to show for the card.
	Alert *Alert `json:"alert,omitempty"`
}

CardConfig is configuration for the card component.

func (*CardConfig) UnmarshalJSON

func (c *CardConfig) UnmarshalJSON(data []byte) error

UnmarshalJSON unmarshals a card config from JSON.

type CardList

type CardList struct {
	Config CardListConfig `json:"config"`
	// contains filtered or unexported fields
}

CardList is a component which comprises of a list of cards.

func NewCardList

func NewCardList(title string) *CardList

NewCardList creates a card list component.

func (*CardList) AddCard

func (c *CardList) AddCard(card Card)

AddCard adds a card to the list.

func (*CardList) GetMetadata

func (b *CardList) GetMetadata() Metadata

GetMetadata returns the component's metadata.

func (*CardList) IsEmpty

func (b *CardList) IsEmpty() bool

IsEmpty returns false by default. Let the components that wrap base determine if they are empty or not if they wish.

func (*CardList) LessThan

func (b *CardList) LessThan(i interface{}) bool

LessThan returns false.

func (*CardList) MarshalJSON

func (c *CardList) MarshalJSON() ([]byte, error)

MarshalJSON marshals a card list to JSON.

func (*CardList) SetAccessor

func (b *CardList) SetAccessor(accessor string)

SetAccessor sets the accessor for the object.

func (*CardList) String

func (b *CardList) String() string

String returns an empty string. If a component wants to provide a value it can override this function.

type CardListConfig

type CardListConfig struct {
	// Cards is a slice of cads.
	Cards []Card `json:"cards"`
}

CardListConfig is configuration for a card list.

func (*CardListConfig) UnmarshalJSON

func (c *CardListConfig) UnmarshalJSON(data []byte) error

UnmarshalJSON unmarshals a card list config from JSON.

type Component

type Component interface {
	json.Marshaler

	// GetMetadata returns metadata for the component.
	GetMetadata() Metadata
	// SetAccessor sets the accessfor the component.
	SetAccessor(string)
	// IsEmpty returns true if the component is "empty".
	IsEmpty() bool
	// String returns a string representation of the component.
	String() string
	// LessThan returns true if the components value is less than the other value.
	LessThan(other interface{}) bool
}

Component is a common interface for the data representation of visual components as rendered by the UI.

type ContainerDef

type ContainerDef struct {
	Name  string `json:"name"`
	Image string `json:"image"`
}

ContainerDef defines an individual docker container

type Containers

type Containers struct {
	Config ContainersConfig `json:"config"`
	// contains filtered or unexported fields
}

Containers is a component wrapping multiple docker container definitions

func NewContainers

func NewContainers() *Containers

NewContainers creates a containers component

func (*Containers) Add

func (t *Containers) Add(name string, image string)

Add adds additional items to the tail of the containers.

func (*Containers) GetMetadata

func (t *Containers) GetMetadata() Metadata

GetMetadata accesses the components metadata. Implements Component.

func (*Containers) IsEmpty

func (b *Containers) IsEmpty() bool

IsEmpty returns false by default. Let the components that wrap base determine if they are empty or not if they wish.

func (*Containers) LessThan

func (b *Containers) LessThan(i interface{}) bool

LessThan returns false.

func (*Containers) MarshalJSON

func (t *Containers) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler

func (*Containers) SetAccessor

func (b *Containers) SetAccessor(accessor string)

SetAccessor sets the accessor for the object.

func (*Containers) String

func (b *Containers) String() string

String returns an empty string. If a component wants to provide a value it can override this function.

type ContainersConfig

type ContainersConfig struct {
	Containers []ContainerDef `json:"containers"`
}

ContainersConfig is the contents of a Containers wrapper

type ContentResponse

type ContentResponse struct {
	Title      []TitleComponent `json:"title,omitempty"`
	Components []Component      `json:"viewComponents"`
	IconName   string           `json:"iconName,omitempty"`
	IconSource string           `json:"iconSource,omitempty"`
}

ContentResponse is a a content response. It contains a title and one or more components.

func NewContentResponse

func NewContentResponse(title []TitleComponent) *ContentResponse

NewContentResponse creates an instance of ContentResponse.

func (*ContentResponse) Add

func (c *ContentResponse) Add(components ...Component)

Add adds zero or more components to a content response.

func (*ContentResponse) UnmarshalJSON

func (c *ContentResponse) UnmarshalJSON(data []byte) error

UnmarshalJSON unmarshals a content response from JSON.

type Edge

type Edge struct {
	Node string   `json:"node"`
	Type EdgeType `json:"edge"`
}

Edge represents a directed edge in a graph

type EdgeType

type EdgeType string

EdgeType represents whether a relationship between resources is implicit or explicit

type Error

type Error struct {
	Config ErrorConfig `json:"config"`
	// contains filtered or unexported fields
}

Error is a component for freetext

func NewError

func NewError(title []TitleComponent, err error) *Error

NewError creates a text component

func (*Error) GetMetadata

func (b *Error) GetMetadata() Metadata

GetMetadata returns the component's metadata.

func (*Error) IsEmpty

func (b *Error) IsEmpty() bool

IsEmpty returns false by default. Let the components that wrap base determine if they are empty or not if they wish.

func (*Error) LessThan

func (t *Error) LessThan(i interface{}) bool

LessThan returns true if this component's value is less than the argument supplied.

func (*Error) MarshalJSON

func (t *Error) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler

func (*Error) SetAccessor

func (b *Error) SetAccessor(accessor string)

SetAccessor sets the accessor for the object.

func (*Error) String

func (t *Error) String() string

String returns the text content of the component.

func (*Error) SupportsTitle

func (t *Error) SupportsTitle()

SupportsTitle denotes this is a TextComponent.

type ErrorConfig

type ErrorConfig struct {
	Data string `json:"data,omitempty"`
}

ErrorConfig is the contents of Text

type ExpressionSelector

type ExpressionSelector struct {
	Config ExpressionSelectorConfig `json:"config"`
	// contains filtered or unexported fields
}

ExpressionSelector is a component for a single expression within a selector

func NewExpressionSelector

func NewExpressionSelector(k string, o Operator, values []string) *ExpressionSelector

NewExpressionSelector creates a expressionSelector component

func (*ExpressionSelector) GetMetadata

func (t *ExpressionSelector) GetMetadata() Metadata

GetMetadata accesses the components metadata. Implements Component.

func (*ExpressionSelector) IsEmpty

func (b *ExpressionSelector) IsEmpty() bool

IsEmpty returns false by default. Let the components that wrap base determine if they are empty or not if they wish.

func (*ExpressionSelector) IsSelector

func (t *ExpressionSelector) IsSelector()

IsSelector marks the component as selector flavor. Implements Selector.

func (*ExpressionSelector) LessThan

func (b *ExpressionSelector) LessThan(i interface{}) bool

LessThan returns false.

func (*ExpressionSelector) MarshalJSON

func (t *ExpressionSelector) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler

func (*ExpressionSelector) Name

func (t *ExpressionSelector) Name() string

Name is the name of the ExpressionSelector.

func (*ExpressionSelector) SetAccessor

func (b *ExpressionSelector) SetAccessor(accessor string)

SetAccessor sets the accessor for the object.

func (*ExpressionSelector) String

func (b *ExpressionSelector) String() string

String returns an empty string. If a component wants to provide a value it can override this function.

type ExpressionSelectorConfig

type ExpressionSelectorConfig struct {
	Key      string   `json:"key"`
	Operator Operator `json:"operator"`
	Values   []string `json:"values"`
}

ExpressionSelectorConfig is the contents of ExpressionSelector

type FlexLayout

type FlexLayout struct {
	Config FlexLayoutConfig `json:"config,omitempty"`
	// contains filtered or unexported fields
}

FlexLayout is a flex layout view.

func NewFlexLayout

func NewFlexLayout(title string) *FlexLayout

NewFlexLayout creates an instance of FlexLayout.

func (*FlexLayout) AddSections

func (fl *FlexLayout) AddSections(sections ...FlexLayoutSection)

AddSections adds one or more sections to the flex layout.

func (*FlexLayout) GetMetadata

func (fl *FlexLayout) GetMetadata() Metadata

GetMetdata returns the metadata for the flex layout view.

func (*FlexLayout) IsEmpty

func (b *FlexLayout) IsEmpty() bool

IsEmpty returns false by default. Let the components that wrap base determine if they are empty or not if they wish.

func (*FlexLayout) LessThan

func (b *FlexLayout) LessThan(i interface{}) bool

LessThan returns false.

func (*FlexLayout) MarshalJSON

func (fl *FlexLayout) MarshalJSON() ([]byte, error)

MarshalJSON marshals the flex layout to JSON.

func (*FlexLayout) SetAccessor

func (b *FlexLayout) SetAccessor(accessor string)

SetAccessor sets the accessor for the object.

func (*FlexLayout) String

func (b *FlexLayout) String() string

String returns an empty string. If a component wants to provide a value it can override this function.

type FlexLayoutConfig

type FlexLayoutConfig struct {
	Sections []FlexLayoutSection `json:"sections,omitempty"`
}

FlexLayoutConfig is configuration for the flex layout view.

type FlexLayoutItem

type FlexLayoutItem struct {
	Width int       `json:"width,omitempty"`
	View  Component `json:"view,omitempty"`
}

FlexLayoutItem is an item in a flex layout.

func (*FlexLayoutItem) UnmarshalJSON

func (fli *FlexLayoutItem) UnmarshalJSON(data []byte) error

type FlexLayoutSection

type FlexLayoutSection []FlexLayoutItem

FlexLayoutSection is a slice of items group together.

type Form

type Form struct {
	Fields []FormField `json:"fields"`
}

func (*Form) MarshalJSON

func (f *Form) MarshalJSON() ([]byte, error)

func (*Form) UnmarshalJSON

func (f *Form) UnmarshalJSON(data []byte) error

type FormField

type FormField interface {
	Label() string
	Name() string
	Type() string
	Configuration() map[string]interface{}
	Value() interface{}

	json.Unmarshaler
	json.Marshaler
}

type FormFieldCheckBox

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

func NewFormFieldCheckBox

func NewFormFieldCheckBox(label, name string, choices []InputChoice) *FormFieldCheckBox

func (*FormFieldCheckBox) Configuration

func (ff *FormFieldCheckBox) Configuration() map[string]interface{}

func (FormFieldCheckBox) Label

func (bff FormFieldCheckBox) Label() string

func (*FormFieldCheckBox) MarshalJSON

func (ff *FormFieldCheckBox) MarshalJSON() ([]byte, error)

func (FormFieldCheckBox) Name

func (bff FormFieldCheckBox) Name() string

func (FormFieldCheckBox) Type

func (bff FormFieldCheckBox) Type() string

func (*FormFieldCheckBox) UnmarshalJSON

func (ff *FormFieldCheckBox) UnmarshalJSON(data []byte) error

func (*FormFieldCheckBox) Value

func (ff *FormFieldCheckBox) Value() interface{}

type FormFieldHidden

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

func NewFormFieldHidden

func NewFormFieldHidden(name, value string) *FormFieldHidden

func (*FormFieldHidden) Configuration

func (ff *FormFieldHidden) Configuration() map[string]interface{}

func (FormFieldHidden) Label

func (bff FormFieldHidden) Label() string

func (*FormFieldHidden) MarshalJSON

func (ff *FormFieldHidden) MarshalJSON() ([]byte, error)

func (FormFieldHidden) Name

func (bff FormFieldHidden) Name() string

func (FormFieldHidden) Type

func (bff FormFieldHidden) Type() string

func (*FormFieldHidden) UnmarshalJSON

func (ff *FormFieldHidden) UnmarshalJSON(data []byte) error

func (*FormFieldHidden) Value

func (ff *FormFieldHidden) Value() interface{}

type FormFieldNumber

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

func NewFormFieldNumber

func NewFormFieldNumber(label, name, value string) *FormFieldNumber

func (*FormFieldNumber) Configuration

func (ff *FormFieldNumber) Configuration() map[string]interface{}

func (FormFieldNumber) Label

func (bff FormFieldNumber) Label() string

func (*FormFieldNumber) MarshalJSON

func (ff *FormFieldNumber) MarshalJSON() ([]byte, error)

func (FormFieldNumber) Name

func (bff FormFieldNumber) Name() string

func (FormFieldNumber) Type

func (bff FormFieldNumber) Type() string

func (*FormFieldNumber) UnmarshalJSON

func (ff *FormFieldNumber) UnmarshalJSON(data []byte) error

func (*FormFieldNumber) Value

func (ff *FormFieldNumber) Value() interface{}

type FormFieldPassword

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

func NewFormFieldPassword

func NewFormFieldPassword(label, name, value string) *FormFieldPassword

func (*FormFieldPassword) Configuration

func (ff *FormFieldPassword) Configuration() map[string]interface{}

func (FormFieldPassword) Label

func (bff FormFieldPassword) Label() string

func (*FormFieldPassword) MarshalJSON

func (ff *FormFieldPassword) MarshalJSON() ([]byte, error)

func (FormFieldPassword) Name

func (bff FormFieldPassword) Name() string

func (FormFieldPassword) Type

func (bff FormFieldPassword) Type() string

func (*FormFieldPassword) UnmarshalJSON

func (ff *FormFieldPassword) UnmarshalJSON(data []byte) error

func (*FormFieldPassword) Value

func (ff *FormFieldPassword) Value() interface{}

type FormFieldRadio

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

func NewFormFieldRadio

func NewFormFieldRadio(label, name string, choices []InputChoice) *FormFieldRadio

func (*FormFieldRadio) Configuration

func (ff *FormFieldRadio) Configuration() map[string]interface{}

func (FormFieldRadio) Label

func (bff FormFieldRadio) Label() string

func (*FormFieldRadio) MarshalJSON

func (ff *FormFieldRadio) MarshalJSON() ([]byte, error)

func (FormFieldRadio) Name

func (bff FormFieldRadio) Name() string

func (FormFieldRadio) Type

func (bff FormFieldRadio) Type() string

func (*FormFieldRadio) UnmarshalJSON

func (ff *FormFieldRadio) UnmarshalJSON(data []byte) error

func (*FormFieldRadio) Value

func (ff *FormFieldRadio) Value() interface{}

type FormFieldSelect

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

func NewFormFieldSelect

func NewFormFieldSelect(label, name string, choices []InputChoice, multiple bool) *FormFieldSelect

func (*FormFieldSelect) Configuration

func (ff *FormFieldSelect) Configuration() map[string]interface{}

func (FormFieldSelect) Label

func (bff FormFieldSelect) Label() string

func (*FormFieldSelect) MarshalJSON

func (ff *FormFieldSelect) MarshalJSON() ([]byte, error)

func (FormFieldSelect) Name

func (bff FormFieldSelect) Name() string

func (FormFieldSelect) Type

func (bff FormFieldSelect) Type() string

func (*FormFieldSelect) UnmarshalJSON

func (ff *FormFieldSelect) UnmarshalJSON(data []byte) error

func (*FormFieldSelect) Value

func (ff *FormFieldSelect) Value() interface{}

type FormFieldText

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

func NewFormFieldText

func NewFormFieldText(label, name, value string) *FormFieldText

func (*FormFieldText) Configuration

func (ff *FormFieldText) Configuration() map[string]interface{}

func (FormFieldText) Label

func (bff FormFieldText) Label() string

func (*FormFieldText) MarshalJSON

func (ff *FormFieldText) MarshalJSON() ([]byte, error)

func (FormFieldText) Name

func (bff FormFieldText) Name() string

func (FormFieldText) Type

func (bff FormFieldText) Type() string

func (*FormFieldText) UnmarshalJSON

func (ff *FormFieldText) UnmarshalJSON(data []byte) error

func (*FormFieldText) Value

func (ff *FormFieldText) Value() interface{}

type FormFieldTextarea

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

func NewFormFieldTextarea

func NewFormFieldTextarea(label, name, value string) *FormFieldTextarea

func (*FormFieldTextarea) Configuration

func (ff *FormFieldTextarea) Configuration() map[string]interface{}

func (FormFieldTextarea) Label

func (bff FormFieldTextarea) Label() string

func (*FormFieldTextarea) MarshalJSON

func (ff *FormFieldTextarea) MarshalJSON() ([]byte, error)

func (FormFieldTextarea) Name

func (bff FormFieldTextarea) Name() string

func (FormFieldTextarea) Type

func (bff FormFieldTextarea) Type() string

func (*FormFieldTextarea) UnmarshalJSON

func (ff *FormFieldTextarea) UnmarshalJSON(data []byte) error

func (*FormFieldTextarea) Value

func (ff *FormFieldTextarea) Value() interface{}

type Graphviz

type Graphviz struct {
	Config GraphvizConfig `json:"config"`
	// contains filtered or unexported fields
}

Graphviz is a component for displaying graphviz diagrams.

func NewGraphviz

func NewGraphviz(dot string) *Graphviz

func (*Graphviz) GetMetadata

func (b *Graphviz) GetMetadata() Metadata

GetMetadata returns the component's metadata.

func (*Graphviz) IsEmpty

func (b *Graphviz) IsEmpty() bool

IsEmpty returns false by default. Let the components that wrap base determine if they are empty or not if they wish.

func (*Graphviz) LessThan

func (b *Graphviz) LessThan(i interface{}) bool

LessThan returns false.

func (*Graphviz) MarshalJSON

func (g *Graphviz) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler

func (*Graphviz) SetAccessor

func (b *Graphviz) SetAccessor(accessor string)

SetAccessor sets the accessor for the object.

func (*Graphviz) String

func (b *Graphviz) String() string

String returns an empty string. If a component wants to provide a value it can override this function.

type GraphvizConfig

type GraphvizConfig struct {
	DOT string `json:"dot,omitempty"`
}

GraphvizConfig is the contents of Graphviz.

type InputChoice

type InputChoice struct {
	Label   string `json:"label"`
	Value   string `json:"value"`
	Checked bool   `json:"checked"`
}

type LabelSelector

type LabelSelector struct {
	Config LabelSelectorConfig `json:"config"`
	// contains filtered or unexported fields
}

LabelSelector is a component for a single label within a selector

func NewLabelSelector

func NewLabelSelector(k, v string) *LabelSelector

NewLabelSelector creates a labelSelector component

func (*LabelSelector) GetMetadata

func (t *LabelSelector) GetMetadata() Metadata

GetMetadata accesses the components metadata. Implements Component.

func (*LabelSelector) IsEmpty

func (b *LabelSelector) IsEmpty() bool

IsEmpty returns false by default. Let the components that wrap base determine if they are empty or not if they wish.

func (*LabelSelector) IsSelector

func (t *LabelSelector) IsSelector()

IsSelector marks the component as selector flavor. Implements Selector.

func (*LabelSelector) LessThan

func (b *LabelSelector) LessThan(i interface{}) bool

LessThan returns false.

func (*LabelSelector) MarshalJSON

func (t *LabelSelector) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler

func (*LabelSelector) Name

func (t *LabelSelector) Name() string

Name is the name of the LabelSelector.

func (*LabelSelector) SetAccessor

func (b *LabelSelector) SetAccessor(accessor string)

SetAccessor sets the accessor for the object.

func (*LabelSelector) String

func (b *LabelSelector) String() string

String returns an empty string. If a component wants to provide a value it can override this function.

type LabelSelectorConfig

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

LabelSelectorConfig is the contents of LabelSelector

type Labels

type Labels struct {
	Config LabelsConfig `json:"config"`
	// contains filtered or unexported fields
}

Labels is a component representing key/value based labels

func NewLabels

func NewLabels(labels map[string]string) *Labels

NewLabels creates a labels component

func (*Labels) GetMetadata

func (t *Labels) GetMetadata() Metadata

GetMetadata accesses the components metadata. Implements Component.

func (*Labels) IsEmpty

func (b *Labels) IsEmpty() bool

IsEmpty returns false by default. Let the components that wrap base determine if they are empty or not if they wish.

func (*Labels) LessThan

func (b *Labels) LessThan(i interface{}) bool

LessThan returns false.

func (*Labels) MarshalJSON

func (t *Labels) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler. It will filter label keys specified in `labelsFilteredKeys`.

func (*Labels) SetAccessor

func (b *Labels) SetAccessor(accessor string)

SetAccessor sets the accessor for the object.

func (*Labels) String

func (b *Labels) String() string

String returns an empty string. If a component wants to provide a value it can override this function.

type LabelsConfig

type LabelsConfig struct {
	Labels map[string]string `json:"labels"`
}

LabelsConfig is the contents of Labels

type Link struct {
	Config LinkConfig `json:"config"`
	// contains filtered or unexported fields
}

Link is a text component that contains a link.

func NewLink(title, s, ref string) *Link

NewLink creates a link component

func (*Link) GetMetadata

func (t *Link) GetMetadata() Metadata

GetMetadata accesses the components metadata. Implements Component.

func (*Link) IsEmpty

func (b *Link) IsEmpty() bool

IsEmpty returns false by default. Let the components that wrap base determine if they are empty or not if they wish.

func (*Link) LessThan

func (t *Link) LessThan(i interface{}) bool

LessThan returns true if this component's value is less than the argument supplied.

func (*Link) MarshalJSON

func (t *Link) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler

func (*Link) Ref

func (t *Link) Ref() string

Ref returns the link's ref.

func (*Link) SetAccessor

func (b *Link) SetAccessor(accessor string)

SetAccessor sets the accessor for the object.

func (*Link) String

func (t *Link) String() string

String returns the link's text.

func (*Link) SupportsTitle

func (t *Link) SupportsTitle()

SupportsTitle designates this is a TextComponent.

func (*Link) Text

func (t *Link) Text() string

Text returns the link's text.

type LinkConfig

type LinkConfig struct {
	Text string `json:"value"`
	Ref  string `json:"ref"`
}

LinkConfig is the contents of Link

type List

type List struct {
	Config ListConfig `json:"config"`
	// contains filtered or unexported fields
}

List contains other Components

func NewList

func NewList(title string, items []Component) *List

NewList creates a list component

func (*List) Add

func (t *List) Add(items ...Component)

Add adds additional items to the tail of the list.

func (*List) GetMetadata

func (b *List) GetMetadata() Metadata

GetMetadata returns the component's metadata.

func (*List) IsEmpty

func (b *List) IsEmpty() bool

IsEmpty returns false by default. Let the components that wrap base determine if they are empty or not if they wish.

func (*List) LessThan

func (b *List) LessThan(i interface{}) bool

LessThan returns false.

func (*List) MarshalJSON

func (t *List) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler

func (*List) SetAccessor

func (b *List) SetAccessor(accessor string)

SetAccessor sets the accessor for the object.

func (*List) SetIcon

func (t *List) SetIcon(name, source string)

SetIcon sets the icon for a list.

func (*List) String

func (b *List) String() string

String returns an empty string. If a component wants to provide a value it can override this function.

type ListConfig

type ListConfig struct {
	IconName   string      `json:"iconName"`
	IconSource string      `json:"iconSource"`
	Items      []Component `json:"items"`
}

ListConfig is the contents of a List

func (*ListConfig) UnmarshalJSON

func (t *ListConfig) UnmarshalJSON(data []byte) error

type Loading

type Loading struct {
	Config LoadingConfig `json:"config"`
	// contains filtered or unexported fields
}

Loading is a component for a spinner

func NewLoading

func NewLoading(title []TitleComponent, message string) *Loading

NewLoading creates a loading component

func (*Loading) GetMetadata

func (b *Loading) GetMetadata() Metadata

GetMetadata returns the component's metadata.

func (*Loading) IsEmpty

func (b *Loading) IsEmpty() bool

IsEmpty returns false by default. Let the components that wrap base determine if they are empty or not if they wish.

func (*Loading) LessThan

func (b *Loading) LessThan(i interface{}) bool

LessThan returns false.

func (*Loading) MarshalJSON

func (t *Loading) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler

func (*Loading) SetAccessor

func (b *Loading) SetAccessor(accessor string)

SetAccessor sets the accessor for the object.

func (*Loading) String

func (t *Loading) String() string

String returns the text content of the component.

func (*Loading) SupportsTitle

func (t *Loading) SupportsTitle()

SupportsTitle denotes this is a LoadingComponent.

type LoadingConfig

type LoadingConfig struct {
	Text string `json:"value"`
}

LoadingConfig is the contents of Loading

type Logs

type Logs struct {
	Config LogsConfig `json:"config,omitempty"`
	// contains filtered or unexported fields
}

func NewLogs

func NewLogs(namespace, name string, containers []string) *Logs

func (*Logs) GetMetadata

func (l *Logs) GetMetadata() Metadata

GetMetadata accesses the components metadata. Implements Component.

func (*Logs) IsEmpty

func (b *Logs) IsEmpty() bool

IsEmpty returns false by default. Let the components that wrap base determine if they are empty or not if they wish.

func (*Logs) LessThan

func (b *Logs) LessThan(i interface{}) bool

LessThan returns false.

func (*Logs) MarshalJSON

func (l *Logs) MarshalJSON() ([]byte, error)

func (*Logs) SetAccessor

func (b *Logs) SetAccessor(accessor string)

SetAccessor sets the accessor for the object.

func (*Logs) String

func (b *Logs) String() string

String returns an empty string. If a component wants to provide a value it can override this function.

type LogsConfig

type LogsConfig struct {
	Namespace  string   `json:"namespace,omitempty"`
	Name       string   `json:"name,omitempty"`
	Containers []string `json:"containers,omitempty"`
}

type Metadata

type Metadata struct {
	Type     string           `json:"type"`
	Title    []TitleComponent `json:"title,omitempty"`
	Accessor string           `json:"accessor,omitempty"`
}

Metadata collects common fields describing Components

func (*Metadata) SetTitleText

func (m *Metadata) SetTitleText(parts ...string)

SetTitleText sets the title using text components.

func (*Metadata) UnmarshalJSON

func (m *Metadata) UnmarshalJSON(data []byte) error

type Node

type Node struct {
	Name       string      `json:"name,omitempty"`
	APIVersion string      `json:"apiVersion,omitempty"`
	Kind       string      `json:"kind,omitempty"`
	Status     NodeStatus  `json:"status,omitempty"`
	Details    []Component `json:"details,omitempty"`
	Path       *Link       `json:"path,omitempty"`
}

Node is a node in a graph, representing a kubernetes object IsNetwork is a hint to the layout engine.

type NodeStatus

type NodeStatus string
const (
	// NodeStatusOK means a node is in a health state
	NodeStatusOK NodeStatus = "ok"
	// NodeStatusWarning means ...
	NodeStatusWarning NodeStatus = "warning"
	// NodeStatusError means ...
	NodeStatusError NodeStatus = "error"
)

type Nodes

type Nodes map[string]Node

Nodes is a set of graph nodes

type Operator

type Operator string

Operator represents a key's relationship to a set of values. Valid operators are In, NotIn, Exists and DoesNotExist.

const (
	// OperatorIn means a key value is in a set of possible values
	OperatorIn Operator = "In"
	// OperatorNotIn means a key value is not in a set of exclusionary values
	OperatorNotIn Operator = "NotIn"
	// OperatorExists means a key exists on the selected resource
	OperatorExists Operator = "Exists"
	// OperatorDoesNotExist means a key does not exists on the selected resource
	OperatorDoesNotExist Operator = "DoesNotExist"
)

func MatchOperator

func MatchOperator(s string) (Operator, error)

MatchOperator matches an operator.

type PodStatus

type PodStatus struct {
	Config PodStatusConfig `json:"config"`
	// contains filtered or unexported fields
}

PodStatus represents the status for a group of pods.

func NewPodStatus

func NewPodStatus() *PodStatus

NewPodStatus creates a PodStatus.

func (*PodStatus) AddSummary

func (ps *PodStatus) AddSummary(name string, details []Component, status NodeStatus)

AddSummary adds summary for a pod.

func (*PodStatus) GetMetadata

func (b *PodStatus) GetMetadata() Metadata

GetMetadata returns the component's metadata.

func (*PodStatus) IsEmpty

func (b *PodStatus) IsEmpty() bool

IsEmpty returns false by default. Let the components that wrap base determine if they are empty or not if they wish.

func (*PodStatus) LessThan

func (b *PodStatus) LessThan(i interface{}) bool

LessThan returns false.

func (*PodStatus) MarshalJSON

func (ps *PodStatus) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler.

func (*PodStatus) SetAccessor

func (b *PodStatus) SetAccessor(accessor string)

SetAccessor sets the accessor for the object.

func (*PodStatus) Status

func (ps *PodStatus) Status() NodeStatus

func (*PodStatus) String

func (b *PodStatus) String() string

String returns an empty string. If a component wants to provide a value it can override this function.

type PodStatusConfig

type PodStatusConfig struct {
	Pods map[string]PodSummary `json:"pods,omitempty"`
}

PodStatusConfig is config for PodStatus.

type PodSummary

type PodSummary struct {
	Details []Component `json:"details,omitempty"`
	Status  NodeStatus  `json:"status,omitempty"`
}

PodSummary is a status summary for a pod.

func (*PodSummary) UnmarshalJSON

func (podSummary *PodSummary) UnmarshalJSON(data []byte) error

type Port

type Port struct {
	Config PortConfig `json:"config"`
	// contains filtered or unexported fields
}

Port is a component for a port

func NewPort

func NewPort(namespace, apiVersion, kind, name string, port int, protocol string, pfs PortForwardState) *Port

NewPort creates a port component

func (*Port) GetMetadata

func (t *Port) GetMetadata() Metadata

GetMetadata accesses the components metadata. Implements Component.

func (*Port) IsEmpty

func (b *Port) IsEmpty() bool

IsEmpty returns false by default. Let the components that wrap base determine if they are empty or not if they wish.

func (*Port) LessThan

func (b *Port) LessThan(i interface{}) bool

LessThan returns false.

func (*Port) MarshalJSON

func (t *Port) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler

func (*Port) SetAccessor

func (b *Port) SetAccessor(accessor string)

SetAccessor sets the accessor for the object.

func (*Port) String

func (b *Port) String() string

String returns an empty string. If a component wants to provide a value it can override this function.

type PortConfig

type PortConfig struct {
	Namespace  string           `json:"namespace,omitempty"`
	APIVersion string           `json:"apiVersion,omitempty"`
	Kind       string           `json:"kind,omitempty"`
	Name       string           `json:"name,omitempty"`
	Port       int              `json:"port,omitempty"`
	Protocol   string           `json:"protocol,omitempty"`
	State      PortForwardState `json:"state,omitempty"`
}

PortConfig is the contents of Port

type PortForwardState

type PortForwardState struct {
	IsForwardable bool   `json:"isForwardable,omitempty"`
	IsForwarded   bool   `json:"isForwarded,omitempty"`
	Port          int    `json:"port,omitempty"`
	ID            string `json:"id,omitempty"`
}

type Ports

type Ports struct {
	Config PortsConfig `json:"config,omitempty"`
	// contains filtered or unexported fields
}

func NewPorts

func NewPorts(ports []Port) *Ports

func (*Ports) GetMetadata

func (t *Ports) GetMetadata() Metadata

func (*Ports) IsEmpty

func (b *Ports) IsEmpty() bool

IsEmpty returns false by default. Let the components that wrap base determine if they are empty or not if they wish.

func (*Ports) LessThan

func (b *Ports) LessThan(i interface{}) bool

LessThan returns false.

func (*Ports) MarshalJSON

func (t *Ports) MarshalJSON() ([]byte, error)

func (*Ports) SetAccessor

func (b *Ports) SetAccessor(accessor string)

SetAccessor sets the accessor for the object.

func (*Ports) String

func (b *Ports) String() string

String returns an empty string. If a component wants to provide a value it can override this function.

type PortsConfig

type PortsConfig struct {
	Ports []Port `json:"ports,omitempty"`
}

type Quadrant

type Quadrant struct {
	Config QuadrantConfig `json:"config"`
	// contains filtered or unexported fields
}

func NewQuadrant

func NewQuadrant(title string) *Quadrant

NewQuadrant creates a quadrant component

func (*Quadrant) GetMetadata

func (t *Quadrant) GetMetadata() Metadata

GetMetadata accesses the components metadata. Implements Component.

func (*Quadrant) IsEmpty

func (b *Quadrant) IsEmpty() bool

IsEmpty returns false by default. Let the components that wrap base determine if they are empty or not if they wish.

func (*Quadrant) LessThan

func (b *Quadrant) LessThan(i interface{}) bool

LessThan returns false.

func (*Quadrant) MarshalJSON

func (t *Quadrant) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler

func (*Quadrant) Set

func (t *Quadrant) Set(pos QuadrantPosition, label, value string) error

Set adds additional panels to the quadrant

func (*Quadrant) SetAccessor

func (b *Quadrant) SetAccessor(accessor string)

SetAccessor sets the accessor for the object.

func (*Quadrant) String

func (b *Quadrant) String() string

String returns an empty string. If a component wants to provide a value it can override this function.

type QuadrantConfig

type QuadrantConfig struct {
	NW QuadrantValue `json:"nw,omitempty"`
	NE QuadrantValue `json:"ne,omitempty"`
	SE QuadrantValue `json:"se,omitempty"`
	SW QuadrantValue `json:"sw,omitempty"`
}

QuadrantConfig is the contents of a Quadrant

type QuadrantPosition

type QuadrantPosition int

QuadrantPosition denotes a position within a quadrant

const (
	// QuadNW denotes the north-west position within a quadrant
	QuadNW QuadrantPosition = iota
	// QuadNE denotes the north-east position within a quadrant
	QuadNE
	// QuadSE denotes the south-east position within a quadrant
	QuadSE
	// QuadSW denotes the south-west position within a quadrant
	QuadSW
)

type QuadrantValue

type QuadrantValue struct {
	Value string `json:"value,omitempty"`
	Label string `json:"label,omitempty"`
}

type ResourceViewer

type ResourceViewer struct {
	Config ResourceViewerConfig `json:"config,omitempty"`
	// contains filtered or unexported fields
}

ResourceView is a resource viewer component.

func NewResourceViewer

func NewResourceViewer(title string) *ResourceViewer

NewResourceViewer creates a resource viewer component.

func (*ResourceViewer) AddEdge

func (rv *ResourceViewer) AddEdge(nodeID, childID string, edgeType EdgeType) error

func (*ResourceViewer) AddNode

func (rv *ResourceViewer) AddNode(id string, node Node)

func (*ResourceViewer) GetMetadata

func (rv *ResourceViewer) GetMetadata() Metadata

func (*ResourceViewer) IsEmpty

func (b *ResourceViewer) IsEmpty() bool

IsEmpty returns false by default. Let the components that wrap base determine if they are empty or not if they wish.

func (*ResourceViewer) LessThan

func (b *ResourceViewer) LessThan(i interface{}) bool

LessThan returns false.

func (*ResourceViewer) MarshalJSON

func (rv *ResourceViewer) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler

func (*ResourceViewer) Select

func (rv *ResourceViewer) Select(id string)

func (*ResourceViewer) SetAccessor

func (b *ResourceViewer) SetAccessor(accessor string)

SetAccessor sets the accessor for the object.

func (*ResourceViewer) String

func (b *ResourceViewer) String() string

String returns an empty string. If a component wants to provide a value it can override this function.

func (*ResourceViewer) Validate

func (rv *ResourceViewer) Validate() error

type ResourceViewerConfig

type ResourceViewerConfig struct {
	Edges    AdjList `json:"edges,omitempty"`
	Nodes    Nodes   `json:"nodes,omitempty"`
	Selected string  `json:"selected,omitempty"`
}

ResourceViewerConfig is configuration for a resource viewer.

type Selector

type Selector interface {
	IsSelector()
	Name() string
}

Selector identifies a Component as being a selector flavor.

type Selectors

type Selectors struct {
	Config SelectorsConfig `json:"config"`
	// contains filtered or unexported fields
}

Selectors contains other Components

func NewSelectors

func NewSelectors(selectors []Selector) *Selectors

NewSelectors creates a selectors component

func (*Selectors) Add

func (t *Selectors) Add(selectors ...Selector)

Add adds additional items to the tail of the selectors.

func (*Selectors) GetMetadata

func (t *Selectors) GetMetadata() Metadata

GetMetadata accesses the components metadata. Implements Component.

func (*Selectors) IsEmpty

func (b *Selectors) IsEmpty() bool

IsEmpty returns false by default. Let the components that wrap base determine if they are empty or not if they wish.

func (*Selectors) LessThan

func (b *Selectors) LessThan(i interface{}) bool

LessThan returns false.

func (*Selectors) MarshalJSON

func (t *Selectors) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler

func (*Selectors) SetAccessor

func (b *Selectors) SetAccessor(accessor string)

SetAccessor sets the accessor for the object.

func (*Selectors) String

func (b *Selectors) String() string

String returns an empty string. If a component wants to provide a value it can override this function.

type SelectorsConfig

type SelectorsConfig struct {
	Selectors []Selector `json:"selectors"`
}

SelectorsConfig is the contents of a Selectors

func (*SelectorsConfig) UnmarshalJSON

func (t *SelectorsConfig) UnmarshalJSON(data []byte) error

type Summary

type Summary struct {
	Config SummaryConfig `json:"config"`
	// contains filtered or unexported fields
}

Summary contains other Components

func NewSummary

func NewSummary(title string, sections ...SummarySection) *Summary

NewSummary creates a summary component

func (*Summary) Add

func (t *Summary) Add(sections ...SummarySection)

Add adds additional items to the tail of the summary.

func (*Summary) AddAction

func (t *Summary) AddAction(action Action)

func (*Summary) GetMetadata

func (t *Summary) GetMetadata() Metadata

GetMetadata accesses the components metadata. Implements Component.

func (*Summary) IsEmpty

func (b *Summary) IsEmpty() bool

IsEmpty returns false by default. Let the components that wrap base determine if they are empty or not if they wish.

func (*Summary) LessThan

func (b *Summary) LessThan(i interface{}) bool

LessThan returns false.

func (*Summary) MarshalJSON

func (t *Summary) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler

func (*Summary) Sections

func (t *Summary) Sections() []SummarySection

Sections returns sections for the summary.

func (*Summary) SetAccessor

func (b *Summary) SetAccessor(accessor string)

SetAccessor sets the accessor for the object.

func (*Summary) String

func (b *Summary) String() string

String returns an empty string. If a component wants to provide a value it can override this function.

type SummaryConfig

type SummaryConfig struct {
	Sections []SummarySection `json:"sections"`
	Actions  []Action         `json:"actions,omitempty"`
}

SummaryConfig is the contents of a Summary

type SummarySection

type SummarySection struct {
	Header  string    `json:"header"`
	Content Component `json:"content"`
}

SummarySection is a section within a summary

func (*SummarySection) UnmarshalJSON

func (t *SummarySection) UnmarshalJSON(data []byte) error

type SummarySections

type SummarySections []SummarySection

SummarySections is a slice of summary sections

func (*SummarySections) Add

func (s *SummarySections) Add(header string, view Component)

func (*SummarySections) AddText

func (s *SummarySections) AddText(header string, text string)

AddText adds a section with a single text component

type Tab

type Tab struct {
	Name     string
	Contents FlexLayout
}

Tab represents a tab. A tab is a flex layout with a name.

type Table

type Table struct {
	Config TableConfig `json:"config"`
	// contains filtered or unexported fields
}

Table contains other Components

func NewTable

func NewTable(title string, cols []TableCol) *Table

NewTable creates a table component

func NewTableWithRows

func NewTableWithRows(title string, cols []TableCol, rows []TableRow) *Table

NewTableWithRows creates a table with rows.

func (*Table) Add

func (t *Table) Add(rows ...TableRow)

Add adds additional items to the tail of the table. Use this function to add rows in a concurrency safe fashion.

func (*Table) AddColumn

func (t *Table) AddColumn(name string)

AddColumn adds a column to the table.

func (*Table) Columns

func (t *Table) Columns() []TableCol

Columns returns the table columns.

func (*Table) GetMetadata

func (b *Table) GetMetadata() Metadata

GetMetadata returns the component's metadata.

func (*Table) IsEmpty

func (t *Table) IsEmpty() bool

IsEmpty returns true if there is one or more rows.

func (*Table) LessThan

func (b *Table) LessThan(i interface{}) bool

LessThan returns false.

func (*Table) MarshalJSON

func (t *Table) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler

func (*Table) Rows

func (t *Table) Rows() []TableRow

Rows returns the table rows.

func (*Table) SetAccessor

func (b *Table) SetAccessor(accessor string)

SetAccessor sets the accessor for the object.

func (*Table) Sort

func (t *Table) Sort(name string, reverse bool)

func (*Table) String

func (b *Table) String() string

String returns an empty string. If a component wants to provide a value it can override this function.

type TableCol

type TableCol struct {
	Name     string `json:"name"`
	Accessor string `json:"accessor"`
}

TableCol describes a column from a table. Accessor is the key this column will appear as in table rows, and must be unique within a table.

func NewTableCols

func NewTableCols(keys ...string) []TableCol

NewTableCols returns a slice of table columns, each with name/accessor set according to the provided keys arguments.

type TableConfig

type TableConfig struct {
	Columns      []TableCol `json:"columns"`
	Rows         []TableRow `json:"rows"`
	EmptyContent string     `json:"emptyContent"`
}

TableConfig is the contents of a Table

type TableRow

type TableRow map[string]Component

TableRow is a row in table. Each key->value represents a particular column in the row.

func (*TableRow) UnmarshalJSON

func (t *TableRow) UnmarshalJSON(data []byte) error

type Text

type Text struct {
	Config TextConfig `json:"config"`
	// contains filtered or unexported fields
}

Text is a component for text

func NewMarkdownText

func NewMarkdownText(s string) *Text

NewMarkdownText creates a text component styled with markdown.

func NewText

func NewText(s string) *Text

NewText creates a text component

func (*Text) DisableMarkdown

func (t *Text) DisableMarkdown()

DisableMarkdown disables markdown for this text component.

func (*Text) EnableMarkdown

func (t *Text) EnableMarkdown()

EnableMarkdown enables markdown for this text component.

func (*Text) GetMetadata

func (b *Text) GetMetadata() Metadata

GetMetadata returns the component's metadata.

func (*Text) IsEmpty

func (b *Text) IsEmpty() bool

IsEmpty returns false by default. Let the components that wrap base determine if they are empty or not if they wish.

func (*Text) IsMarkdown

func (t *Text) IsMarkdown() bool

IsMarkdown returns if this component is markdown.

func (*Text) LessThan

func (t *Text) LessThan(i interface{}) bool

LessThan returns true if this component's value is less than the argument supplied.

func (*Text) MarshalJSON

func (t *Text) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler

func (*Text) SetAccessor

func (b *Text) SetAccessor(accessor string)

SetAccessor sets the accessor for the object.

func (*Text) String

func (t *Text) String() string

String returns the text content of the component.

func (*Text) SupportsTitle

func (t *Text) SupportsTitle()

SupportsTitle denotes this is a TextComponent.

type TextConfig

type TextConfig struct {
	Text       string `json:"value"`
	IsMarkdown bool   `json:"isMarkdown,omitempty"`
}

TextConfig is the contents of Text

type Timestamp

type Timestamp struct {
	Config TimestampConfig `json:"config"`
	// contains filtered or unexported fields
}

Timestamp is a component representing a point in time

func NewTimestamp

func NewTimestamp(t time.Time) *Timestamp

NewTimestamp creates a timestamp component

func (*Timestamp) GetMetadata

func (b *Timestamp) GetMetadata() Metadata

GetMetadata returns the component's metadata.

func (*Timestamp) IsEmpty

func (b *Timestamp) IsEmpty() bool

IsEmpty returns false by default. Let the components that wrap base determine if they are empty or not if they wish.

func (*Timestamp) LessThan

func (t *Timestamp) LessThan(i interface{}) bool

LessThan returns true if this component's value is less than the argument supplied.

func (*Timestamp) MarshalJSON

func (t *Timestamp) MarshalJSON() ([]byte, error)

MarshalJSON implements json.Marshaler

func (*Timestamp) SetAccessor

func (b *Timestamp) SetAccessor(accessor string)

SetAccessor sets the accessor for the object.

func (*Timestamp) String

func (b *Timestamp) String() string

String returns an empty string. If a component wants to provide a value it can override this function.

type TimestampConfig

type TimestampConfig struct {
	Timestamp int64 `json:"timestamp"`
}

TimestampConfig is the contents of Timestamp

type TitleComponent

type TitleComponent interface {
	Component

	SupportsTitle()
}

TitleComponent is a view component that can be used for a title.

func Title

func Title(components ...TitleComponent) []TitleComponent

Title is a convenience method for creating a title.

func TitleFromString

func TitleFromString(s string) []TitleComponent

TitleFromString is a convenience methods for create a title from a string.

type TypedObject

type TypedObject struct {
	Config   json.RawMessage `json:"config,omitempty"`
	Metadata Metadata        `json:"metadata,omitempty"`
}

func (*TypedObject) ToComponent

func (to *TypedObject) ToComponent() (Component, error)

type YAML

type YAML struct {
	Config YAMLConfig `json:"config,omitempty"`
	// contains filtered or unexported fields
}

func NewYAML

func NewYAML(title []TitleComponent, data string) *YAML

func (*YAML) Data

func (y *YAML) Data(object runtime.Object) error

func (*YAML) GetMetadata

func (y *YAML) GetMetadata() Metadata

GetMetadata returns the component's metadata.

func (*YAML) IsEmpty

func (b *YAML) IsEmpty() bool

IsEmpty returns false by default. Let the components that wrap base determine if they are empty or not if they wish.

func (*YAML) LessThan

func (b *YAML) LessThan(i interface{}) bool

LessThan returns false.

func (*YAML) MarshalJSON

func (y *YAML) MarshalJSON() ([]byte, error)

func (*YAML) SetAccessor

func (b *YAML) SetAccessor(accessor string)

SetAccessor sets the accessor for the object.

func (*YAML) String

func (b *YAML) String() string

String returns an empty string. If a component wants to provide a value it can override this function.

type YAMLConfig

type YAMLConfig struct {
	Data string `json:"data,omitempty"`
}

Jump to

Keyboard shortcuts

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