diff options
author | Chris <ccbrown112@gmail.com> | 2017-11-30 10:57:47 -0600 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-11-30 10:57:47 -0600 |
commit | eaca461ee35993c07936a5888c003153d9e9b24f (patch) | |
tree | 28072100fd71784a58dd8fcc839113f8380a4029 /model/manifest.go | |
parent | c30a3aff9f8f2288fdaa1359e38aca86f9524978 (diff) | |
download | chat-eaca461ee35993c07936a5888c003153d9e9b24f.tar.gz chat-eaca461ee35993c07936a5888c003153d9e9b24f.tar.bz2 chat-eaca461ee35993c07936a5888c003153d9e9b24f.zip |
ordered plugin settings (#7919)
Diffstat (limited to 'model/manifest.go')
-rw-r--r-- | model/manifest.go | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/model/manifest.go b/model/manifest.go index 12f105aaa..121d3e0d2 100644 --- a/model/manifest.go +++ b/model/manifest.go @@ -31,6 +31,9 @@ type PluginOption struct { } type PluginSetting struct { + // The key that the setting will be assigned to in the configuration file. + Key string `json:"key" yaml:"key"` + // The display name for the setting. DisplayName string `json:"display_name" yaml:"display_name"` @@ -76,8 +79,8 @@ type PluginSettingsSchema struct { // Optional text to display below the settings. Footer string `json:"footer" yaml:"footer"` - // A mapping of setting keys to schema definitions. - Settings map[string]*PluginSetting `json:"settings" yaml:"settings"` + // A list of setting definitions. + Settings []*PluginSetting `json:"settings" yaml:"settings"` } // The plugin manifest defines the metadata required to load and present your plugin. The manifest @@ -93,11 +96,11 @@ type PluginSettingsSchema struct { // executable: myplugin // settings_schema: // settings: -// enable_extra_thing: -// type: bool -// display_name: Enable Extra Thing -// help_text: When true, an extra thing will be enabled! -// default: false +// - key: enable_extra_thing +// type: bool +// display_name: Enable Extra Thing +// help_text: When true, an extra thing will be enabled! +// default: false type Manifest struct { // The id is a globally unique identifier that represents your plugin. Reverse-DNS notation // using a name you control is a good option. For example, "com.mycompany.myplugin". @@ -126,6 +129,8 @@ type Manifest struct { type ManifestBackend struct { // The path to your executable binary. This should be relative to the root of your bundle and the // location of the manifest file. + // + // On Windows, this file must have a ".exe" extension. Executable string `json:"executable" yaml:"executable"` } |