Scene: Variables interpolation formats and multi value handling (#58591)

* Component that can cache and extract variable dependencies

* Component that can cache and extract variable dependencies

* Updates

* Refactoring

* Lots of refactoring and iterations of supporting both re-rendering and query re-execution

* Updated SceneCanvasText

* Updated name of file

* Updated

* Refactoring a bit

* Added back getName

* Added comment

* minor fix

* Minor fix

* Merge fixes

* Scene variable interpolation progress

* Merge fixes

* Added all format registeries

* Progress on multi value support

* Progress on multi value support

* Updates

* Progress on scoped vars

* Fixed circular dependency

* Updates

* Some review fixes

* Updated comment

* Added forceRender function

* Add back fail on console log

* Update public/app/features/scenes/variables/interpolation/sceneInterpolator.test.ts

* Moving functions from SceneObjectBase

* fixing tests

* Fixed e2e

Co-authored-by: Dominik Prokop <dominik.prokop@grafana.com>
This commit is contained in:
Torkel Ödegaard
2022-11-16 11:36:30 +01:00
committed by GitHub
parent 2a9381e998
commit 8c585a4ebf
34 changed files with 1157 additions and 315 deletions

View File

@@ -20,7 +20,7 @@ describe('Variables - Load options from Url', () => {
e2e.pages.Dashboard.SubMenu.submenuItemValueDropDownDropDown()
.should('be.visible')
.within(() => {
e2e().get('.variable-option').should('have.length', 4);
e2e().get('.variable-option').should('have.length', 9);
});
e2e.pages.Dashboard.SubMenu.submenuItemValueDropDownOptionTexts('All').should('be.visible');
@@ -33,7 +33,7 @@ describe('Variables - Load options from Url', () => {
e2e.pages.Dashboard.SubMenu.submenuItemValueDropDownDropDown()
.should('be.visible')
.within(() => {
e2e().get('.variable-option').should('have.length', 4);
e2e().get('.variable-option').should('have.length', 9);
});
e2e.pages.Dashboard.SubMenu.submenuItemValueDropDownOptionTexts('All').should('be.visible');
@@ -46,7 +46,7 @@ describe('Variables - Load options from Url', () => {
e2e.pages.Dashboard.SubMenu.submenuItemValueDropDownDropDown()
.should('be.visible')
.within(() => {
e2e().get('.variable-option').should('have.length', 4);
e2e().get('.variable-option').should('have.length', 9);
});
e2e.pages.Dashboard.SubMenu.submenuItemValueDropDownOptionTexts('All').should('be.visible');
@@ -72,7 +72,7 @@ describe('Variables - Load options from Url', () => {
e2e.pages.Dashboard.SubMenu.submenuItemValueDropDownDropDown()
.should('be.visible')
.within(() => {
e2e().get('.variable-option').should('have.length', 4);
e2e().get('.variable-option').should('have.length', 9);
});
e2e.pages.Dashboard.SubMenu.submenuItemValueDropDownOptionTexts('All').should('be.visible');
@@ -85,7 +85,7 @@ describe('Variables - Load options from Url', () => {
e2e.pages.Dashboard.SubMenu.submenuItemValueDropDownDropDown()
.should('be.visible')
.within(() => {
e2e().get('.variable-option').should('have.length', 4);
e2e().get('.variable-option').should('have.length', 9);
});
e2e.pages.Dashboard.SubMenu.submenuItemValueDropDownOptionTexts('All').should('be.visible');
@@ -98,7 +98,7 @@ describe('Variables - Load options from Url', () => {
e2e.pages.Dashboard.SubMenu.submenuItemValueDropDownDropDown()
.should('be.visible')
.within(() => {
e2e().get('.variable-option').should('have.length', 4);
e2e().get('.variable-option').should('have.length', 9);
});
e2e.pages.Dashboard.SubMenu.submenuItemValueDropDownOptionTexts('All').should('be.visible');
@@ -135,7 +135,7 @@ describe('Variables - Load options from Url', () => {
e2e.pages.Dashboard.SubMenu.submenuItemValueDropDownDropDown()
.should('be.visible')
.within(() => {
e2e().get('.variable-option').should('have.length', 4);
e2e().get('.variable-option').should('have.length', 9);
});
e2e.pages.Dashboard.SubMenu.submenuItemValueDropDownOptionTexts('All').should('be.visible');
@@ -147,7 +147,7 @@ describe('Variables - Load options from Url', () => {
e2e.pages.Dashboard.SubMenu.submenuItemValueDropDownDropDown()
.should('be.visible')
.within(() => {
e2e().get('.variable-option').should('have.length', 10);
e2e().get('.variable-option').should('have.length', 65);
});
});
});