entity

package
v0.5.10 Latest Latest
Warning

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

Go to latest
Published: May 5, 2024 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Overview

Package entity provides entities for business logic.

Package entity provides entities for business logic.

Package entity provides entities for business logic.

Package entity provides entities for business logic.

Package entity provides entities for business logic.

Package entity provides entities for business logic.

Package entity provides entities for business logic.

Package entity provides entities for business logic.

Package entity provides entities for business logic.

Package entity provides entities for business logic.

Package entity provides entities for business logic.

Index

Constants

View Source
const (
	// AuthTypeNone do not use authentication.
	AuthTypeNone = "none"
	// AuthTypeBasic basic authentication.
	AuthTypeBasic = "basic"
	// AuthTypeBearer bearer token authentication.
	AuthTypeBearer = "bearer"
	// AuthTypeJWT jwt token authentication.
	AuthTypeJWT = "jwt"
	// AuthTypeGCE Google Compute Engine authentication.
	AuthTypeGCE = "google"
)
View Source
const (
	ReflectionServicePrefix = "grpc.reflection.v1"
	MethodTypeUnary         = "u"
	MethodTypeClientStream  = "cs"
	MethodTypeServerStream  = "ss"
	MethodTypeBidiStream    = "css"
)

constants for gRPC client.

View Source
const (
	// MsgCreatingPortForward message creating port forwarding.
	MsgCreatingPortForward = "Creating port forwarding..."
	// MsgConnectingServer message connecting to server.
	MsgConnectingServer = "Connecting to server..."
	// MsgServerReflectionInfo message getting information about services.
	MsgServerReflectionInfo = "Getting information about publicly-accessible gRPC services..."
)
View Source
const (
	ProtoTypeEnum    = "TYPE_ENUM"
	ProtoTypeMessage = "TYPE_MESSAGE"
)

protobuf types.

View Source
const (
	TypeString   = "string"
	TypeBytes    = "bytes"
	TypeInt32    = "int32"
	TypeInt64    = "int64"
	TypeUInt32   = "uint32"
	TypeUInt64   = "uint64"
	TypeSInt32   = "sint32"
	TypeSInt64   = "sint64"
	TypeFixed32  = "fixed32"
	TypeFixed64  = "fixed64"
	TypeSFixed32 = "sfixed32"
	TypeSFixed64 = "sfixed64"
	TypeDouble   = "double"
	TypeFloat    = "float"
	TypeBool     = "bool"
	TypeEnum     = "enum"
	TypeMessage  = "message"
)

protobuf data types.

Variables

View Source
var (
	// ErrK8SPodNotFound error - pod not found.
	ErrK8SPodNotFound = errors.New("pod not found")
	// ErrNotConnected error - server not connected.
	ErrNotConnected = errors.New("not connected")
)
View Source
var DefaultSettings = &Settings{
	WindowWidth:           1024,
	WindowHeight:          768,
	WindowX:               structs.Ref(50),
	WindowY:               structs.Ref(50),
	SingleInstance:        structs.Ref(true),
	ConnectTimeout:        structs.Ref(10),
	RequestTimeout:        structs.Ref(30),
	K8SRequestTimeout:     structs.Ref(30),
	NonBlockingConnection: structs.Ref(true),
	SortMethodsByName:     structs.Ref(true),
	MaxLoopDepth:          structs.Ref(10),
	EmitDefaults:          structs.Ref(false),
	CheckUpdates:          structs.Ref(true),
}

DefaultSettings settings by default.

View Source
var (
	// ErrWorkspaceNotExists error workspace not exists.
	ErrWorkspaceNotExists = errors.New("workspace not exists")
)

Functions

func GetBool

func GetBool(f *Field, val interface{}) (interface{}, error)

GetBool transforms to bool.

func GetBreadcrumb

func GetBreadcrumb(w []*Workspace, id int64) []string

GetBreadcrumb returns breadcrumb.

func GetBytes

func GetBytes(f *Field, val interface{}) (interface{}, error)

GetBytes transforms to bytes.

func GetFloat32

func GetFloat32(f *Field, val interface{}) (interface{}, error)

GetFloat32 transforms to float32.

func GetFloat64

func GetFloat64(f *Field, val interface{}) (interface{}, error)

GetFloat64 transforms to float64.

func GetInt32

func GetInt32(f *Field, val interface{}) (interface{}, error)

GetInt32 transforms to int32.

func GetInt64

func GetInt64(f *Field, val interface{}) (interface{}, error)

GetInt64 transforms to int64.

func GetString

func GetString(f *Field, val interface{}) (interface{}, error)

GetString transforms to string.

func GetUInt32

func GetUInt32(f *Field, val interface{}) (interface{}, error)

GetUInt32 transforms to uint32.

func GetUInt64

func GetUInt64(f *Field, val interface{}) (interface{}, error)

GetUInt64 transforms to uint64.

func IsDebug

func IsDebug() bool

IsDebug returns true if application runs on debug mode.

Types

type ApplicationConfig

type ApplicationConfig struct {
	Homepage        string `json:"homepage" default:"resources/index.html"`
	HomepageWin     string `json:"homepage_win" default:"../index.html"`
	IconsPath       string `json:"icons_path" default:"resources/icons"`
	AppIconLinux    string `json:"app_icon_linux" default:"app.png"`
	AppIconDarwin   string `json:"app_icon_darwin" default:"warthog.icns"`
	AppIconWindows  string `json:"app_icon_windows" default:"app.ico"`
	TrayIconLinux   string `json:"tray_icon_linux" default:"tray.png"`
	TrayIconDarwin  string `json:"tray_icon_darwin" default:"tray24.png"`
	TrayIconWindows string `json:"tray_icon_windows" default:"tray.ico"`
}

ApplicationConfig base application params.

type Auth added in v0.4.0

type Auth struct {
	Type         string                 `json:"type,omitempty"`
	Login        string                 `json:"login,omitempty"`
	Password     string                 `json:"password,omitempty"`
	Token        string                 `json:"token,omitempty"`
	Algorithm    string                 `json:"algorithm,omitempty"`
	Secret       string                 `json:"secret,omitempty"`
	PrivateKey   string                 `json:"private_key,omitempty"`
	SecretBase64 bool                   `json:"secret_base64,omitempty"`
	HeaderPrefix string                 `json:"header_prefix,omitempty"`
	Payload      map[string]interface{} `json:"payload,omitempty"`
	GoogleScopes []string               `json:"google_scopes,omitempty"`
	GoogleToken  string                 `json:"google_token,omitempty"`
}

Auth authentication data.

func (*Auth) Model added in v0.4.0

func (s *Auth) Model(auth map[string]interface{}) error

Model creates Auth from UI request.

type Config

type Config struct {
	Application *ApplicationConfig `json:"application"`
	Database    *DatabaseConfig    `json:"database"`
	Logger      *LoggerConfig      `json:"logger"`
	Runtime     *RuntimeConfig     `json:"runtime"`
}

Config application configuration.

type DatabaseConfig

type DatabaseConfig struct {
	DatasourceName string `json:"datasource_name" default:"warthog.db"`
	DriverName     string `json:"driver_name" default:"sqlite3"`
}

DatabaseConfig database settings.

type Enum

type Enum struct {
	ValueType string       `json:"value_type"`
	Values    []*EnumValue `json:"values"`
}

Enum protobuf enum.

type EnumValue

type EnumValue struct {
	Name   string `json:"name"`
	Number int32  `json:"number"`
}

EnumValue protobuf enum value.

type Error

type Error struct {
	Pos             ast.SourcePos `json:"pos"`
	Code            uint32        `json:"code"`
	CodeDescription string        `json:"code_description"`
	Message         string        `json:"message"`
}

Error UI error response.

func (Error) Error

func (e Error) Error() string

Error returns error string.

type Field

type Field struct {
	FQN        string                `json:"fqn"`
	ProtoFQN   string                `json:"proto_fqn"`
	Name       string                `json:"name"`
	Type       string                `json:"type"`
	ParentType string                `json:"parent_type"`
	Repeated   bool                  `json:"repeated"`
	Enum       *Enum                 `json:"enum,omitempty"`
	Map        *Map                  `json:"map,omitempty"`
	Message    *Message              `json:"message,omitempty"`
	OneOf      *OneOf                `json:"oneof,omitempty"`
	Descriptor *desc.FieldDescriptor `json:"-"`
}

Field protobuf field.

type FolderRequest

type FolderRequest struct {
	ID         int64           `json:"id"`
	ParentID   *int64          `json:"parent_id"`
	Title      string          `json:"title"`
	TypeFilter []WorkspaceType `json:"type_filter"`
}

FolderRequest read/create/update/delete folder request.

func (*FolderRequest) Model

func (r *FolderRequest) Model(folder map[string]interface{}) error

Model creates FolderRequest from UI request.

type FolderResponse

type FolderResponse struct {
	Folder *Workspace           `json:"folder"`
	Tree   []*WorkspaceTreeNode `json:"tree"`
}

FolderResponse read/create/update folder response.

type GCSAuth added in v0.5.0

type GCSAuth struct {
	// Enabled GCS authentication enabled.
	Enabled bool `json:"enabled"`
	// Project GKE project.
	Project string `json:"project"`
	// Location cluster location.
	Location string `json:"location"`
	// Cluster the name of the cluster.
	Cluster string `json:"cluster"`
}

GCSAuth GCS authentication request.

func (*GCSAuth) Model added in v0.5.0

func (a *GCSAuth) Model(auth map[string]interface{}) error

Model creates GCSAuth from UI request.

type GUICommand

type GUICommand string

GUICommand UI command.

const (
	CmdApplicationState    GUICommand = "application.state"
	CmdSettingsUpdate      GUICommand = "settings.update"
	CmdGetWorkspace        GUICommand = "workspace.get"
	CmdSortingWorkspace    GUICommand = "workspace.sorting"
	CmdDeleteWorkspace     GUICommand = "workspace.delete"
	CmdDuplicateWorkspace  GUICommand = "workspace.duplicate"
	CmdExpandWorkspace     GUICommand = "workspace.expand"
	CmdCreateServer        GUICommand = "server.create"
	CmdUpdateServer        GUICommand = "server.update"
	CmdUpdateServerRequest GUICommand = "server.update.request"
	CmdLoadServer          GUICommand = "server.load"
	CmdCreateFolder        GUICommand = "folder.create"
	CmdUpdateFolder        GUICommand = "folder.update"
	CmdDeleteFolder        GUICommand = "folder.delete"
	CmdUpdateQuery         GUICommand = "query.update"
	CmdRunQuery            GUICommand = "query.run"
	CmdCancelQuery         GUICommand = "query.cancel"
	CmdCloseStream         GUICommand = "query.close.stream"
	CmdQueryResponse       GUICommand = "query.response"
	CmdDevTools            GUICommand = "dev.tools.show"
	CmdMenuSettings        GUICommand = "menu.settings"
	CmdMenuAbout           GUICommand = "menu.about"
	CmdMessageInfo         GUICommand = "message.info"
	CmdMessageError        GUICommand = "message.error"
	CmdCheckUpdates        GUICommand = "check.updates"
)

UI events.

func (GUICommand) String

func (c GUICommand) String() string

String returns UI command string.

type GUIRequest

type GUIRequest struct {
	Cmd     GUICommand  `json:"name"`
	Payload interface{} `json:"payload"`
}

GUIRequest UI request.

type GUIResponse

type GUIResponse struct {
	Status  GUIResponseStatus `json:"status"`
	Error   Error             `json:"error,omitempty"`
	Payload interface{}       `json:"payload,omitempty"`
}

GUIResponse UI response.

func ErrorGUIResponse

func ErrorGUIResponse(err error, payload ...interface{}) *GUIResponse

ErrorGUIResponse returns UI error response.

type GUIResponseStatus

type GUIResponseStatus string

GUIResponseStatus response status.

const (
	GUIResponseStatusOK    GUIResponseStatus = "ok"
	GUIResponseStatusError GUIResponseStatus = "error"
)

UI response statuses.

type GithubRelease added in v0.5.10

type GithubRelease struct {
	HtmlUrl     string    `json:"html_url"`
	TagName     string    `json:"tag_name"`
	Name        string    `json:"name"`
	Draft       bool      `json:"draft"`
	Prerelease  bool      `json:"prerelease"`
	CreatedAt   time.Time `json:"created_at"`
	PublishedAt time.Time `json:"published_at"`
}

type Info added in v0.5.0

type Info struct {
	Message string `json:"message"`
}

Info UI info message.

type K8SClientConfig added in v0.5.0

type K8SClientConfig struct {
	// GCSAuth GCP authentication request.
	GCSAuth *GCSAuth `json:"auth"`
	// KubeConfigFile absolute path to the kubernetes config file.
	KubeConfigFile string `json:"config_file"`
	// BearerToken Bearer Token string.
	BearerToken string `json:"bearer_token"`
}

K8SClientConfig k8s client config.

func (*K8SClientConfig) Model added in v0.5.0

func (c *K8SClientConfig) Model(cfg map[string]interface{}) error

Model creates K8SClientConfig from UI request.

type K8SPortForward added in v0.5.0

type K8SPortForward struct {
	// Enabled k8s port forward.
	Enabled bool `json:"enabled"`
	// k8s client config.
	ClientConfig *K8SClientConfig `json:"client_config"`
	// Namespace is the pod namespace.
	Namespace string `json:"namespace"`
	// PodName is the pod name.
	PodName string `json:"pod_name"`
	// PodNameSelector is the pod name selector.
	PodNameSelector string `json:"pod_name_selector"`
	// LocalPort is the local port that will be selected to expose the PodPort.
	LocalPort uint16 `json:"local_port"`
	// PodPort is the target port for the pod.
	PodPort uint16 `json:"pod_port"`
	// ErrHandler error handler.
	ErrHandler func(err error) `json:"-"`
}

K8SPortForward k8s port forward request.

func (*K8SPortForward) Model added in v0.5.0

func (p *K8SPortForward) Model(req map[string]interface{}) error

Model creates K8SPortForward from UI request.

type LoadServerResponse

type LoadServerResponse struct {
	Server   *Workspace       `json:"server"`
	Services []*Service       `json:"services"`
	Query    *Workspace       `json:"query"`
	Warning  []*ProtobufError `json:"warning"`
}

LoadServerResponse server data, methods, and saved queries.

type LoggerConfig

type LoggerConfig struct {
	Level             string `json:"level" default:"debug"`
	TimeFieldFormat   string `json:"time_field_format" default:"2006-01-02T15:04:05Z07:00"`
	PrettyPrint       bool   `json:"pretty_print" default:"true"`
	DisableSampling   bool   `json:"disable_sampling" default:"false"`
	RedirectStdLogger bool   `json:"redirect_std_logger" default:"false"`
	ErrorStack        bool   `json:"error_stack" default:"false"`
	ShowCaller        bool   `json:"show_caller" default:"false"`
}

LoggerConfig logger settings.

type Map

type Map struct {
	KeyType         string                  `json:"key_type"`
	ValueType       string                  `json:"value_type"`
	ValueTypeFqn    string                  `json:"-"`
	ProtoValueType  string                  `json:"-"`
	ValueDescriptor *desc.MessageDescriptor `json:"-"`
	Fields          []*Field                `json:"fields,omitempty"`
}

Map protobuf map.

type Message

type Message struct {
	Name       string                  `json:"name"`
	Type       string                  `json:"type"`
	Fields     []*Field                `json:"fields,omitempty"`
	Descriptor *desc.MessageDescriptor `json:"-"`
}

Message protobuf message.

type Method

type Method struct {
	Name       string                 `json:"name"`
	Type       string                 `json:"type"`
	Input      []*Field               `json:"input,omitempty"`
	Descriptor *desc.MethodDescriptor `json:"-"`
}

Method gRPC method.

type OneOf

type OneOf struct {
	Fqn  string `json:"fqn"`
	Name string `json:"name"`
}

OneOf protobuf oneof.

type PortForwardControl added in v0.5.0

type PortForwardControl interface {
	Close()
	Output() *bytes.Buffer
	Error() *bytes.Buffer
}

type ProtobufError

type ProtobufError struct {
	Pos             ast.SourcePos `json:"pos"`
	Code            uint32        `json:"code"`
	CodeDescription string        `json:"code_description"`
	Warning         string        `json:"warning"`
	Err             error         `json:"err"`
}

ProtobufError protobuf parsing warning or error.

func (ProtobufError) Error

func (pe ProtobufError) Error() string

Error returns error string.

type Query

type Query struct {
	ServerID int64
	Service  string
	Method   string
	Data     map[string]interface{}
	Metadata []string
}

Query gRPC request.

func (*Query) Model

func (r *Query) Model(server map[string]interface{}) error

Model creates Query from UI request.

type QueryRequest

type QueryRequest struct {
	ID       int64  `json:"id"`
	ServerID int64  `json:"server_id"`
	Title    string `json:"title"`
	WorkspaceItemQuery
}

QueryRequest read/create/update/delete query.

func (*QueryRequest) Model

func (r *QueryRequest) Model(req map[string]interface{}) error

Model creates QueryRequest from UI request.

type QueryResponse

type QueryResponse struct {
	Time       string              `json:"time"`
	JsonString string              `json:"json_string"`
	SpentTime  string              `json:"spent_time"`
	Header     map[string][]string `json:"header"`
	Trailer    map[string][]string `json:"trailer"`
	Error      *Error              `json:"error"`
	Sent       uint                `json:"sent"`
	Received   uint                `json:"received"`
}

QueryResponse gRPC response.

type RuntimeConfig

type RuntimeConfig struct {
	GoMaxProcs int `json:"go_max_procs" default:"0"`
}

RuntimeConfig runtime settings.

type SavedQuery

type SavedQuery struct {
	Input    interface{} `json:"input"`
	Metadata interface{} `json:"metadata"`
}

SavedQuery saved query.

func (*SavedQuery) Model

func (s *SavedQuery) Model(req map[string]interface{})

Model creates SavedQuery from UI request.

type ServerRequest

type ServerRequest struct {
	ID       int64  `json:"id"`
	FolderID int64  `json:"folder_id"`
	Title    string `json:"title"`
	WorkspaceItemServer
}

ServerRequest read/create/delete server request.

func (*ServerRequest) Model

func (r *ServerRequest) Model(req map[string]interface{}) error

Model creates ServerRequest from UI request.

type ServerResponse

type ServerResponse struct {
	Server *Workspace           `json:"server"`
	Query  *Workspace           `json:"query"`
	Tree   []*WorkspaceTreeNode `json:"tree"`
}

ServerResponse read/create/update server response.

type ServerUpdateRequest

type ServerUpdateRequest struct {
	ID      int64       `json:"id"`
	Service string      `json:"service"`
	Method  string      `json:"method"`
	Request *SavedQuery `json:"request"`
}

ServerUpdateRequest update server request.

func (*ServerUpdateRequest) Model

func (r *ServerUpdateRequest) Model(req map[string]interface{}) error

Model creates ServerUpdateRequest from UI request.

type Service

type Service struct {
	Name    string    `json:"name"`
	Methods []*Method `json:"methods,omitempty"`
}

Service gRPC service.

type Settings added in v0.3.14

type Settings struct {
	WindowWidth           int   `json:"window_width"`
	WindowHeight          int   `json:"window_height"`
	WindowX               *int  `json:"window_x"`
	WindowY               *int  `json:"window_y"`
	SingleInstance        *bool `json:"single_instance"`
	ConnectTimeout        *int  `json:"connect_timeout"`
	RequestTimeout        *int  `json:"request_timeout"`
	K8SRequestTimeout     *int  `json:"k8s_request_timeout"`
	NonBlockingConnection *bool `json:"non_blocking_connection"`
	SortMethodsByName     *bool `json:"sort_methods_by_name"`
	MaxLoopDepth          *int  `json:"max_loop_depth"`
	EmitDefaults          *bool `json:"emit_defaults"`
	CheckUpdates          *bool `json:"check_updates"`
}

Settings application settings.

func (*Settings) IsCheckUpdates added in v0.5.10

func (s *Settings) IsCheckUpdates() bool

func (*Settings) IsEmitDefaults added in v0.5.10

func (s *Settings) IsEmitDefaults() bool

func (*Settings) Model added in v0.3.14

func (s *Settings) Model(payload map[string]interface{}) error

Model creates Settings from UI request.

type Workspace

type Workspace struct {
	ID         int64         `json:"id"`
	ParentID   *int64        `json:"parent_id"`
	HasChild   *bool         `json:"has_child"`
	Type       WorkspaceType `json:"type"`
	Title      string        `json:"text"`
	Breadcrumb []string      `json:"breadcrumb"`
	Data       interface{}   `json:"data"`
	Sort       *int          `json:"sort"`
	Expanded   *bool         `json:"expanded"`
	CreatedAt  time.Time     `json:"created_at"`
	UpdatedAt  time.Time     `json:"updated_at"`
}

Workspace workspace item.

type WorkspaceEvent added in v0.5.5

type WorkspaceEvent string

WorkspaceEvent workspace event.

func (WorkspaceEvent) String added in v0.5.5

func (e WorkspaceEvent) String() string

String returns workspace event string.

type WorkspaceExpandRequest

type WorkspaceExpandRequest struct {
	ID     int64 `json:"id"`
	Expand bool  `json:"expand"`
}

WorkspaceExpandRequest workspace expand/collapse request.

func (*WorkspaceExpandRequest) Model

func (r *WorkspaceExpandRequest) Model(payload map[string]interface{}) error

Model creates WorkspaceExpandRequest from UI request.

type WorkspaceItemFolder

type WorkspaceItemFolder struct {
}

WorkspaceItemFolder stored folder data.

type WorkspaceItemQuery

type WorkspaceItemQuery struct {
	Service     string      `json:"service"`
	Method      string      `json:"method"`
	Description string      `json:"description"`
	Request     *SavedQuery `json:"request"`
}

WorkspaceItemQuery stored query data.

func (*WorkspaceItemQuery) Model

func (s *WorkspaceItemQuery) Model(req map[string]interface{}) error

Model creates WorkspaceItemQuery from UI request.

type WorkspaceItemServer

type WorkspaceItemServer struct {
	Addr              string                            `json:"addr,omitempty"`
	UseReflection     bool                              `json:"use_reflection,omitempty"`
	ProtoFiles        []string                          `json:"proto_files,omitempty"`
	ImportPath        []string                          `json:"import_path,omitempty"`
	NoTLS             bool                              `json:"no_tls,omitempty"`
	Insecure          bool                              `json:"insecure,omitempty"`
	RootCertificate   string                            `json:"root_certificate,omitempty"`
	ClientCertificate string                            `json:"client_certificate,omitempty"`
	ClientKey         string                            `json:"client_key,omitempty"`
	Request           map[string]map[string]*SavedQuery `json:"request"`
	Auth              *Auth                             `json:"auth"`
	K8SPortForward    *K8SPortForward                   `json:"k8s"`
}

WorkspaceItemServer stored server data.

func (*WorkspaceItemServer) IsK8SEnabled added in v0.5.0

func (s *WorkspaceItemServer) IsK8SEnabled() bool

IsK8SEnabled checks whether it is enabled k8s port forwarding.

func (*WorkspaceItemServer) Model

func (s *WorkspaceItemServer) Model(server map[string]interface{}) error

Model creates WorkspaceItemServer from UI request.

func (*WorkspaceItemServer) PortForwardHash added in v0.5.10

func (s *WorkspaceItemServer) PortForwardHash() string

PortForwardHash calculating port forward hash.

type WorkspaceRequest

type WorkspaceRequest struct {
	Type       []WorkspaceType `json:"type"`
	SelectedID int64           `json:"selected_id"`
}

WorkspaceRequest workspace request by type.

func (*WorkspaceRequest) Model

func (r *WorkspaceRequest) Model(payload map[string]interface{}) error

Model creates WorkspaceRequest from UI request.

type WorkspaceSortingRequest

type WorkspaceSortingRequest struct {
	Nodes []*Workspace `json:"nodes"`
}

WorkspaceSortingRequest workspace sorting request.

func (*WorkspaceSortingRequest) Model

func (r *WorkspaceSortingRequest) Model(payload map[string]interface{}) error

Model creates WorkspaceSortingRequest from UI request.

type WorkspaceState

type WorkspaceState struct {
	Folders            int    `json:"folders"`
	Servers            int    `json:"servers"`
	Queries            int    `json:"queries"`
	StartupWorkspaceID *int64 `json:"startup_workspace_id"`
}

WorkspaceState count of folders/servers/queries.

type WorkspaceTreeFilter

type WorkspaceTreeFilter struct {
	Type []WorkspaceType
}

WorkspaceTreeFilter filtering workspace by type.

type WorkspaceTreeNode

type WorkspaceTreeNode struct {
	Data  *Workspace           `json:"data"`
	Text  string               `json:"text"`
	Nodes []*WorkspaceTreeNode `json:"nodes"`
}

WorkspaceTreeNode workspace tree node.

func MakeWorkspaceTree

func MakeWorkspaceTree(w []*Workspace, filter *WorkspaceTreeFilter, selectedID int64) []*WorkspaceTreeNode

MakeWorkspaceTree creates workspace tree for UI.

type WorkspaceType

type WorkspaceType string

WorkspaceType workspace type.

const (
	WorkspaceTypeFolder WorkspaceType = "f"
	WorkspaceTypeServer WorkspaceType = "s"
	WorkspaceTypeQuery  WorkspaceType = "r"

	WorkspaceDuplicatePostfix = "Copy"

	WorkspaceEventServerUpdated = "server.updated"
)

workspace types.

func (WorkspaceType) String

func (t WorkspaceType) String() string

String returns workspace type string.

Jump to

Keyboard shortcuts

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