From 935076c349f614e4083c0e3036a10d484084e43a Mon Sep 17 00:00:00 2001 From: timo Date: Thu, 9 May 2024 20:30:33 +0200 Subject: [PATCH] SQL Query Editor: Fix label-for IDs, associate "Table" label (#86944) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * SQL Query Editor: Fix label-for IDs, associate "Table" label * Fix mysql e2e test --------- Co-authored-by: Zoltán Bedi --- e2e/plugin-e2e/mysql/mysql.spec.ts | 2 +- .../src/components/DatasetSelector.tsx | 13 +++++++++++-- .../grafana-sql/src/components/QueryHeader.tsx | 15 +++++++++------ .../grafana-sql/src/components/TableSelector.tsx | 4 +++- 4 files changed, 24 insertions(+), 10 deletions(-) diff --git a/e2e/plugin-e2e/mysql/mysql.spec.ts b/e2e/plugin-e2e/mysql/mysql.spec.ts index c54d19c3b2a..8adfd456fbc 100644 --- a/e2e/plugin-e2e/mysql/mysql.spec.ts +++ b/e2e/plugin-e2e/mysql/mysql.spec.ts @@ -54,7 +54,7 @@ test('visual query builder should handle time filter macro', async ({ explorePag await select.locator(page.getByText('createdAt')).click(); // Toggle where row - await page.getByLabel('Filter').click(); + await page.getByLabel('Filter').last().click(); // Click add filter button await page.getByRole('button', { name: 'Add filter' }).click(); diff --git a/packages/grafana-sql/src/components/DatasetSelector.tsx b/packages/grafana-sql/src/components/DatasetSelector.tsx index 11fcac922fb..bed91f5f5ca 100644 --- a/packages/grafana-sql/src/components/DatasetSelector.tsx +++ b/packages/grafana-sql/src/components/DatasetSelector.tsx @@ -14,10 +14,18 @@ export interface DatasetSelectorProps extends ResourceSelectorProps { preconfiguredDataset: string; dialect: SQLDialect; onChange: (v: SelectableValue) => void; + inputId?: string | undefined; } -export const DatasetSelector = ({ dataset, db, dialect, onChange, preconfiguredDataset }: DatasetSelectorProps) => { - /* +export const DatasetSelector = ({ + dataset, + db, + dialect, + onChange, + inputId, + preconfiguredDataset, +}: DatasetSelectorProps) => { + /* The behavior of this component - for MSSQL and MySQL datasources - is based on whether the user chose to create a datasource with or without a default database (preconfiguredDataset). If the user configured a default database, this selector should only allow that single preconfigured database option to be selected. If the user chose to NOT assign/configure a default database, @@ -68,6 +76,7 @@ export const DatasetSelector = ({ dataset, db, dialect, onChange, preconfiguredD return (