Pārlūkot izejas kodu

prevOptions should be optional

ryan 6 gadi atpakaļ
vecāks
revīzija
f9fb1210e9

+ 1 - 1
packages/grafana-ui/src/types/panel.ts

@@ -32,7 +32,7 @@ export type PanelMigrationHook<TOptions = any> = (options: Partial<TOptions>) =>
 export type PanelTypeChangedHook<TOptions = any> = (
 export type PanelTypeChangedHook<TOptions = any> = (
   options: Partial<TOptions>,
   options: Partial<TOptions>,
   prevPluginId: string,
   prevPluginId: string,
-  prevOptions: any
+  prevOptions?: any
 ) => Partial<TOptions>;
 ) => Partial<TOptions>;
 
 
 export class ReactPanelPlugin<TOptions = any> {
 export class ReactPanelPlugin<TOptions = any> {

+ 8 - 6
public/app/plugins/panel/singlestat2/module.tsx

@@ -11,13 +11,15 @@ const optionsToKeep = ['valueOptions', 'stat', 'maxValue', 'maxValue', 'threshol
 export const singleStatBaseOptionsCheck = (
 export const singleStatBaseOptionsCheck = (
   options: Partial<SingleStatBaseOptions>,
   options: Partial<SingleStatBaseOptions>,
   prevPluginId: string,
   prevPluginId: string,
-  prevOptions: any
+  prevOptions?: any
 ) => {
 ) => {
-  optionsToKeep.forEach(v => {
-    if (prevOptions.hasOwnProperty(v)) {
-      options[v] = cloneDeep(prevOptions.display);
-    }
-  });
+  if (prevOptions) {
+    optionsToKeep.forEach(v => {
+      if (prevOptions.hasOwnProperty(v)) {
+        options[v] = cloneDeep(prevOptions.display);
+      }
+    });
+  }
   return options;
   return options;
 };
 };