Documentation
¶
Index ¶
- func WithGlobalConfig(ctx context.Context, config *GlobalConfig) context.Context
- func WithPluginConfig(ctx context.Context, config *PluginConfig) context.Context
- type GlobalConfig
- type PluginComponentArea
- type PluginComponents
- type PluginConfig
- type PluginMaintainer
- type PluginMeta
- type PluginMetaFormat
- type PluginResourceComponent
- type PluginTheme
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func WithGlobalConfig ¶
func WithGlobalConfig(ctx context.Context, config *GlobalConfig) context.Context
WithGlobalConfig injects the IDE global configuration into context.
func WithPluginConfig ¶
func WithPluginConfig(ctx context.Context, config *PluginConfig) context.Context
WithPluginConfig injects the IDE plugin configuration into context.
Types ¶
type GlobalConfig ¶
type GlobalConfig struct {
// contains filtered or unexported fields
}
GlobalConfig holds the global configuration for the IDE.
func GlobalConfigFromContext ¶
func GlobalConfigFromContext(ctx context.Context) *GlobalConfig
GlobalConfigFromContext returns the global configuration from the context.
func NewGlobalConfig ¶
func NewGlobalConfig(config map[string]interface{}) *GlobalConfig
NewGlobalConfig creates a new global configuration.
func (*GlobalConfig) Get ¶
func (c *GlobalConfig) Get(key string) interface{}
Get returns the value for the given key on the config.
type PluginComponentArea ¶
type PluginComponentArea string
const ( PluginComponentAreaEditor PluginComponentArea = "EDITOR" PluginComponentAreaSidebar PluginComponentArea = "SIDEBAR" )
type PluginComponents ¶
type PluginComponents struct {
Resource []PluginResourceComponent `json:"resource" yaml:"resource"`
}
type PluginConfig ¶
type PluginConfig struct {
// contains filtered or unexported fields
}
PluginConfig holds the plugin configuration for the IDE.
func NewEmptyPluginConfig ¶
func NewEmptyPluginConfig() *PluginConfig
NewEmptyPluginConfig creates a new empty plugin configuration.
func NewPluginConfig ¶
func NewPluginConfig(config map[string]string) *PluginConfig
NewPluginConfig creates a new plugin configuration.
func PluginConfigFromContext ¶
func PluginConfigFromContext(ctx context.Context) *PluginConfig
PluginConfigFromContext returns the plugin configuration from the context.
func (*PluginConfig) Get ¶
func (c *PluginConfig) Get(key string) string
Get returns the value for the given key on the config.
type PluginMaintainer ¶
type PluginMeta ¶
type PluginMeta struct { ID string `json:"id" yaml:"id"` Version string `json:"version" yaml:"version"` Name string `json:"name" yaml:"name"` Icon string `json:"icon" yaml:"icon"` Description string `json:"description" yaml:"description"` Repository string `json:"repository" yaml:"repository"` Website string `json:"website" yaml:"website"` Markdown string `json:"-" yaml:"-"` Maintainers []PluginMaintainer `json:"maintainers" yaml:"maintainers"` Tags []string `json:"tags" yaml:"tags"` Dependencies []string `json:"dependencies" yaml:"dependencies"` Capabilities []string `json:"capabilities" yaml:"capabilities"` Theme PluginTheme `json:"theme" yaml:"theme"` Components PluginComponents `json:"components" yaml:"components"` }
PluginMeta is the plugin description file located at the root of a plugin.
func (*PluginMeta) GenerateHandshakeConfig ¶
func (c *PluginMeta) GenerateHandshakeConfig() plugin.HandshakeConfig
GenerateHandshakeConfig generates a handshake config for the plugin given the plugin config.
func (*PluginMeta) LoadMarkdown ¶
func (c *PluginMeta) LoadMarkdown(path string) error
LoadMarkdown loads a plugin Markdown file from a given path (if it exists) into the plugin config.
type PluginMetaFormat ¶
type PluginMetaFormat int
const ( // PluginMetaFormatYAML is the YAML format for a plugin config. PluginMetaFormatYAML PluginMetaFormat = iota // PluginMetaFormatJSON is the JSON format for a plugin config. PluginMetaFormatJSON )
type PluginResourceComponent ¶
type PluginResourceComponent struct { Name string `json:"name" yaml:"name"` Plugin string `json:"plugin" yaml:"plugin"` Area PluginComponentArea `json:"area" yaml:"area"` Resources []string `json:"resources" yaml:"resources"` ExtensionPoint string `json:"extension" yaml:"extension"` }