import { useMemo } from 'react' import { DataGrid } from 'devextreme-react' import { Column, Paging, Scrolling, SearchPanel, Export, Selection } from 'devextreme-react/data-grid' import type { SqlQueryExecutionResultDto } from '@/proxy/sql-query-manager/models' import { useLocalization } from '@/utils/hooks/useLocalization' import { FaTimesCircle } from 'react-icons/fa' interface SqlResultsGridProps { result: SqlQueryExecutionResultDto } const SqlResultsGrid = ({ result }: SqlResultsGridProps) => { const { translate } = useLocalization() const columns = useMemo(() => { // Get columns from metadata if available if (result.metadata?.columns && Array.isArray(result.metadata.columns)) { return result.metadata.columns } // Otherwise infer from data if (result.data && result.data.length > 0) { const firstRow = result.data[0] return Object.keys(firstRow).map((key) => ({ name: key, dataType: typeof firstRow[key], isNullable: true, })) } return [] }, [result]) const dataSource = useMemo(() => { return result.data || [] }, [result]) if (!result.success) { return (