The very basic client app, not adapted for mobiles.
This commit is contained in:
28
client/internal/services/core/options/widgets.go
Normal file
28
client/internal/services/core/options/widgets.go
Normal file
@@ -0,0 +1,28 @@
|
||||
package options
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"fmt"
|
||||
|
||||
"bunker/client/internal/services/core"
|
||||
"bunker/client/internal/services/core/options/dto"
|
||||
"bunker/client/internal/services/core/options/models"
|
||||
)
|
||||
|
||||
var errWidgetPaneAlreadyRegistered = errors.New("widget pane already registered")
|
||||
|
||||
func (o *options) RegisterOptionsWidget(widgetData *dto.OptionPane) error {
|
||||
if _, found := o.widgets[widgetData.Name]; found {
|
||||
return fmt.Errorf(
|
||||
"%w: RegisterOptionsWidget: '%s': %w",
|
||||
core.ErrOptions,
|
||||
widgetData.Name,
|
||||
errWidgetPaneAlreadyRegistered,
|
||||
)
|
||||
}
|
||||
|
||||
o.widgets[widgetData.Name] = models.OptionPaneFromDTO(widgetData)
|
||||
o.widgetsItems = append(o.widgetsItems, widgetData.Name)
|
||||
|
||||
return nil
|
||||
}
|
Reference in New Issue
Block a user