×

You can add extensions that allow you to customize your plugin. Those extensions are then loaded to the console at run-time.

Dynamic plugin extension types

console.action/filter

ActionFilter can be used to filter an action.

Name Value Type Optional Description

contextId

string

no

The context ID helps to narrow the scope of contributed actions to a particular area of the application. Examples include topology and helm.

filter

CodeRef<(scope: any, action: Action) ⇒ boolean>

no

A function that will filter actions based on some conditions. scope: The scope in which actions should be provided for. A hook might be required if you want to remove the ModifyCount action from a deployment with a horizontal pod autoscaler (HPA).

console.action/group

ActionGroup contributes an action group that can also be a submenu.

Name Value Type Optional Description

id

string

no

ID used to identify the action section.

label

string

yes

The label to display in the UI. Required for submenus.

submenu

boolean

yes

Whether this group should be displayed as submenu.

insertBefore

string | string[]

yes

Insert this item before the item referenced here. For arrays, the first one found in order is used.

insertAfter

string | string[]

yes

Insert this item after the item referenced here. For arrays, the first one found in order is used. The insertBefore value takes precedence.

console.action/provider

ActionProvider contributes a hook that returns list of actions for specific context.

Name Value Type Optional Description

contextId

string

no

The context ID helps to narrow the scope of contributed actions to a particular area of the application. Examples include topology and helm.

provider

CodeRef<ExtensionHook<Action[], any>>

no

A React hook that returns actions for the given scope. If contextId = resource, then the scope will always be a Kubernetes resource object.

console.action/resource-provider

ResourceActionProvider contributes a hook that returns list of actions for specific resource model.

Name Value Type Optional Description

model

ExtensionK8sKindVersionModel

no

The model for which this provider provides actions for.

provider

CodeRef<ExtensionHook<Action[], any>>

no

A react hook which returns actions for the given resource model

console.alert-action

Name Value Type Optional Description

alert

string

no

text

string

no

action

CodeRef<(alert: any) ⇒ void>

no

console.catalog/item-filter

Name Value Type Optional Description

catalogId

string | string[]

no

The unique identifier for the catalog this provider contributes to.

type

string

no

Type ID for the catalog item type.

filter

CodeRef<(item: CatalogItem) ⇒ boolean>

no

Filters items of a specific type. Value is a function that takes CatalogItem[] and returns a subset based on the filter criteria.

console.catalog/item-metadata

Name Value Type Optional Description

catalogId

string | string[]

no

The unique identifier for the catalog this provider contributes to.

type

string

no

Type ID for the catalog item type.

provider

CodeRef<ExtensionHook<CatalogItemMetadataProviderFunction, CatalogExtensionHookOptions>>

no

A hook which returns a function that will be used to provide metadata to catalog items of a specific type.

console.catalog/item-provider

Name Value Type Optional Description

catalogId

string | string[]

no

The unique identifier for the catalog this provider contributes to.

type

string

no

Type ID for the catalog item type.

title

string

no

Title for the catalog item provider

provider

CodeRef<ExtensionHook<CatalogItem<any>[], CatalogExtensionHookOptions>>

no

Fetch items and normalize it for the catalog. Value is a react effect hook.

priority

number

yes

Priority for this provider. Defaults to 0. Higher priority providers may override catalog items provided by other providers.

console.catalog/item-type

Name Value Type Optional Description

type

string

no

Type for the catalog item.

title

string

no

Title for the catalog item.

catalogDescription

string | CodeRef<React.ReactNode>

yes

Description for the type specific catalog.

typeDescription

string

yes

Description for the catalog item type.

filters

CatalogItemAttribute[]

yes

Custom filters specific to the catalog item.

groupings

CatalogItemAttribute[]

yes

Custom groupings specific to the catalog item.

console.catalog/item-type-metadata

Name Value Type Optional Description

type

string

no

Type for the catalog item.

filters

CatalogItemAttribute[]

yes

Custom filters specific to the catalog item.

groupings

CatalogItemAttribute[]

yes

Custom groupings specific to the catalog item.

console.cluster-overview/inventory-item

Adds a new inventory item into cluster overview page.

Name Value Type Optional Description

component

CodeRef<React.ComponentType<{}>>

no

The component to be rendered.

console.cluster-overview/multiline-utilization-item

Adds a new cluster overview multi-line utilization item.

Name Value Type Optional Description

title

string

no

The title of the utilization item.

getUtilizationQueries

CodeRef<GetMultilineQueries>

no

Prometheus utilization query.

humanize

CodeRef<Humanize>

no

Convert Prometheus data to human-readable form.

TopConsumerPopovers

CodeRef<React.ComponentType<TopConsumerPopoverProps>[]>

yes

Shows Top consumer popover instead of plain value

console.cluster-overview/utilization-item

Adds a new cluster overview utilization item.

Name Value Type Optional Description

title

string

no

The title of the utilization item.

getUtilizationQuery

CodeRef<GetQuery>

no

Prometheus utilization query.

humanize

CodeRef<Humanize>

no

Convert Prometheus data to human-readable form.

getTotalQuery

CodeRef<GetQuery>

yes

Prometheus total query.

getRequestQuery

CodeRef<GetQuery>

yes

Prometheus request query.

getLimitQuery

CodeRef<GetQuery>

yes

Prometheus limit query.

TopConsumerPopover

CodeRef<React.ComponentType<TopConsumerPopoverProps>>

yes

Shows Top consumer popover instead of plain value

console.context-provider

Adds a new React context provider to the web console application root.

Name Value Type Optional Description

provider

CodeRef<Provider<T>>

no

Context Provider component.

useValueHook

CodeRef<() ⇒ T>

no

Hook for the Context value.

console.dashboards/card

Adds a new dashboard card.

Name Value Type Optional Description

tab

string

no

The ID of the dashboard tab to which the card will be added.

position

'LEFT' | 'RIGHT' | 'MAIN'

no

The grid position of the card on the dashboard.

component

CodeRef<React.ComponentType<{}>>

no

Dashboard card component.

span

OverviewCardSpan

yes

Card’s vertical span in the column. Ignored for small screens; defaults to 12.

console.dashboards/overview/activity/resource

Adds an activity to the Activity Card of Overview Dashboard where the triggering of activity is based on watching a Kubernetes resource.

Name Value Type Optional Description

k8sResource

CodeRef<FirehoseResource & { isList: true; }>

no

The utilization item to be replaced.

component

CodeRef<React.ComponentType<K8sActivityProps<T>>>

no

The action component.

isActivity

CodeRef<(resource: T) ⇒ boolean>

yes

Function which determines if the given resource represents the action. If not defined, every resource represents activity.

getTimestamp

CodeRef<(resource: T) ⇒ Date>

yes

Time stamp for the given action, which will be used for ordering.

console.dashboards/overview/detail/item

Adds an item to the Details card of Overview dashboard.

Name Value Type Optional Description

component

CodeRef<React.ComponentType<{}>>

no

The value, based on the DetailItem component

console.dashboards/overview/health/operator

Adds a health subsystem to the status card of the Overview dashboard, where the source of status is a Kubernetes REST API.

Name Value Type Optional Description

title

string

no

Title of Operators section in the pop-up menu.

resources

CodeRef<FirehoseResource[]>

no

Kubernetes resources which will be fetched and passed to healthHandler.

getOperatorsWithStatuses

CodeRef<GetOperatorsWithStatuses<T>>

yes

Resolves status for the Operators.

operatorRowLoader

CodeRef<React.ComponentType<OperatorRowProps<T>>>

yes

Loader for pop-up row component.

viewAllLink

string

yes

Links to all resources page. If not provided, then a list page of the first resource from resources prop is used.

console.dashboards/overview/health/prometheus

Adds a health subsystem to the status card of Overview dashboard where the source of status is Prometheus.

Name Value Type Optional Description

title

string

no

The display name of the subsystem.

queries

string[]

no

The Prometheus queries

healthHandler

CodeRef<PrometheusHealthHandler>

no

Resolve the subsystem’s health.

additionalResource

CodeRef<FirehoseResource>

yes

Additional resource which will be fetched and passed to healthHandler.

popupComponent

CodeRef<React.ComponentType<PrometheusHealthPopupProps>>

yes

Loader for pop-up menu content. If defined, a health item is represented as a link, which opens a pop-up menu with the given content.

popupTitle

string

yes

The title of the popover.

disallowedControlPlaneTopology

string[]

yes

Control plane topology for which the subsystem should be hidden.

console.dashboards/overview/health/resource

Adds a health subsystem to the status card of Overview dashboard where the source of status is a Kubernetes Resource.

Name Value Type Optional Description

title

string

no

The display name of the subsystem.

resources

CodeRef<WatchK8sResources<T>>

no

Kubernetes resources that will be fetched and passed to healthHandler.

healthHandler

CodeRef<ResourceHealthHandler<T>>

no

Resolve the subsystem’s health.

popupComponent

CodeRef<WatchK8sResults<T>>

yes

Loader for pop-up menu content. If defined, a health item is represented as a link, which opens a pop-up menu with the given content.

popupTitle

string

yes

The title of the popover.

console.dashboards/overview/health/url

Adds a health subsystem to the status card of Overview dashboard where the source of status is a Kubernetes REST API.

Name Value Type Optional Description

title

string

no

The display name of the subsystem.

url

string

no

The URL to fetch data from. It will be prefixed with base Kubernetes URL.

healthHandler

`CodeRef<URLHealthHandler<T, K8sResourceCommon

K8sResourceCommon[]>>`

no

Resolve the subsystem’s health.

additionalResource

CodeRef<FirehoseResource>

yes

Additional resource which will be fetched and passed to healthHandler.

popupComponent

CodeRef<React.ComponentType<{ healthResult?: T; healthResultError?: any; k8sResult?: FirehoseResult<R>; }>>

yes

Loader for popup content. If defined, a health item will be represented as a link which opens popup with given content.

popupTitle

string

yes

console.dashboards/overview/inventory/item

Adds a resource tile to the overview inventory card.

Name Value Type Optional Description

model

CodeRef<T>

no

The model for resource which will be fetched. Used to get the model’s label or abbr.

mapper

CodeRef<StatusGroupMapper<T, R>>

yes

Function which maps various statuses to groups.

additionalResources

CodeRef<WatchK8sResources<R>>

yes

Additional resources which will be fetched and passed to the mapper function.

console.dashboards/overview/inventory/item/group

Adds an inventory status group.

Name Value Type Optional Description

id

string

no

The id of the status group.

icon

CodeRef<React.ReactElement<any, string | React.JSXElementConstructor<any>>>

no

React component representing the status group icon.

console.dashboards/overview/inventory/item/replacement

Replaces an overview inventory card.

Name Value Type Optional Description

model

CodeRef<T>

no

The model for resource which will be fetched. Used to get the model’s label or abbr.

mapper

CodeRef<StatusGroupMapper<T, R>>

yes

Function which maps various statuses to groups.

additionalResources

CodeRef<WatchK8sResources<R>>

yes

Additional resources which will be fetched and passed to the mapper function.

console.dashboards/overview/prometheus/activity/resource

Adds an activity to the Activity Card of Prometheus Overview Dashboard where the triggering of activity is based on watching a Kubernetes resource.

Name Value Type Optional Description

queries

string[]

no

Queries to watch

component

CodeRef<React.ComponentType<PrometheusActivityProps>>

no

The action component.

isActivity

CodeRef<(results: PrometheusResponse[]) ⇒ boolean>

yes

Function which determines if the given resource represents the action. If not defined, every resource represents activity.

console.dashboards/project/overview/item

Adds a resource tile to the project overview inventory card.

Name Value Type Optional Description

model

CodeRef<T>

no

The model for resource which will be fetched. Used to get the model’s label or abbr.

mapper

CodeRef<StatusGroupMapper<T, R>>

yes

Function which maps various statuses to groups.

additionalResources

CodeRef<WatchK8sResources<R>>

yes

Additional resources which will be fetched and passed to the mapper function.

console.dashboards/tab

Adds a new dashboard tab, placed after the Overview tab.

Name Value Type Optional Description

id

string

no

A unique tab identifier, used as tab link href and when adding cards to this tab.

navSection

'home' | 'storage'

no

Navigation section to which the tab belongs to.

title

string

no

The title of the tab.

console.file-upload

Name Value Type Optional Description

fileExtensions

string[]

no

Supported file extensions.

handler

CodeRef<FileUploadHandler>

no

Function which handles the file drop action.

console.flag

Gives full control over the web console feature flags.

Name Value Type Optional Description

handler

CodeRef<FeatureFlagHandler>

no

Used to set or unset arbitrary feature flags.

console.flag/hookProvider

Gives full control over the web console feature flags with hook handlers.

Name Value Type Optional Description

handler

CodeRef<FeatureFlagHandler>

no

Used to set or unset arbitrary feature flags.

console.flag/model

Adds a new web console feature flag driven by the presence of a CRD on the cluster.

Name Value Type Optional Description

flag

string

no

The name of the flag to set once the CRD is detected.

model

ExtensionK8sModel

no

The model which refers to a CustomResourceDefinition.

console.global-config

Name Value Type Optional Description

id

string

no

Unique identifier for the cluster config resource instance.

name

string

no

The name of the cluster config resource instance.

model

ExtensionK8sModel

no

The model which refers to a cluster config resource.

namespace

string

no

The namespace of the cluster config resource instance.

console.model-metadata

Customize the display of models by overriding values retrieved and generated through API discovery.

Name Value Type Optional Description

model

ExtensionK8sGroupModel

no

The model to customize. May specify only a group, or optional version and kind.

badge

ModelBadge

yes

Whether to consider this model reference as Technology Preview or Developer Preview.

color

string

yes

The color to associate to this model.

label

string

yes

Override the label. Requires kind be provided.

labelPlural

string

yes

Override the plural label. Requires kind be provided.

abbr

string

yes

Customize the abbreviation. Defaults to all uppercase characters in kind, up to 4 characters long. Requires that kind is provided.

console.navigation/href

Name Value Type Optional Description

id

string

no

A unique identifier for this item.

name

string

no

The name of this item.

href

string

no

The link href value.

perspective

string

yes

The perspective ID to which this item belongs to. If not specified, contributes to the default perspective.

section

string

yes

Navigation section to which this item belongs to. If not specified, render this item as a top level link.

dataAttributes

{ [key: string]: string; }

yes

Adds data attributes to the DOM.

startsWith

string[]

yes

Mark this item as active when the URL starts with one of these paths.

insertBefore

string | string[]

yes

Insert this item before the item referenced here. For arrays, the first one found in order is used.

insertAfter

string | string[]

yes

Insert this item after the item referenced here. For arrays, the first one found in order is used. insertBefore takes precedence.

namespaced

boolean

yes

If true, adds /ns/active-namespace to the end.

prefixNamespaced

boolean

yes

If true, adds /k8s/ns/active-namespace to the beginning

console.navigation/resource-cluster

Name Value Type Optional Description

id

string

no

A unique identifier for this item.

model

ExtensionK8sModel

no

The model for which this navigation item links to.

perspective

string

yes

The perspective ID to which this item belongs to. If not specified, contributes to the default perspective.

section

string

yes

Navigation section to which this item belongs to. If not specified, render this item as a top-level link.

dataAttributes

{ [key: string]: string; }

yes

Adds data attributes to the DOM.

startsWith

string[]

yes

Mark this item as active when the URL starts with one of these paths.

insertBefore

string | string[]

yes

Insert this item before the item referenced here. For arrays, the first one found in order is used.

insertAfter

string | string[]

yes

Insert this item after the item referenced here. For arrays, the first one found in order is used. insertBefore takes precedence.

name

string

yes

Overrides the default name. If not supplied the name of the link will equal the plural value of the model.

console.navigation/resource-ns

Name Value Type Optional Description

id

string

no

A unique identifier for this item.

model

ExtensionK8sModel

no

The model for which this navigation item links to.

perspective

string

yes

The perspective ID to which this item belongs to. If not specified, contributes to the default perspective.

section

string

yes

Navigation section to which this item belongs to. If not specified, render this item as a top-level link.

dataAttributes

{ [key: string]: string; }

yes

Adds data attributes to the DOM.

startsWith

string[]

yes

Mark this item as active when the URL starts with one of these paths.

insertBefore

string | string[]

yes

Insert this item before the item referenced here. For arrays, the first one found in order is used.

insertAfter

string | string[]

yes

Insert this item after the item referenced here. For arrays, the first one found in order is used. insertBefore takes precedence.

name

string

yes

Overrides the default name. If not supplied the name of the link will equal the plural value of the model.

console.navigation/section

Name Value Type Optional Description

id

string

no

A unique identifier for this item.

perspective

string

yes

The perspective ID to which this item belongs to. If not specified, contributes to the default perspective.

dataAttributes

{ [key: string]: string; }

yes

Adds data attributes to the DOM.

insertBefore

string | string[]

yes

Insert this item before the item referenced here. For arrays, the first one found in order is used.

insertAfter

string | string[]

yes

Insert this item after the item referenced here. For arrays, the first one found in order is used. insertBefore takes precedence.

name

string

yes

Name of this section. If not supplied, only a separator will be shown above the section.

console.navigation/separator

Name Value Type Optional Description

id

string

no

A unique identifier for this item.

perspective

string

yes

The perspective ID to which this item belongs to. If not specified, contributes to the default perspective.

section

string

yes

Navigation section to which this item belongs to. If not specified, render this item as a top level link.

dataAttributes

{ [key: string]: string; }

yes

Adds data attributes to the DOM.

insertBefore

string | string[]

yes

Insert this item before the item referenced here. For arrays, the first one found in order is used.

insertAfter

string | string[]

yes

Insert this item after the item referenced here. For arrays, the first one found in order is used. insertBefore takes precedence.

console.page/resource/details

Name Value Type Optional Description

model

ExtensionK8sGroupKindModel

no

The model for which this resource page links to.

component

CodeRef<React.ComponentType<{ match: match<{}>; namespace: string; model: ExtensionK8sModel; }>>

no

The component to be rendered when the route matches.

console.page/resource/list

Adds new resource list page to Console router.

Name Value Type Optional Description

model

ExtensionK8sGroupKindModel

no

The model for which this resource page links to.

component

CodeRef<React.ComponentType<{ match: match<{}>; namespace: string; model: ExtensionK8sModel; }>>

no

The component to be rendered when the route matches.

console.page/route

Adds a new page to the web console router. See React Router.

Name Value Type Optional Description

component

CodeRef<React.ComponentType<RouteComponentProps<{}, StaticContext, any>>>

no

The component to be rendered when the route matches.

path

string | string[]

no

Valid URL path or array of paths that path-to-regexp@^1.7.0 understands.

perspective

string

yes

The perspective to which this page belongs to. If not specified, contributes to all perspectives.

exact

boolean

yes

When true, will only match if the path matches the location.pathname exactly.

console.page/route/standalone

Adds a new standalone page, rendered outside the common page layout, to the web console router. See React Router.

Name Value Type Optional Description

component

CodeRef<React.ComponentType<RouteComponentProps<{}, StaticContext, any>>>

no

The component to be rendered when the route matches.

path

string | string[]

no

Valid URL path or array of paths that path-to-regexp@^1.7.0 understands.

exact

boolean

yes

When true, will only match if the path matches the location.pathname exactly.

console.perspective

Name Value Type Optional Description

id

string

no

The perspective identifier.

name

string

no

The perspective display name.

icon

CodeRef<LazyComponent>

no

The perspective display icon.

landingPageURL

CodeRef<(flags: { [key: string]: boolean; }, isFirstVisit: boolean) ⇒ string>

no

The function to get perspective landing page URL.

importRedirectURL

CodeRef<(namespace: string) ⇒ string>

no

The function to get redirect URL for import flow.

default

boolean

yes

Whether the perspective is the default. There can only be one default.

defaultPins

ExtensionK8sModel[]

yes

Default pinned resources on the nav

usePerspectiveDetection

CodeRef<() ⇒ [boolean, boolean]>

yes

The hook to detect default perspective

console.project-overview/inventory-item

Adds a new inventory item into the Project Overview page.

Name Value Type Optional Description

component

CodeRef<React.ComponentType<{ projectName: string; }>>

no

The component to be rendered.

console.project-overview/utilization-item

Adds a new project overview utilization item.

Name Value Type Optional Description

title

string

no

The title of the utilization item.

getUtilizationQuery

CodeRef<GetProjectQuery>

no

Prometheus utilization query.

humanize

CodeRef<Humanize>

no

Convert Prometheus data to human-readable form.

getTotalQuery

CodeRef<GetProjectQuery>

yes

Prometheus total query.

getRequestQuery

CodeRef<GetProjectQuery>

yes

Prometheus request query.

getLimitQuery

CodeRef<GetProjectQuery>

yes

Prometheus limit query.

TopConsumerPopover

CodeRef<React.ComponentType<TopConsumerPopoverProps>>

yes

Shows the top consumer popover instead of plain value.

console.pvc/alert

Name Value Type Optional Description

alert

CodeRef<React.ComponentType<{ pvc: K8sResourceCommon; }>>

no

The alert component.

console.pvc/create-prop

Name Value Type Optional Description

label

string

no

Label for the create prop action.

path

string

no

Path for the create prop action.

console.pvc/delete

Name Value Type Optional Description

predicate

CodeRef<(pvc: K8sResourceCommon) ⇒ boolean>

no

Predicate that tells whether to use the extension or not.

onPVCKill

CodeRef<(pvc: K8sResourceCommon) ⇒ Promise<void>>

no

Method for the PVC delete operation.

alert

CodeRef<React.ComponentType<{ pvc: K8sResourceCommon; }>>

no

Alert component to show additional information.

console.pvc/status

Name Value Type Optional Description

priority

number

no

Priority for the status component. A larger value means higher priority.

status

CodeRef<React.ComponentType<{ pvc: K8sResourceCommon; }>>

no

The status component.

predicate

CodeRef<(pvc: K8sResourceCommon) ⇒ boolean>

no

Predicate that tells whether to render the status component or not.

console.redux-reducer

Adds new reducer to Console Redux store which operates on plugins.<scope> substate.

Name Value Type Optional Description

scope

string

no

The key to represent the reducer-managed substate within the Redux state object.

reducer

CodeRef<Reducer<any, AnyAction>>

no

The reducer function, operating on the reducer-managed substate.

console.resource/create

Name Value Type Optional Description

model

ExtensionK8sModel

no

The model for which this create resource page will be rendered.

component

CodeRef<React.ComponentType<CreateResourceComponentProps>>

no

The component to be rendered when the model matches

console.storage-provider

Name Value Type Optional Description

name

string

no

Component

CodeRef<React.ComponentType<Partial<RouteComponentProps<{}, StaticContext, any>>>>

no

console.tab/horizontalNav

Name Value Type Optional Description

model

ExtensionK8sKindVersionModel

no

The model for which this provider show tab.

page

{ name: string; href: string; }

no

The page to be show in horizontal tab. It takes tab name as name and href of the tab

component

CodeRef<React.ComponentType<PageComponentProps<K8sResourceCommon>>>

no

The component to be rendered when the route matches.

console.telemetry/listener

Name Value Type Optional Description

listener

CodeRef<TelemetryEventListener>

no

Listen for telemetry events

console.topology/adapter/build

BuildAdapter contributes an adapter to adapt element to data that can be used by the Build component.

Name Value Type Optional Description

adapt

`CodeRef<(element: GraphElement) ⇒ AdapterDataType<BuildConfigData>

undefined>`

no

console.topology/adapter/network

NetworkAdapater contributes an adapter to adapt element to data that can be used by the Networking component.

Name Value Type Optional Description

adapt

`CodeRef<(element: GraphElement) ⇒ NetworkAdapterType

undefined>`

no

console.topology/adapter/pod

PodAdapter contributes an adapter to adapt element to data that can be used by the Pod component.

Name Value Type Optional Description

adapt

`CodeRef<(element: GraphElement) ⇒ AdapterDataType<PodsAdapterDataType>

undefined>`

no

console.topology/component/factory

Getter for a ViewComponentFactory.

Name Value Type Optional Description

getFactory

CodeRef<ViewComponentFactory>

no

Getter for a ViewComponentFactory.

console.topology/create/connector

Getter for the create connector function.

Name Value Type Optional Description

getCreateConnector

CodeRef<CreateConnectionGetter>

no

Getter for the create connector function.

console.topology/data/factory

Topology Data Model Factory Extension

Name Value Type Optional Description

id

string

no

Unique ID for the factory.

priority

number

no

Priority for the factory

resources

WatchK8sResourcesGeneric

yes

Resources to be fetched from useK8sWatchResources hook.

workloadKeys

string[]

yes

Keys in resources containing workloads.

getDataModel

CodeRef<TopologyDataModelGetter>

yes

Getter for the data model factory.

isResourceDepicted

CodeRef<TopologyDataModelDepicted>

yes

Getter for function to determine if a resource is depicted by this model factory.

getDataModelReconciler

CodeRef<TopologyDataModelReconciler>

yes

Getter for function to reconcile data model after all extensions' models have loaded.

console.topology/decorator/provider

Topology Decorator Provider Extension

Name Value Type Optional Description

id

string

no

priority

number

no

quadrant

TopologyQuadrant

no

decorator

CodeRef<TopologyDecoratorGetter>

no

console.topology/details/resource-alert

DetailsResourceAlert contributes an alert for specific topology context or graph element.

Name Value Type Optional Description

id

string

no

The ID of this alert. Used to save state if the alert should not be shown after dismissed.

contentProvider

`CodeRef<(element: GraphElement) ⇒ DetailsResourceAlertContent

null>`

no

DetailsResourceLink contributes a link for specific topology context or graph element.

Name Value Type Optional Description

link

`CodeRef<(element: GraphElement) ⇒ React.Component

undefined>`

no

Return the resource link if provided, otherwise undefined. Use the ResourceIcon and ResourceLink properties for styles.

priority

number

yes

console.topology/details/tab

DetailsTab contributes a tab for the topology details panel.

Name Value Type Optional Description

id

string

no

A unique identifier for this details tab.

label

string

no

The tab label to display in the UI.

insertBefore

string | string[]

yes

Insert this item before the item referenced here. For arrays, the first one found in order is used.

insertAfter

string | string[]

yes

Insert this item after the item referenced here. For arrays, the first one found in order is used. The insertBefore value takes precedence.

console.topology/details/tab-section

DetailsTabSection contributes a section for a specific tab in the topology details panel.

Name Value Type Optional Description

id

string

no

A unique identifier for this details tab section.

tab

string

no

The parent tab ID that this section should contribute to.

provider

CodeRef<DetailsTabSectionExtensionHook>

no

A hook that returns a component, or if null or undefined renders in the topology sidebar.SDK component: <Section title=\{}>…​ padded area

section

`CodeRef<(element: GraphElement, renderNull?: () ⇒ null) ⇒ React.Component

undefined>`

no

@deprecated Fallback if no provider is defined. renderNull is a no-op already.

insertBefore

string | string[]

yes

Insert this item before the item referenced here.For arrays, the first one found in order is used.

insertAfter

string | string[]

yes

console.topology/display/filters

Topology Display Filters Extension

Name Value Type Optional Description

getTopologyFilters

CodeRef<() ⇒ TopologyDisplayOption[]>

no

applyDisplayOptions

CodeRef<TopologyApplyDisplayOptions>

no

console.topology/relationship/provider

Topology relationship provider connector extension

Name Value Type Optional Description

provides

CodeRef<RelationshipProviderProvides>

no

tooltip

string

no

create

CodeRef<RelationshipProviderCreate>

no

priority

number

no

console.user-preference/group

Name Value Type Optional Description

id

string

no

ID used to identify the user preference group.

label

string

no

The label of the user preference group

insertBefore

string

yes

ID of user preference group b