Files
Ivan Mikheykin e987dee850 feat: use grafana-toolkit to build a plugin
- fix linter warnings
- use yarn: remove Gruntfile.js and package-lock.json

++
2021-02-16 17:43:48 +03:00

59 lines
1.2 KiB
TypeScript

import { StatusHeatmapCtrl } from './module';
let emptyTooltipItem = {
urlText: '',
urlTemplate: '',
urlIcon: 'external-link',
urlToLowerCase: true,
valueDateFormat: '',
};
export class TooltipEditorCtrl {
panel: any;
panelCtrl: StatusHeatmapCtrl;
/** @ngInject */
constructor($scope: any) {
$scope.editor = this;
this.panelCtrl = $scope.ctrl as StatusHeatmapCtrl;
this.panel = this.panelCtrl.panel;
}
render() {
this.panelCtrl.render();
}
onAddUrl() {
this.panel.tooltip.items.push(Object.assign({}, emptyTooltipItem));
this.render();
}
onRemoveUrl(index: number) {
this.panel.tooltip.items.splice(index, 1);
this.render();
}
onRemoveUrls() {
this.panel.tooltip.items = [];
this.render();
}
getFAIconClasses() {
return ['external-link', 'plus', 'anchor', 'ban', 'globe', 'gear', 'cloud', 'download', 'cloud-download'];
}
getValueDateFormats() {
return ['YYYY/MM/DD/HH_mm_ss', 'YYYYMMDDHHmmss', 'YYYY-MM-DD-HH-mm-ss'];
}
}
export function tooltipEditorCtrl() {
'use strict';
return {
restrict: 'E',
scope: true,
templateUrl: 'public/plugins/flant-statusmap-panel/partials/tooltip_editor.html',
controller: TooltipEditorCtrl,
};
}