apps.go 874 B

1234567891011121314151617181920212223242526272829303132333435
  1. package dtos
  2. import (
  3. "github.com/grafana/grafana/pkg/models"
  4. "github.com/grafana/grafana/pkg/plugins"
  5. )
  6. type AppSettings struct {
  7. Name string `json:"name"`
  8. AppId string `json:"appId"`
  9. Enabled bool `json:"enabled"`
  10. Pinned bool `json:"pinned"`
  11. Module string `json:"module"`
  12. Info *plugins.PluginInfo `json:"info"`
  13. Pages []*plugins.AppPluginPage `json:"pages"`
  14. JsonData map[string]interface{} `json:"jsonData"`
  15. }
  16. func NewAppSettingsDto(def *plugins.AppPlugin, data *models.AppSettings) *AppSettings {
  17. dto := &AppSettings{
  18. AppId: def.Id,
  19. Name: def.Name,
  20. Info: &def.Info,
  21. Module: def.Module,
  22. Pages: def.Pages,
  23. }
  24. if data != nil {
  25. dto.Enabled = data.Enabled
  26. dto.Pinned = data.Pinned
  27. dto.Info = &def.Info
  28. }
  29. return dto
  30. }