signoz/frontend/src/lib/dashboard/getUpdatedLayout.ts
Palash Gupta 2d60805b28
fix: empty widget is handled (#3830)
* fix: empty widget is updated

* chore: widget is updated

* fix: handling is updated
2023-11-02 17:00:34 +05:30

24 lines
674 B
TypeScript

import { PANEL_TYPES } from 'constants/queryBuilder';
import { Layout } from 'react-grid-layout';
export const getUpdatedLayout = (layout?: Layout[]): Layout[] => {
let widgetLayout = layout;
// filter empty from i from i due to previous version of signoz
widgetLayout = layout?.filter((i) => i.i !== 'empty');
const seen = new Set();
// filter duplicate i values
widgetLayout = widgetLayout?.filter((i) => {
const duplicate = seen.has(i.i);
seen.add(i.i);
return !duplicate;
});
// filter EMPTY_WIDGET from i due to previous version of signoz
widgetLayout = widgetLayout?.filter((i) => i.i !== PANEL_TYPES.EMPTY_WIDGET);
return widgetLayout || [];
};