mirror of
https://github.com/grafana/grafana.git
synced 2025-02-14 01:23:32 -06:00
25 lines
705 B
TypeScript
25 lines
705 B
TypeScript
import { PanelModel, FieldConfigSource, DataLink } from '@grafana/data';
|
|
|
|
/**
|
|
* Called when upgrading from a previously saved versoin
|
|
*/
|
|
export const graphPanelMigrationHandler = (panel: PanelModel<any>): Partial<any> => {
|
|
const fieldConfig: FieldConfigSource = panel.fieldConfig ?? {
|
|
defaults: {},
|
|
overrides: [],
|
|
};
|
|
|
|
const options = panel.options || {};
|
|
|
|
// Move <7.1 dataLinks to the field section
|
|
if (options.dataLinks) {
|
|
fieldConfig.defaults.links = options.dataLinks as DataLink[];
|
|
delete options.dataLinks;
|
|
}
|
|
|
|
// Mutate the original panel state (only necessary because it is angular)
|
|
panel.options = options;
|
|
panel.fieldConfig = fieldConfig;
|
|
return options;
|
|
};
|