2018-12-23 02:15:32 -06:00
|
|
|
// Libraries
|
2018-11-12 10:54:44 -06:00
|
|
|
import _ from 'lodash';
|
|
|
|
import React, { PureComponent } from 'react';
|
2018-12-23 02:15:32 -06:00
|
|
|
|
2019-02-15 05:55:35 -06:00
|
|
|
// Components
|
|
|
|
import { AlertBox } from 'app/core/components/AlertBox/AlertBox';
|
|
|
|
|
2018-12-23 02:15:32 -06:00
|
|
|
// Types
|
2019-04-29 10:17:35 -05:00
|
|
|
import { AppNotificationSeverity } from 'app/types';
|
|
|
|
import { PanelPluginMeta, PanelProps, PanelPlugin, PluginType } from '@grafana/ui';
|
2018-11-12 10:54:44 -06:00
|
|
|
|
|
|
|
interface Props {
|
|
|
|
pluginId: string;
|
|
|
|
}
|
|
|
|
|
2018-11-13 00:54:02 -06:00
|
|
|
class PanelPluginNotFound extends PureComponent<Props> {
|
2018-11-12 10:54:44 -06:00
|
|
|
constructor(props) {
|
|
|
|
super(props);
|
|
|
|
}
|
|
|
|
|
|
|
|
render() {
|
2018-11-13 00:54:02 -06:00
|
|
|
const style = {
|
|
|
|
display: 'flex',
|
2018-11-13 01:40:42 -06:00
|
|
|
alignItems: 'center',
|
2019-02-15 05:55:35 -06:00
|
|
|
justifyContent: 'center',
|
2018-11-13 00:54:02 -06:00
|
|
|
height: '100%',
|
|
|
|
};
|
|
|
|
|
|
|
|
return (
|
|
|
|
<div style={style}>
|
2019-02-21 09:07:07 -06:00
|
|
|
<AlertBox severity={AppNotificationSeverity.Error} title={`Panel plugin not found: ${this.props.pluginId}`} />
|
2018-11-13 00:54:02 -06:00
|
|
|
</div>
|
|
|
|
);
|
2018-11-12 10:54:44 -06:00
|
|
|
}
|
|
|
|
}
|
2018-11-13 00:54:02 -06:00
|
|
|
|
2019-04-26 12:16:38 -05:00
|
|
|
export function getPanelPluginNotFound(id: string): PanelPluginMeta {
|
2018-11-13 00:54:02 -06:00
|
|
|
const NotFound = class NotFound extends PureComponent<PanelProps> {
|
|
|
|
render() {
|
|
|
|
return <PanelPluginNotFound pluginId={id} />;
|
|
|
|
}
|
|
|
|
};
|
|
|
|
|
|
|
|
return {
|
|
|
|
id: id,
|
|
|
|
name: id,
|
|
|
|
sort: 100,
|
2019-04-12 06:46:42 -05:00
|
|
|
type: PluginType.panel,
|
2018-11-13 00:54:02 -06:00
|
|
|
module: '',
|
|
|
|
baseUrl: '',
|
2019-02-12 09:05:29 -06:00
|
|
|
dataFormats: [],
|
2018-11-13 01:09:12 -06:00
|
|
|
info: {
|
|
|
|
author: {
|
|
|
|
name: '',
|
|
|
|
},
|
|
|
|
description: '',
|
|
|
|
links: [],
|
|
|
|
logos: {
|
|
|
|
large: '',
|
|
|
|
small: '',
|
|
|
|
},
|
|
|
|
screenshots: [],
|
|
|
|
updated: '',
|
|
|
|
version: '',
|
2018-11-13 00:54:02 -06:00
|
|
|
},
|
2019-04-29 11:20:58 -05:00
|
|
|
panelPlugin: new PanelPlugin(NotFound),
|
2019-04-04 11:30:15 -05:00
|
|
|
angularPlugin: null,
|
2018-11-13 00:54:02 -06:00
|
|
|
};
|
|
|
|
}
|