[MM-57194] Allow plugins to mark setting fields as secret (#27986)

Co-authored-by: Claudio Costa <cstcld91@gmail.com>
Этот коммит содержится в:
Ben Schumacher
2024-09-12 19:23:57 +02:00
коммит произвёл GitHub
родитель 84a0c09d56
Коммит 70fe2abea6
13 изменённых файлов: 311 добавлений и 45 удалений

Просмотреть файл

@@ -34,6 +34,7 @@ func (p *MyPlugin) OnConfigurationChange() error {
}
func (p *MyPlugin) MessageWillBePosted(_ *plugin.Context, _ *model.Post) (*model.Post, string) {
// Test API.LoadPluginConfiguration
if p.configuration.MyStringSetting != "str" {
return nil, "MyStringSetting has invalid value"
}
@@ -43,6 +44,22 @@ func (p *MyPlugin) MessageWillBePosted(_ *plugin.Context, _ *model.Post) (*model
if !p.configuration.MyBoolSetting {
return nil, "MyBoolSetting has invalid value"
}
// Test API.GetPluginConfig
pc := p.API.GetPluginConfig()
if pc == nil {
return nil, "GetPluginConfig returned nil"
}
if pc["mystringsetting"] != "str" {
return nil, fmt.Sprintf("MyStringSetting has invalid value: %v", pc["mystringsetting"])
}
if pc["MyIntSetting"] != float64(32) {
return nil, fmt.Sprintf("MyIntSetting has invalid value: %v", pc["MyIntSetting"])
}
if pc["myBoolsetting"] != true {
return nil, fmt.Sprintf("MyBoolSetting has invalid value: %v", pc["myBoolsetting"])
}
return nil, "OK"
}