diff --git a/.betterer.results b/.betterer.results index fe705e6ab85..230da2f44fa 100644 --- a/.betterer.results +++ b/.betterer.results @@ -3121,9 +3121,10 @@ exports[`better eslint`] = { [0, 0, 0, "Do not use any type assertions.", "2"], [0, 0, 0, "Do not use any type assertions.", "3"], [0, 0, 0, "Do not use any type assertions.", "4"], - [0, 0, 0, "Unexpected any. Specify a different type.", "5"], - [0, 0, 0, "Do not use any type assertions.", "6"], - [0, 0, 0, "Unexpected any. Specify a different type.", "7"] + [0, 0, 0, "Do not use any type assertions.", "5"], + [0, 0, 0, "Unexpected any. Specify a different type.", "6"], + [0, 0, 0, "Do not use any type assertions.", "7"], + [0, 0, 0, "Unexpected any. Specify a different type.", "8"] ], "public/app/features/dashboard/components/DashboardRow/DashboardRow.test.tsx:5381": [ [0, 0, 0, "Unexpected any. Specify a different type.", "0"] diff --git a/public/app/features/dashboard/components/DashboardPrompt/DashboardPrompt.tsx b/public/app/features/dashboard/components/DashboardPrompt/DashboardPrompt.tsx index c5602a8cc44..8956e55afd2 100644 --- a/public/app/features/dashboard/components/DashboardPrompt/DashboardPrompt.tsx +++ b/public/app/features/dashboard/components/DashboardPrompt/DashboardPrompt.tsx @@ -146,6 +146,11 @@ export function ignoreChanges(current: DashboardModel | null, original: object | return true; } + // Ignore changes if original is unsaved + if ((original as DashboardModel).version === 0) { + return true; + } + // Ignore changes if the user has been signed out if (!contextSrv.isSignedIn) { return true; diff --git a/public/app/features/dashboard/components/GenAI/utils.test.ts b/public/app/features/dashboard/components/GenAI/utils.test.ts index cf3c4672c44..321675fcebc 100644 --- a/public/app/features/dashboard/components/GenAI/utils.test.ts +++ b/public/app/features/dashboard/components/GenAI/utils.test.ts @@ -47,19 +47,19 @@ describe('getDashboardChanges', () => { ' "graphTooltip": 0,\n' + '- "schemaVersion": 37,\n' + '+ "schemaVersion": 38,\n' + + ' "version": 1,\n' + ' "timezone": "",\n' + ' "panels": [\n' + ' {\n' + - ' "type": "timeseries",\n' + - ' "title": "Panel 1",\n' + ' "type": "timeseries",\n' ); expect(result.userChanges).toEqual( '===================================================================\n' + '--- Before user changes\t\n' + '+++ After user changes\t\n' + - '@@ -3,16 +3,17 @@\n' + - ' "graphTooltip": 0,\n' + + '@@ -4,16 +4,17 @@\n' + ' "schemaVersion": 38,\n' + + ' "version": 1,\n' + ' "timezone": "",\n' + ' "panels": [\n' + ' {\n' + diff --git a/public/app/features/dashboard/state/__fixtures__/dashboardFixtures.ts b/public/app/features/dashboard/state/__fixtures__/dashboardFixtures.ts index d1c6f323c5a..c4259b5eb09 100644 --- a/public/app/features/dashboard/state/__fixtures__/dashboardFixtures.ts +++ b/public/app/features/dashboard/state/__fixtures__/dashboardFixtures.ts @@ -22,6 +22,7 @@ export function createDashboardModelFixture( editable: true, graphTooltip: defaultDashboardCursorSync, schemaVersion: 1, + version: 1, timezone: '', ...dashboardInput, };