Files
Ivana Huckova 58a3e0ae86 Remove @grafana/experimental in @grafana/o11y-ds-frontend and @grafana/sql (#99501)
* Remove @grafana/experimental in @grafana/o11y-ds-frontend

* Remove @grafana/experimental in @grafana/sql

* Fix mock in test
2025-01-28 10:48:19 +01:00

31 lines
892 B
TypeScript

import { EditorMode } from '@grafana/plugin-ui';
import { QueryFormat, SQLQuery } from './types';
import { createFunctionField, setGroupByField } from './utils/sql.utils';
export function applyQueryDefaults(q?: SQLQuery): SQLQuery {
let editorMode = q?.editorMode || EditorMode.Builder;
// Switching to code editor if the query was created before visual query builder was introduced.
if (q?.editorMode === undefined && q?.rawSql !== undefined) {
editorMode = EditorMode.Code;
}
const result: SQLQuery = {
...q,
refId: q?.refId || 'A',
format: q?.format !== undefined ? q.format : QueryFormat.Table,
rawSql: q?.rawSql || '',
editorMode,
sql: q?.sql ?? {
columns: [createFunctionField()],
groupBy: [setGroupByField()],
limit: 50,
},
};
return result;
}
export type QueryWithDefaults = ReturnType<typeof applyQueryDefaults>;