diff --git a/packages/grafana-ui/src/types/plugin.ts b/packages/grafana-ui/src/types/plugin.ts index f47591e2f11..c6d83cb349c 100644 --- a/packages/grafana-ui/src/types/plugin.ts +++ b/packages/grafana-ui/src/types/plugin.ts @@ -10,6 +10,7 @@ export enum PluginType { panel = 'panel', datasource = 'datasource', app = 'app', + renderer = 'renderer', } export interface PluginMeta { diff --git a/public/app/features/plugins/PluginPage.tsx b/public/app/features/plugins/PluginPage.tsx index 6f83420a61e..ab1e85c1d32 100644 --- a/public/app/features/plugins/PluginPage.tsx +++ b/public/app/features/plugins/PluginPage.tsx @@ -3,21 +3,20 @@ import React, { PureComponent } from 'react'; import { hot } from 'react-hot-loader'; import { connect } from 'react-redux'; import find from 'lodash/find'; - // Types import { UrlQueryMap } from '@grafana/runtime'; -import { StoreState, AppNotificationSeverity } from 'app/types'; +import { AppNotificationSeverity, StoreState } from 'app/types'; import { Alert, - PluginType, + AppPlugin, GrafanaPlugin, - PluginInclude, PluginDependencies, + PluginInclude, + PluginIncludeType, PluginMeta, PluginMetaInfo, + PluginType, Tooltip, - AppPlugin, - PluginIncludeType, } from '@grafana/ui'; import { NavModel, NavModelItem } from '@grafana/data'; @@ -63,6 +62,9 @@ function loadPlugin(pluginId: string): Promise { }); }); } + if (info.type === PluginType.renderer) { + return Promise.resolve({ meta: info } as GrafanaPlugin); + } return Promise.reject('Unknown Plugin type: ' + info.type); }); }