Help us shape the future of Go! Take the 2026 Go Developer Survey

dashboard

package
v6.0.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 26, 2022 License: MIT Imports: 7 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

View Source
var DashboardScopeValues = dashboardScopeValuesType{

	Collection_User: "collection_User",

	Project_Team: "project_Team",

	Project: "project",
}
View Source
var GroupMemberPermissionValues = groupMemberPermissionValuesType{
	None:              "none",
	Edit:              "edit",
	Manage:            "manage",
	ManagePermissions: "managePermissions",
}
View Source
var ResourceAreaId, _ = uuid.Parse("31c84e0a-3ece-48fd-a29d-100849af99ba")
View Source
var TeamDashboardPermissionValues = teamDashboardPermissionValuesType{
	None:              "none",
	Read:              "read",
	Create:            "create",
	Edit:              "edit",
	Delete:            "delete",
	ManagePermissions: "managePermissions",
}
View Source
var WidgetScopeValues = widgetScopeValuesType{
	Collection_User: "collection_User",
	Project_Team:    "project_Team",
}

Functions

This section is empty.

Types

type Client

type Client interface {
	// [Preview API] Create the supplied dashboard.
	CreateDashboard(context.Context, CreateDashboardArgs) (*Dashboard, error)
	// [Preview API] Create a widget on the specified dashboard.
	CreateWidget(context.Context, CreateWidgetArgs) (*Widget, error)
	// [Preview API] Delete a dashboard given its ID. This also deletes the widgets associated with this dashboard.
	DeleteDashboard(context.Context, DeleteDashboardArgs) error
	// [Preview API] Delete the specified widget.
	DeleteWidget(context.Context, DeleteWidgetArgs) (*Dashboard, error)
	// [Preview API] Get a dashboard by its ID.
	GetDashboard(context.Context, GetDashboardArgs) (*Dashboard, error)
	// [Preview API] Get a list of dashboards under a project.
	GetDashboardsByProject(context.Context, GetDashboardsByProjectArgs) (*[]Dashboard, error)
	// [Preview API] Get the current state of the specified widget.
	GetWidget(context.Context, GetWidgetArgs) (*Widget, error)
	// [Preview API] Get the widget metadata satisfying the specified contribution ID.
	GetWidgetMetadata(context.Context, GetWidgetMetadataArgs) (*WidgetMetadataResponse, error)
	// [Preview API] Get widgets contained on the specified dashboard.
	GetWidgets(context.Context, GetWidgetsArgs) (*WidgetsVersionedList, error)
	// [Preview API] Get all available widget metadata in alphabetical order, including widgets marked with isVisibleFromCatalog == false.
	GetWidgetTypes(context.Context, GetWidgetTypesArgs) (*WidgetTypesResponse, error)
	// [Preview API] Replace configuration for the specified dashboard. Replaces Widget list on Dashboard, only if property is supplied.
	ReplaceDashboard(context.Context, ReplaceDashboardArgs) (*Dashboard, error)
	// [Preview API] Update the name and position of dashboards in the supplied group, and remove omitted dashboards. Does not modify dashboard content.
	ReplaceDashboards(context.Context, ReplaceDashboardsArgs) (*DashboardGroup, error)
	// [Preview API] Override the  state of the specified widget.
	ReplaceWidget(context.Context, ReplaceWidgetArgs) (*Widget, error)
	// [Preview API] Replace the widgets on specified dashboard with the supplied widgets.
	ReplaceWidgets(context.Context, ReplaceWidgetsArgs) (*WidgetsVersionedList, error)
	// [Preview API] Perform a partial update of the specified widget.
	UpdateWidget(context.Context, UpdateWidgetArgs) (*Widget, error)
	// [Preview API] Update the supplied widgets on the dashboard using supplied state. State of existing Widgets not passed in the widget list is preserved.
	UpdateWidgets(context.Context, UpdateWidgetsArgs) (*WidgetsVersionedList, error)
}

func NewClient

func NewClient(ctx context.Context, connection *azuredevops.Connection) (Client, error)

type ClientImpl

type ClientImpl struct {
	Client azuredevops.Client
}

func (*ClientImpl) CreateDashboard

func (client *ClientImpl) CreateDashboard(ctx context.Context, args CreateDashboardArgs) (*Dashboard, error)

[Preview API] Create the supplied dashboard.

func (*ClientImpl) CreateWidget

func (client *ClientImpl) CreateWidget(ctx context.Context, args CreateWidgetArgs) (*Widget, error)

[Preview API] Create a widget on the specified dashboard.

func (*ClientImpl) DeleteDashboard

func (client *ClientImpl) DeleteDashboard(ctx context.Context, args DeleteDashboardArgs) error

[Preview API] Delete a dashboard given its ID. This also deletes the widgets associated with this dashboard.

func (*ClientImpl) DeleteWidget

func (client *ClientImpl) DeleteWidget(ctx context.Context, args DeleteWidgetArgs) (*Dashboard, error)

[Preview API] Delete the specified widget.

func (*ClientImpl) GetDashboard

func (client *ClientImpl) GetDashboard(ctx context.Context, args GetDashboardArgs) (*Dashboard, error)

[Preview API] Get a dashboard by its ID.

func (*ClientImpl) GetDashboardsByProject

func (client *ClientImpl) GetDashboardsByProject(ctx context.Context, args GetDashboardsByProjectArgs) (*[]Dashboard, error)

[Preview API] Get a list of dashboards under a project.

func (*ClientImpl) GetWidget

func (client *ClientImpl) GetWidget(ctx context.Context, args GetWidgetArgs) (*Widget, error)

[Preview API] Get the current state of the specified widget.

func (*ClientImpl) GetWidgetMetadata

func (client *ClientImpl) GetWidgetMetadata(ctx context.Context, args GetWidgetMetadataArgs) (*WidgetMetadataResponse, error)

[Preview API] Get the widget metadata satisfying the specified contribution ID.

func (*ClientImpl) GetWidgetTypes

func (client *ClientImpl) GetWidgetTypes(ctx context.Context, args GetWidgetTypesArgs) (*WidgetTypesResponse, error)

[Preview API] Get all available widget metadata in alphabetical order, including widgets marked with isVisibleFromCatalog == false.

func (*ClientImpl) GetWidgets

func (client *ClientImpl) GetWidgets(ctx context.Context, args GetWidgetsArgs) (*WidgetsVersionedList, error)

[Preview API] Get widgets contained on the specified dashboard.

func (*ClientImpl) ReplaceDashboard

func (client *ClientImpl) ReplaceDashboard(ctx context.Context, args ReplaceDashboardArgs) (*Dashboard, error)

[Preview API] Replace configuration for the specified dashboard. Replaces Widget list on Dashboard, only if property is supplied.

func (*ClientImpl) ReplaceDashboards

func (client *ClientImpl) ReplaceDashboards(ctx context.Context, args ReplaceDashboardsArgs) (*DashboardGroup, error)

[Preview API] Update the name and position of dashboards in the supplied group, and remove omitted dashboards. Does not modify dashboard content.

func (*ClientImpl) ReplaceWidget

func (client *ClientImpl) ReplaceWidget(ctx context.Context, args ReplaceWidgetArgs) (*Widget, error)

[Preview API] Override the state of the specified widget.

func (*ClientImpl) ReplaceWidgets

func (client *ClientImpl) ReplaceWidgets(ctx context.Context, args ReplaceWidgetsArgs) (*WidgetsVersionedList, error)

[Preview API] Replace the widgets on specified dashboard with the supplied widgets.

func (*ClientImpl) UpdateWidget

func (client *ClientImpl) UpdateWidget(ctx context.Context, args UpdateWidgetArgs) (*Widget, error)

[Preview API] Perform a partial update of the specified widget.

func (*ClientImpl) UpdateWidgets

func (client *ClientImpl) UpdateWidgets(ctx context.Context, args UpdateWidgetsArgs) (*WidgetsVersionedList, error)

[Preview API] Update the supplied widgets on the dashboard using supplied state. State of existing Widgets not passed in the widget list is preserved.

type CreateDashboardArgs

type CreateDashboardArgs struct {
	// (required) The initial state of the dashboard
	Dashboard *Dashboard
	// (required) Project ID or project name
	Project *string
	// (optional) Team ID or team name
	Team *string
}

Arguments for the CreateDashboard function

type CreateWidgetArgs

type CreateWidgetArgs struct {
	// (required) State of the widget to add
	Widget *Widget
	// (required) Project ID or project name
	Project *string
	// (required) ID of dashboard the widget will be added to.
	DashboardId *uuid.UUID
	// (optional) Team ID or team name
	Team *string
}

Arguments for the CreateWidget function

type Dashboard

type Dashboard struct {
	Links interface{} `json:"_links,omitempty"`
	// Entity to which the dashboard is scoped.
	DashboardScope *DashboardScope `json:"dashboardScope,omitempty"`
	// Description of the dashboard.
	Description *string `json:"description,omitempty"`
	// Server defined version tracking value, used for edit collision detection.
	ETag *string `json:"eTag,omitempty"`
	// ID of the group for a dashboard. For team-scoped dashboards, this is the unique identifier for the team associated with the dashboard. For project-scoped dashboards this property is empty.
	GroupId *uuid.UUID `json:"groupId,omitempty"`
	// ID of the Dashboard. Provided by service at creation time.
	Id *uuid.UUID `json:"id,omitempty"`
	// Name of the Dashboard.
	Name *string `json:"name,omitempty"`
	// ID of the owner for a dashboard. For team-scoped dashboards, this is the unique identifier for the team associated with the dashboard. For project-scoped dashboards, this is the unique identifier for the user identity associated with the dashboard.
	OwnerId *uuid.UUID `json:"ownerId,omitempty"`
	// Position of the dashboard, within a dashboard group. If unset at creation time, position is decided by the service.
	Position *int `json:"position,omitempty"`
	// Interval for client to automatically refresh the dashboard. Expressed in minutes.
	RefreshInterval *int    `json:"refreshInterval,omitempty"`
	Url             *string `json:"url,omitempty"`
	// The set of Widgets on the dashboard.
	Widgets *[]Widget `json:"widgets,omitempty"`
}

Model of a Dashboard.

type DashboardGroup

type DashboardGroup struct {
	Links interface{} `json:"_links,omitempty"`
	// A list of Dashboards held by the Dashboard Group
	DashboardEntries *[]DashboardGroupEntry `json:"dashboardEntries,omitempty"`
	// Deprecated: The old permission model describing the level of permissions for the current team. Pre-M125.
	Permission *GroupMemberPermission `json:"permission,omitempty"`
	// A permissions bit mask describing the security permissions of the current team for dashboards. When this permission is the value None, use GroupMemberPermission. Permissions are evaluated based on the presence of a value other than None, else the GroupMemberPermission will be saved.
	TeamDashboardPermission *TeamDashboardPermission `json:"teamDashboardPermission,omitempty"`
	Url                     *string                  `json:"url,omitempty"`
}

Describes a list of dashboards associated to an owner. Currently, teams own dashboard groups.

type DashboardGroupEntry

type DashboardGroupEntry struct {
	Links interface{} `json:"_links,omitempty"`
	// Entity to which the dashboard is scoped.
	DashboardScope *DashboardScope `json:"dashboardScope,omitempty"`
	// Description of the dashboard.
	Description *string `json:"description,omitempty"`
	// Server defined version tracking value, used for edit collision detection.
	ETag *string `json:"eTag,omitempty"`
	// ID of the group for a dashboard. For team-scoped dashboards, this is the unique identifier for the team associated with the dashboard. For project-scoped dashboards this property is empty.
	GroupId *uuid.UUID `json:"groupId,omitempty"`
	// ID of the Dashboard. Provided by service at creation time.
	Id *uuid.UUID `json:"id,omitempty"`
	// Name of the Dashboard.
	Name *string `json:"name,omitempty"`
	// ID of the owner for a dashboard. For team-scoped dashboards, this is the unique identifier for the team associated with the dashboard. For project-scoped dashboards, this is the unique identifier for the user identity associated with the dashboard.
	OwnerId *uuid.UUID `json:"ownerId,omitempty"`
	// Position of the dashboard, within a dashboard group. If unset at creation time, position is decided by the service.
	Position *int `json:"position,omitempty"`
	// Interval for client to automatically refresh the dashboard. Expressed in minutes.
	RefreshInterval *int    `json:"refreshInterval,omitempty"`
	Url             *string `json:"url,omitempty"`
	// The set of Widgets on the dashboard.
	Widgets *[]Widget `json:"widgets,omitempty"`
}

Dashboard group entry, wrapping around Dashboard (needed?)

type DashboardGroupEntryResponse

type DashboardGroupEntryResponse struct {
	Links interface{} `json:"_links,omitempty"`
	// Entity to which the dashboard is scoped.
	DashboardScope *DashboardScope `json:"dashboardScope,omitempty"`
	// Description of the dashboard.
	Description *string `json:"description,omitempty"`
	// Server defined version tracking value, used for edit collision detection.
	ETag *string `json:"eTag,omitempty"`
	// ID of the group for a dashboard. For team-scoped dashboards, this is the unique identifier for the team associated with the dashboard. For project-scoped dashboards this property is empty.
	GroupId *uuid.UUID `json:"groupId,omitempty"`
	// ID of the Dashboard. Provided by service at creation time.
	Id *uuid.UUID `json:"id,omitempty"`
	// Name of the Dashboard.
	Name *string `json:"name,omitempty"`
	// ID of the owner for a dashboard. For team-scoped dashboards, this is the unique identifier for the team associated with the dashboard. For project-scoped dashboards, this is the unique identifier for the user identity associated with the dashboard.
	OwnerId *uuid.UUID `json:"ownerId,omitempty"`
	// Position of the dashboard, within a dashboard group. If unset at creation time, position is decided by the service.
	Position *int `json:"position,omitempty"`
	// Interval for client to automatically refresh the dashboard. Expressed in minutes.
	RefreshInterval *int    `json:"refreshInterval,omitempty"`
	Url             *string `json:"url,omitempty"`
	// The set of Widgets on the dashboard.
	Widgets *[]Widget `json:"widgets,omitempty"`
}

Response from RestAPI when saving and editing DashboardGroupEntry

type DashboardResponse

type DashboardResponse struct {
	Links interface{} `json:"_links,omitempty"`
	// Entity to which the dashboard is scoped.
	DashboardScope *DashboardScope `json:"dashboardScope,omitempty"`
	// Description of the dashboard.
	Description *string `json:"description,omitempty"`
	// Server defined version tracking value, used for edit collision detection.
	ETag *string `json:"eTag,omitempty"`
	// ID of the group for a dashboard. For team-scoped dashboards, this is the unique identifier for the team associated with the dashboard. For project-scoped dashboards this property is empty.
	GroupId *uuid.UUID `json:"groupId,omitempty"`
	// ID of the Dashboard. Provided by service at creation time.
	Id *uuid.UUID `json:"id,omitempty"`
	// Name of the Dashboard.
	Name *string `json:"name,omitempty"`
	// ID of the owner for a dashboard. For team-scoped dashboards, this is the unique identifier for the team associated with the dashboard. For project-scoped dashboards, this is the unique identifier for the user identity associated with the dashboard.
	OwnerId *uuid.UUID `json:"ownerId,omitempty"`
	// Position of the dashboard, within a dashboard group. If unset at creation time, position is decided by the service.
	Position *int `json:"position,omitempty"`
	// Interval for client to automatically refresh the dashboard. Expressed in minutes.
	RefreshInterval *int    `json:"refreshInterval,omitempty"`
	Url             *string `json:"url,omitempty"`
	// The set of Widgets on the dashboard.
	Widgets *[]Widget `json:"widgets,omitempty"`
}

type DashboardScope

type DashboardScope string

identifies the scope of dashboard storage and permissions.

type DeleteDashboardArgs

type DeleteDashboardArgs struct {
	// (required) Project ID or project name
	Project *string
	// (required) ID of the dashboard to delete.
	DashboardId *uuid.UUID
	// (optional) Team ID or team name
	Team *string
}

Arguments for the DeleteDashboard function

type DeleteWidgetArgs

type DeleteWidgetArgs struct {
	// (required) Project ID or project name
	Project *string
	// (required) ID of the dashboard containing the widget.
	DashboardId *uuid.UUID
	// (required) ID of the widget to update.
	WidgetId *uuid.UUID
	// (optional) Team ID or team name
	Team *string
}

Arguments for the DeleteWidget function

type GetDashboardArgs

type GetDashboardArgs struct {
	// (required) Project ID or project name
	Project *string
	// (required)
	DashboardId *uuid.UUID
	// (optional) Team ID or team name
	Team *string
}

Arguments for the GetDashboard function

type GetDashboardsByProjectArgs

type GetDashboardsByProjectArgs struct {
	// (required) Project ID or project name
	Project *string
	// (optional) Team ID or team name
	Team *string
}

Arguments for the GetDashboardsByProject function

type GetWidgetArgs

type GetWidgetArgs struct {
	// (required) Project ID or project name
	Project *string
	// (required) ID of the dashboard containing the widget.
	DashboardId *uuid.UUID
	// (required) ID of the widget to read.
	WidgetId *uuid.UUID
	// (optional) Team ID or team name
	Team *string
}

Arguments for the GetWidget function

type GetWidgetMetadataArgs

type GetWidgetMetadataArgs struct {
	// (required) The ID of Contribution for the Widget
	ContributionId *string
	// (optional) Project ID or project name
	Project *string
}

Arguments for the GetWidgetMetadata function

type GetWidgetTypesArgs

type GetWidgetTypesArgs struct {
	// (required)
	Scope *WidgetScope
	// (optional) Project ID or project name
	Project *string
}

Arguments for the GetWidgetTypes function

type GetWidgetsArgs

type GetWidgetsArgs struct {
	// (required) Project ID or project name
	Project *string
	// (required) ID of the dashboard to read.
	DashboardId *uuid.UUID
	// (optional) Team ID or team name
	Team *string
	// (optional) Dashboard Widgets Version
	ETag *string
}

Arguments for the GetWidgets function

type GroupMemberPermission

type GroupMemberPermission string

type LightboxOptions

type LightboxOptions struct {
	// Height of desired lightbox, in pixels
	Height *int `json:"height,omitempty"`
	// True to allow lightbox resizing, false to disallow lightbox resizing, defaults to false.
	Resizable *bool `json:"resizable,omitempty"`
	// Width of desired lightbox, in pixels
	Width *int `json:"width,omitempty"`
}

Lightbox configuration

type ReplaceDashboardArgs

type ReplaceDashboardArgs struct {
	// (required) The Configuration of the dashboard to replace.
	Dashboard *Dashboard
	// (required) Project ID or project name
	Project *string
	// (required) ID of the dashboard to replace.
	DashboardId *uuid.UUID
	// (optional) Team ID or team name
	Team *string
}

Arguments for the ReplaceDashboard function

type ReplaceDashboardsArgs

type ReplaceDashboardsArgs struct {
	// (required)
	Group *DashboardGroup
	// (required) Project ID or project name
	Project *string
	// (optional) Team ID or team name
	Team *string
}

Arguments for the ReplaceDashboards function

type ReplaceWidgetArgs

type ReplaceWidgetArgs struct {
	// (required) State to be written for the widget.
	Widget *Widget
	// (required) Project ID or project name
	Project *string
	// (required) ID of the dashboard containing the widget.
	DashboardId *uuid.UUID
	// (required) ID of the widget to update.
	WidgetId *uuid.UUID
	// (optional) Team ID or team name
	Team *string
}

Arguments for the ReplaceWidget function

type ReplaceWidgetsArgs

type ReplaceWidgetsArgs struct {
	// (required) Revised state of widgets to store for the dashboard.
	Widgets *[]Widget
	// (required) Project ID or project name
	Project *string
	// (required) ID of the Dashboard to modify.
	DashboardId *uuid.UUID
	// (optional) Team ID or team name
	Team *string
	// (optional) Dashboard Widgets Version
	ETag *string
}

Arguments for the ReplaceWidgets function

type SemanticVersion

type SemanticVersion struct {
	// Major version when you make incompatible API changes
	Major *int `json:"major,omitempty"`
	// Minor version when you add functionality in a backwards-compatible manner
	Minor *int `json:"minor,omitempty"`
	// Patch version when you make backwards-compatible bug fixes
	Patch *int `json:"patch,omitempty"`
}

versioning for an artifact as described at: http://semver.org/, of the form major.minor.patch.

type TeamDashboardPermission

type TeamDashboardPermission string

[Flags]

type UpdateWidgetArgs

type UpdateWidgetArgs struct {
	// (required) Description of the widget changes to apply. All non-null fields will be replaced.
	Widget *Widget
	// (required) Project ID or project name
	Project *string
	// (required) ID of the dashboard containing the widget.
	DashboardId *uuid.UUID
	// (required) ID of the widget to update.
	WidgetId *uuid.UUID
	// (optional) Team ID or team name
	Team *string
}

Arguments for the UpdateWidget function

type UpdateWidgetsArgs

type UpdateWidgetsArgs struct {
	// (required) The set of widget states to update on the dashboard.
	Widgets *[]Widget
	// (required) Project ID or project name
	Project *string
	// (required) ID of the Dashboard to modify.
	DashboardId *uuid.UUID
	// (optional) Team ID or team name
	Team *string
	// (optional) Dashboard Widgets Version
	ETag *string
}

Arguments for the UpdateWidgets function

type Widget

type Widget struct {
	Links interface{} `json:"_links,omitempty"`
	// Refers to the allowed sizes for the widget. This gets populated when user wants to configure the widget
	AllowedSizes *[]WidgetSize `json:"allowedSizes,omitempty"`
	// Read-Only Property from Dashboard Service. Indicates if settings are blocked for the current user.
	AreSettingsBlockedForUser *bool `json:"areSettingsBlockedForUser,omitempty"`
	// Refers to unique identifier of a feature artifact. Used for pinning+unpinning a specific artifact.
	ArtifactId                          *string `json:"artifactId,omitempty"`
	ConfigurationContributionId         *string `json:"configurationContributionId,omitempty"`
	ConfigurationContributionRelativeId *string `json:"configurationContributionRelativeId,omitempty"`
	ContentUri                          *string `json:"contentUri,omitempty"`
	// The id of the underlying contribution defining the supplied Widget Configuration.
	ContributionId *string `json:"contributionId,omitempty"`
	// Optional partial dashboard content, to support exchanging dashboard-level version ETag for widget-level APIs
	Dashboard          *Dashboard       `json:"dashboard,omitempty"`
	ETag               *string          `json:"eTag,omitempty"`
	Id                 *uuid.UUID       `json:"id,omitempty"`
	IsEnabled          *bool            `json:"isEnabled,omitempty"`
	IsNameConfigurable *bool            `json:"isNameConfigurable,omitempty"`
	LightboxOptions    *LightboxOptions `json:"lightboxOptions,omitempty"`
	LoadingImageUrl    *string          `json:"loadingImageUrl,omitempty"`
	Name               *string          `json:"name,omitempty"`
	Position           *WidgetPosition  `json:"position,omitempty"`
	Settings           *string          `json:"settings,omitempty"`
	SettingsVersion    *SemanticVersion `json:"settingsVersion,omitempty"`
	Size               *WidgetSize      `json:"size,omitempty"`
	TypeId             *string          `json:"typeId,omitempty"`
	Url                *string          `json:"url,omitempty"`
}

Widget data

type WidgetMetadata

type WidgetMetadata struct {
	// Sizes supported by the Widget.
	AllowedSizes *[]WidgetSize `json:"allowedSizes,omitempty"`
	// Opt-in boolean that indicates if the widget requires the Analytics Service to function. Widgets requiring the analytics service are hidden from the catalog if the Analytics Service is not available.
	AnalyticsServiceRequired *bool `json:"analyticsServiceRequired,omitempty"`
	// Resource for an icon in the widget catalog.
	CatalogIconUrl *string `json:"catalogIconUrl,omitempty"`
	// Opt-in URL string pointing at widget information. Defaults to extension marketplace URL if omitted
	CatalogInfoUrl *string `json:"catalogInfoUrl,omitempty"`
	// The id of the underlying contribution defining the supplied Widget custom configuration UI. Null if custom configuration UI is not available.
	ConfigurationContributionId *string `json:"configurationContributionId,omitempty"`
	// The relative id of the underlying contribution defining the supplied Widget custom configuration UI. Null if custom configuration UI is not available.
	ConfigurationContributionRelativeId *string `json:"configurationContributionRelativeId,omitempty"`
	// Indicates if the widget requires configuration before being added to dashboard.
	ConfigurationRequired *bool `json:"configurationRequired,omitempty"`
	// Uri for the widget content to be loaded from .
	ContentUri *string `json:"contentUri,omitempty"`
	// The id of the underlying contribution defining the supplied Widget.
	ContributionId *string `json:"contributionId,omitempty"`
	// Optional default settings to be copied into widget settings.
	DefaultSettings *string `json:"defaultSettings,omitempty"`
	// Summary information describing the widget.
	Description *string `json:"description,omitempty"`
	// Widgets can be disabled by the app store.  We'll need to gracefully handle for: - persistence (Allow) - Requests (Tag as disabled, and provide context)
	IsEnabled *bool `json:"isEnabled,omitempty"`
	// Opt-out boolean that indicates if the widget supports widget name/title configuration. Widgets ignoring the name should set it to false in the manifest.
	IsNameConfigurable *bool `json:"isNameConfigurable,omitempty"`
	// Opt-out boolean indicating if the widget is hidden from the catalog. Commonly, this is used to allow developers to disable creation of a deprecated widget. A widget must have a functional default state, or have a configuration experience, in order to be visible from the catalog.
	IsVisibleFromCatalog *bool `json:"isVisibleFromCatalog,omitempty"`
	// Keywords associated with this widget, non-filterable and invisible
	Keywords *[]string `json:"keywords,omitempty"`
	// Opt-in properties for customizing widget presentation in a "lightbox" dialog.
	LightboxOptions *LightboxOptions `json:"lightboxOptions,omitempty"`
	// Resource for a loading placeholder image on dashboard
	LoadingImageUrl *string `json:"loadingImageUrl,omitempty"`
	// User facing name of the widget type. Each widget must use a unique value here.
	Name *string `json:"name,omitempty"`
	// Publisher Name of this kind of widget.
	PublisherName *string `json:"publisherName,omitempty"`
	// Data contract required for the widget to function and to work in its container.
	SupportedScopes *[]WidgetScope `json:"supportedScopes,omitempty"`
	// Tags associated with this widget, visible on each widget and filterable.
	Tags *[]string `json:"tags,omitempty"`
	// Contribution target IDs
	Targets *[]string `json:"targets,omitempty"`
	// Deprecated: locally unique developer-facing id of this kind of widget. ContributionId provides a globally unique identifier for widget types.
	TypeId *string `json:"typeId,omitempty"`
}

Contribution based information describing Dashboard Widgets.

type WidgetMetadataResponse

type WidgetMetadataResponse struct {
	Uri            *string         `json:"uri,omitempty"`
	WidgetMetadata *WidgetMetadata `json:"widgetMetadata,omitempty"`
}

type WidgetPosition

type WidgetPosition struct {
	Column *int `json:"column,omitempty"`
	Row    *int `json:"row,omitempty"`
}

type WidgetResponse

type WidgetResponse struct {
	Links interface{} `json:"_links,omitempty"`
	// Refers to the allowed sizes for the widget. This gets populated when user wants to configure the widget
	AllowedSizes *[]WidgetSize `json:"allowedSizes,omitempty"`
	// Read-Only Property from Dashboard Service. Indicates if settings are blocked for the current user.
	AreSettingsBlockedForUser *bool `json:"areSettingsBlockedForUser,omitempty"`
	// Refers to unique identifier of a feature artifact. Used for pinning+unpinning a specific artifact.
	ArtifactId                          *string `json:"artifactId,omitempty"`
	ConfigurationContributionId         *string `json:"configurationContributionId,omitempty"`
	ConfigurationContributionRelativeId *string `json:"configurationContributionRelativeId,omitempty"`
	ContentUri                          *string `json:"contentUri,omitempty"`
	// The id of the underlying contribution defining the supplied Widget Configuration.
	ContributionId *string `json:"contributionId,omitempty"`
	// Optional partial dashboard content, to support exchanging dashboard-level version ETag for widget-level APIs
	Dashboard          *Dashboard       `json:"dashboard,omitempty"`
	ETag               *string          `json:"eTag,omitempty"`
	Id                 *uuid.UUID       `json:"id,omitempty"`
	IsEnabled          *bool            `json:"isEnabled,omitempty"`
	IsNameConfigurable *bool            `json:"isNameConfigurable,omitempty"`
	LightboxOptions    *LightboxOptions `json:"lightboxOptions,omitempty"`
	LoadingImageUrl    *string          `json:"loadingImageUrl,omitempty"`
	Name               *string          `json:"name,omitempty"`
	Position           *WidgetPosition  `json:"position,omitempty"`
	Settings           *string          `json:"settings,omitempty"`
	SettingsVersion    *SemanticVersion `json:"settingsVersion,omitempty"`
	Size               *WidgetSize      `json:"size,omitempty"`
	TypeId             *string          `json:"typeId,omitempty"`
	Url                *string          `json:"url,omitempty"`
}

Response from RestAPI when saving and editing Widget

type WidgetScope

type WidgetScope string

data contract required for the widget to function in a webaccess area or page.

type WidgetSize

type WidgetSize struct {
	// The Width of the widget, expressed in dashboard grid columns.
	ColumnSpan *int `json:"columnSpan,omitempty"`
	// The height of the widget, expressed in dashboard grid rows.
	RowSpan *int `json:"rowSpan,omitempty"`
}

type WidgetTypesResponse

type WidgetTypesResponse struct {
	Links       interface{}       `json:"_links,omitempty"`
	Uri         *string           `json:"uri,omitempty"`
	WidgetTypes *[]WidgetMetadata `json:"widgetTypes,omitempty"`
}

type WidgetsVersionedList

type WidgetsVersionedList struct {
	ETag    *[]string `json:"eTag,omitempty"`
	Widgets *[]Widget `json:"widgets,omitempty"`
}

Wrapper class to support HTTP header generation using CreateResponse, ClientHeaderParameter and ClientResponseType in WidgetV2Controller

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL