feat: migrate old saved columns keys to name (#8747)

This commit is contained in:
Yunus M 2025-08-08 14:41:34 +05:30 committed by GitHub
parent 932918e3a4
commit 75d189162b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -1,6 +1,7 @@
/* eslint-disable sonarjs/cognitive-complexity */
/* eslint-disable no-empty */
import { TelemetryFieldKey } from 'api/v5/v5';
import { has } from 'lodash-es';
import { useEffect, useState } from 'react';
import { DataSource } from 'types/common/queryBuilder';
@ -8,6 +9,14 @@ import logsLoaderConfig from '../configs/logsLoaderConfig';
import tracesLoaderConfig from '../configs/tracesLoaderConfig';
import { FormattingOptions, Preferences } from '../types';
const migrateColumns = (columns: any): any =>
columns.map((column: any) => {
if (has(column, 'key') && !has(column, 'name')) {
return { ...column, name: column.key };
}
return column;
});
// Generic preferences loader that works with any config
async function preferencesLoader<T>(config: {
priority: readonly string[];
@ -26,11 +35,16 @@ async function preferencesLoader<T>(config: {
const validColumnsResult = results.find(
({ result }) => result.columns?.length,
);
const validFormattingResult = results.find(({ result }) => result.formatting);
const migratedColumns = validColumnsResult?.result.columns
? migrateColumns(validColumnsResult?.result.columns)
: undefined;
// Combine valid results or fallback to default
const finalResult = {
columns: validColumnsResult?.result.columns || config.default().columns,
columns: migratedColumns || config.default().columns,
formatting:
validFormattingResult?.result.formatting || config.default().formatting,
};