DashboardScene: Move DashboardGridItem (#95768)

* DashboardScene: Move DashboardGridItem

* fix lints

* fixes
pull/95781/head
Torkel Ödegaard 9 months ago committed by GitHub
parent a43ba7bd44
commit 2485286c03
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 2
      public/app/features/dashboard-scene/inspect/HelpWizard/utils.ts
  2. 2
      public/app/features/dashboard-scene/inspect/InspectJsonTab.test.tsx
  3. 2
      public/app/features/dashboard-scene/inspect/InspectJsonTab.tsx
  4. 2
      public/app/features/dashboard-scene/panel-edit/PanelEditor.test.ts
  5. 2
      public/app/features/dashboard-scene/panel-edit/PanelEditor.tsx
  6. 2
      public/app/features/dashboard-scene/panel-edit/PanelOptions.test.tsx
  7. 7
      public/app/features/dashboard-scene/panel-edit/PanelOptions.tsx
  8. 9
      public/app/features/dashboard-scene/panel-edit/getPanelFrameOptions.tsx
  9. 2
      public/app/features/dashboard-scene/saving/DashboardSceneChangeTracker.ts
  10. 2
      public/app/features/dashboard-scene/scene/AddLibraryPanelDrawer.tsx
  11. 2
      public/app/features/dashboard-scene/scene/DashboardScene.test.tsx
  12. 2
      public/app/features/dashboard-scene/scene/DashboardScene.tsx
  13. 2
      public/app/features/dashboard-scene/scene/DashboardSceneUrlSync.test.ts
  14. 2
      public/app/features/dashboard-scene/scene/LibraryPanelBehavior.test.tsx
  15. 2
      public/app/features/dashboard-scene/scene/LibraryPanelBehavior.tsx
  16. 2
      public/app/features/dashboard-scene/scene/PanelSearchLayout.tsx
  17. 2
      public/app/features/dashboard-scene/scene/RowRepeaterBehavior.test.tsx
  18. 2
      public/app/features/dashboard-scene/scene/RowRepeaterBehavior.ts
  19. 2
      public/app/features/dashboard-scene/scene/ViewPanelScene.test.tsx
  20. 10
      public/app/features/dashboard-scene/scene/layout-default/DashboardGridItem.test.tsx
  21. 7
      public/app/features/dashboard-scene/scene/layout-default/DashboardGridItem.tsx
  22. 2
      public/app/features/dashboard-scene/scene/layout-default/DefaultGridLayoutManager.test.tsx
  23. 3
      public/app/features/dashboard-scene/scene/layout-default/DefaultGridLayoutManager.tsx
  24. 2
      public/app/features/dashboard-scene/scene/row-actions/RowActions.tsx
  25. 12
      public/app/features/dashboard-scene/scene/types.ts
  26. 2
      public/app/features/dashboard-scene/serialization/transformSaveModelToScene.test.ts
  27. 2
      public/app/features/dashboard-scene/serialization/transformSaveModelToScene.ts
  28. 2
      public/app/features/dashboard-scene/serialization/transformSceneToSaveModel.test.ts
  29. 2
      public/app/features/dashboard-scene/serialization/transformSceneToSaveModel.ts
  30. 2
      public/app/features/dashboard-scene/sharing/ShareLibraryPanelTab.tsx
  31. 2
      public/app/features/dashboard-scene/utils/dashboardSceneGraph.test.ts
  32. 2
      public/app/features/dashboard-scene/utils/test-utils.ts
  33. 2
      public/app/features/library-panels/state/api.ts

@ -14,7 +14,7 @@ import { config } from '@grafana/runtime';
import { VizPanel } from '@grafana/scenes';
import { GrafanaQueryType } from 'app/plugins/datasource/grafana/types';
import { DashboardGridItem } from '../../scene/DashboardGridItem';
import { DashboardGridItem } from '../../scene/layout-default/DashboardGridItem';
import { gridItemToPanel, vizPanelToPanel } from '../../serialization/transformSceneToSaveModel';
import { getQueryRunnerFor, isLibraryPanel } from '../../utils/utils';

@ -16,10 +16,10 @@ import { SceneCanvasText, SceneDataTransformer, SceneQueryRunner, VizPanel } fro
import * as libpanels from 'app/features/library-panels/state/api';
import { getStandardTransformers } from 'app/features/transformers/standardTransformers';
import { DashboardGridItem } from '../scene/DashboardGridItem';
import { DashboardScene } from '../scene/DashboardScene';
import { LibraryPanelBehavior } from '../scene/LibraryPanelBehavior';
import { VizPanelLinks, VizPanelLinksMenu } from '../scene/PanelLinks';
import { DashboardGridItem } from '../scene/layout-default/DashboardGridItem';
import { DefaultGridLayoutManager } from '../scene/layout-default/DefaultGridLayoutManager';
import { vizPanelToPanel } from '../serialization/transformSceneToSaveModel';
import { activateFullSceneTree } from '../utils/test-utils';

@ -25,7 +25,7 @@ import { InspectTab } from 'app/features/inspector/types';
import { getPrettyJSON } from 'app/features/inspector/utils/utils';
import { reportPanelInspectInteraction } from 'app/features/search/page/reporting';
import { DashboardGridItem } from '../scene/DashboardGridItem';
import { DashboardGridItem } from '../scene/layout-default/DashboardGridItem';
import { buildGridItemForPanel } from '../serialization/transformSaveModelToScene';
import { gridItemToPanel, vizPanelToPanel } from '../serialization/transformSceneToSaveModel';
import {

@ -18,9 +18,9 @@ import { mockDataSource, MockDataSourceSrv } from 'app/features/alerting/unified
import { DataSourceType } from 'app/features/alerting/unified/utils/datasource';
import * as libAPI from 'app/features/library-panels/state/api';
import { DashboardGridItem } from '../scene/DashboardGridItem';
import { DashboardScene } from '../scene/DashboardScene';
import { LibraryPanelBehavior } from '../scene/LibraryPanelBehavior';
import { DashboardGridItem } from '../scene/layout-default/DashboardGridItem';
import { DefaultGridLayoutManager } from '../scene/layout-default/DefaultGridLayoutManager';
import { vizPanelToPanel } from '../serialization/transformSceneToSaveModel';
import { activateFullSceneTree } from '../utils/test-utils';

@ -21,7 +21,7 @@ import { saveLibPanel } from 'app/features/library-panels/state/api';
import { DashboardSceneChangeTracker } from '../saving/DashboardSceneChangeTracker';
import { getPanelChanges } from '../saving/getDashboardChanges';
import { DashboardGridItem, DashboardGridItemState } from '../scene/DashboardGridItem';
import { DashboardGridItem, DashboardGridItemState } from '../scene/layout-default/DashboardGridItem';
import { vizPanelToPanel } from '../serialization/transformSceneToSaveModel';
import {
activateSceneObjectAndParentTree,

@ -10,9 +10,9 @@ import { getAllOptionEditors, getAllStandardFieldConfigs } from 'app/core/compon
import { OptionFilter } from 'app/features/dashboard/components/PanelEditor/OptionsPaneOptions';
import { overrideRuleTooltipDescription } from 'app/features/dashboard/components/PanelEditor/state/getOptionOverrides';
import { DashboardGridItem } from '../scene/DashboardGridItem';
import { DashboardScene } from '../scene/DashboardScene';
import { LibraryPanelBehavior } from '../scene/LibraryPanelBehavior';
import { DashboardGridItem } from '../scene/layout-default/DashboardGridItem';
import { vizPanelToPanel } from '../serialization/transformSceneToSaveModel';
import { activateFullSceneTree } from '../utils/test-utils';
import * as utils from '../utils/utils';

@ -24,13 +24,8 @@ interface Props {
export const PanelOptions = React.memo<Props>(({ panel, searchQuery, listMode, data }) => {
const { options, fieldConfig, _pluginInstanceState } = panel.useState();
const layoutElement = panel.parent!;
const layoutElementState = layoutElement.useState();
const panelFrameOptions = useMemo(
() => getPanelFrameCategory2(panel, layoutElementState),
[panel, layoutElementState]
);
const panelFrameOptions = useMemo(() => getPanelFrameCategory2(panel), [panel]);
const visualizationOptions = useMemo(() => {
const plugin = panel.getPlugin();

@ -1,7 +1,7 @@
import { SelectableValue } from '@grafana/data';
import { selectors } from '@grafana/e2e-selectors';
import { config } from '@grafana/runtime';
import { SceneObjectState, VizPanel } from '@grafana/scenes';
import { VizPanel } from '@grafana/scenes';
import { DataLinksInlineEditor, Input, TextArea, Switch, RadioButtonGroup, Select } from '@grafana/ui';
import { GenAIPanelDescriptionButton } from 'app/features/dashboard/components/GenAI/GenAIPanelDescriptionButton';
import { GenAIPanelTitleButton } from 'app/features/dashboard/components/GenAI/GenAIPanelTitleButton';
@ -10,16 +10,13 @@ import { OptionsPaneItemDescriptor } from 'app/features/dashboard/components/Pan
import { RepeatRowSelect2 } from 'app/features/dashboard/components/RepeatRowSelect/RepeatRowSelect';
import { getPanelLinksVariableSuggestions } from 'app/features/panel/panellinks/link_srv';
import { DashboardGridItem } from '../scene/DashboardGridItem';
import { VizPanelLinks } from '../scene/PanelLinks';
import { DashboardGridItem } from '../scene/layout-default/DashboardGridItem';
import { vizPanelToPanel, transformSceneToSaveModel } from '../serialization/transformSceneToSaveModel';
import { dashboardSceneGraph } from '../utils/dashboardSceneGraph';
import { getDashboardSceneFor } from '../utils/utils';
export function getPanelFrameCategory2(
panel: VizPanel,
layoutElementState: SceneObjectState
): OptionsPaneCategoryDescriptor {
export function getPanelFrameCategory2(panel: VizPanel): OptionsPaneCategoryDescriptor {
const descriptor = new OptionsPaneCategoryDescriptor({
title: 'Panel options',
id: 'Panel options',

@ -17,11 +17,11 @@ import { createWorker } from 'app/features/dashboard-scene/saving/createDetectCh
import { DashboardAnnotationsDataLayer } from '../scene/DashboardAnnotationsDataLayer';
import { DashboardControls } from '../scene/DashboardControls';
import { DashboardGridItem } from '../scene/DashboardGridItem';
import { DashboardScene, PERSISTED_PROPS } from '../scene/DashboardScene';
import { LibraryPanelBehavior } from '../scene/LibraryPanelBehavior';
import { VizPanelLinks } from '../scene/PanelLinks';
import { PanelTimeRange } from '../scene/PanelTimeRange';
import { DashboardGridItem } from '../scene/layout-default/DashboardGridItem';
import { transformSceneToSaveModel } from '../serialization/transformSceneToSaveModel';
import { isSceneVariableInstance } from '../settings/variables/utils';

@ -9,8 +9,8 @@ import {
import { getDashboardSceneFor, getDefaultVizPanel } from '../utils/utils';
import { DashboardGridItem } from './DashboardGridItem';
import { LibraryPanelBehavior } from './LibraryPanelBehavior';
import { DashboardGridItem } from './layout-default/DashboardGridItem';
export interface AddLibraryPanelDrawerState extends SceneObjectState {
panelToReplaceRef?: SceneObjectRef<VizPanel>;

@ -28,10 +28,10 @@ import { djb2Hash } from '../utils/djb2Hash';
import { findVizPanelByKey, getLibraryPanelBehavior, isLibraryPanel } from '../utils/utils';
import { DashboardControls } from './DashboardControls';
import { DashboardGridItem } from './DashboardGridItem';
import { DashboardScene, DashboardSceneState } from './DashboardScene';
import { LibraryPanelBehavior } from './LibraryPanelBehavior';
import { PanelTimeRange } from './PanelTimeRange';
import { DashboardGridItem } from './layout-default/DashboardGridItem';
import { DefaultGridLayoutManager } from './layout-default/DefaultGridLayoutManager';
import { RowActions } from './row-actions/RowActions';

@ -60,7 +60,6 @@ import {
import { AddLibraryPanelDrawer } from './AddLibraryPanelDrawer';
import { DashboardControls } from './DashboardControls';
import { DashboardGridItem } from './DashboardGridItem';
import { DashboardSceneRenderer } from './DashboardSceneRenderer';
import { DashboardSceneUrlSync } from './DashboardSceneUrlSync';
import { LibraryPanelBehavior } from './LibraryPanelBehavior';
@ -68,6 +67,7 @@ import { RowRepeaterBehavior } from './RowRepeaterBehavior';
import { ViewPanelScene } from './ViewPanelScene';
import { isUsingAngularDatasourcePlugin, isUsingAngularPanelPlugin } from './angular/AngularDeprecation';
import { setupKeyboardShortcuts } from './keyboardShortcuts';
import { DashboardGridItem } from './layout-default/DashboardGridItem';
import { DefaultGridLayoutManager } from './layout-default/DefaultGridLayoutManager';
import { DashboardLayoutManager } from './types';

@ -3,8 +3,8 @@ import { SceneQueryRunner, VizPanel } from '@grafana/scenes';
import appEvents from 'app/core/app_events';
import { KioskMode } from 'app/types';
import { DashboardGridItem } from './DashboardGridItem';
import { DashboardScene } from './DashboardScene';
import { DashboardGridItem } from './layout-default/DashboardGridItem';
import { DefaultGridLayoutManager } from './layout-default/DefaultGridLayoutManager';
import { DashboardRepeatsProcessedEvent } from './types';

@ -10,10 +10,10 @@ import * as libpanels from 'app/features/library-panels/state/api';
import { vizPanelToPanel } from '../serialization/transformSceneToSaveModel';
import { activateFullSceneTree } from '../utils/test-utils';
import { DashboardGridItem } from './DashboardGridItem';
import { DashboardScene } from './DashboardScene';
import { LibraryPanelBehavior } from './LibraryPanelBehavior';
import { PanelTimeRange } from './PanelTimeRange';
import { DashboardGridItem } from './layout-default/DashboardGridItem';
import { DefaultGridLayoutManager } from './layout-default/DefaultGridLayoutManager';
setPluginImportUtils({

@ -8,8 +8,8 @@ import { getLibraryPanel } from 'app/features/library-panels/state/api';
import { createPanelDataProvider } from '../utils/createPanelDataProvider';
import { DashboardGridItem } from './DashboardGridItem';
import { PanelTimeRange } from './PanelTimeRange';
import { DashboardGridItem } from './layout-default/DashboardGridItem';
export interface LibraryPanelBehaviorState extends SceneObjectState {
// Library panels use title from dashboard JSON's panel model, not from library panel definition, hence we pass it.

@ -9,8 +9,8 @@ import { Trans } from 'app/core/internationalization';
import { activateSceneObjectAndParentTree } from '../utils/utils';
import { DashboardGridItem } from './DashboardGridItem';
import { DashboardScene } from './DashboardScene';
import { DashboardGridItem } from './layout-default/DashboardGridItem';
import { DefaultGridLayoutManager } from './layout-default/DefaultGridLayoutManager';
export interface Props {

@ -17,10 +17,10 @@ import { ALL_VARIABLE_TEXT, ALL_VARIABLE_VALUE } from 'app/features/variables/co
import { activateFullSceneTree } from '../utils/test-utils';
import { DashboardGridItem, RepeatDirection } from './DashboardGridItem';
import { DashboardScene } from './DashboardScene';
import { panelMenuBehavior, repeatPanelMenuBehavior } from './PanelMenuBehavior';
import { RowRepeaterBehavior } from './RowRepeaterBehavior';
import { DashboardGridItem, RepeatDirection } from './layout-default/DashboardGridItem';
import { DefaultGridLayoutManager } from './layout-default/DefaultGridLayoutManager';
import { RowActions } from './row-actions/RowActions';

@ -18,8 +18,8 @@ import {
import { getMultiVariableValues, getQueryRunnerFor } from '../utils/utils';
import { DashboardGridItem } from './DashboardGridItem';
import { repeatPanelMenuBehavior } from './PanelMenuBehavior';
import { DashboardGridItem } from './layout-default/DashboardGridItem';
import { DashboardRepeatsProcessedEvent } from './types';
interface RowRepeaterBehaviorState extends SceneObjectState {

@ -1,8 +1,8 @@
import { LocalValueVariable, SceneGridLayout, SceneGridRow, SceneVariableSet, VizPanel } from '@grafana/scenes';
import { DashboardGridItem } from './DashboardGridItem';
import { DashboardScene } from './DashboardScene';
import { ViewPanelScene } from './ViewPanelScene';
import { DashboardGridItem } from './layout-default/DashboardGridItem';
import { DefaultGridLayoutManager } from './layout-default/DefaultGridLayoutManager';
jest.mock('@grafana/runtime', () => ({

@ -4,11 +4,11 @@ import { setPluginImportUtils } from '@grafana/runtime';
import { SceneGridLayout, SceneVariableSet, TestVariable, VizPanel } from '@grafana/scenes';
import { ALL_VARIABLE_TEXT, ALL_VARIABLE_VALUE } from 'app/features/variables/constants';
import { activateFullSceneTree, buildPanelRepeaterScene } from '../utils/test-utils';
import { activateFullSceneTree, buildPanelRepeaterScene } from '../../utils/test-utils';
import { DashboardScene } from '../DashboardScene';
import { DashboardGridItem, DashboardGridItemState } from './DashboardGridItem';
import { DashboardScene } from './DashboardScene';
import { DefaultGridLayoutManager } from './layout-default/DefaultGridLayoutManager';
import { DefaultGridLayoutManager } from './DefaultGridLayoutManager';
jest.mock('@grafana/runtime', () => ({
...jest.requireActual('@grafana/runtime'),
@ -21,8 +21,8 @@ setPluginImportUtils({
});
const mockGetQueryRunnerFor = jest.fn();
jest.mock('../utils/utils', () => ({
...jest.requireActual('../utils/utils'),
jest.mock('../../utils/utils', () => ({
...jest.requireActual('../../utils/utils'),
getQueryRunnerFor: jest.fn().mockImplementation(() => mockGetQueryRunnerFor()),
}));

@ -23,10 +23,9 @@ import {
} from '@grafana/scenes';
import { GRID_CELL_HEIGHT, GRID_CELL_VMARGIN, GRID_COLUMN_COUNT } from 'app/core/constants';
import { getMultiVariableValues, getQueryRunnerFor } from '../utils/utils';
import { repeatPanelMenuBehavior } from './PanelMenuBehavior';
import { DashboardRepeatsProcessedEvent } from './types';
import { getMultiVariableValues, getQueryRunnerFor } from '../../utils/utils';
import { repeatPanelMenuBehavior } from '../PanelMenuBehavior';
import { DashboardRepeatsProcessedEvent } from '../types';
export interface DashboardGridItemState extends SceneGridItemStateLike {
body: VizPanel;

@ -1,8 +1,8 @@
import { SceneGridItemLike, SceneGridLayout, SceneGridRow, SceneQueryRunner, VizPanel } from '@grafana/scenes';
import { findVizPanelByKey } from '../../utils/utils';
import { DashboardGridItem } from '../DashboardGridItem';
import { DashboardGridItem } from './DashboardGridItem';
import { DefaultGridLayoutManager } from './DefaultGridLayoutManager';
describe('DefaultGridLayoutManager', () => {

@ -22,12 +22,13 @@ import {
getVizPanelKeyForPanelId,
getDefaultVizPanel,
} from '../../utils/utils';
import { DashboardGridItem } from '../DashboardGridItem';
import { RowRepeaterBehavior } from '../RowRepeaterBehavior';
import { LayoutEditChrome } from '../layouts-shared/LayoutEditChrome';
import { RowActions } from '../row-actions/RowActions';
import { DashboardLayoutManager, LayoutEditorProps, LayoutRegistryItem } from '../types';
import { DashboardGridItem } from './DashboardGridItem';
interface DefaultGridLayoutManagerState extends SceneObjectState {
grid: SceneGridLayout;
}

@ -15,9 +15,9 @@ import { SHARED_DASHBOARD_QUERY } from 'app/plugins/datasource/dashboard';
import { ShowConfirmModalEvent } from 'app/types/events';
import { getDashboardSceneFor, getQueryRunnerFor } from '../../utils/utils';
import { DashboardGridItem } from '../DashboardGridItem';
import { DashboardScene } from '../DashboardScene';
import { RowRepeaterBehavior } from '../RowRepeaterBehavior';
import { DashboardGridItem } from '../layout-default/DashboardGridItem';
import { DefaultGridLayoutManager } from '../layout-default/DefaultGridLayoutManager';
import { RowOptionsButton } from './RowOptionsButton';

@ -92,27 +92,23 @@ export function isLayoutParent(obj: SceneObject): obj is LayoutParent {
* Abstraction to handle editing of different layout elements (wrappers for VizPanels and other objects)
* Also useful to when rendering / viewing an element outside it's layout scope
*/
export interface DashboardLayoutElement extends SceneObject {
export interface DashboardLayoutItem extends SceneObject {
/**
* Marks this object as a layout element
*/
isDashboardLayoutElement: true;
isDashboardLayoutItem: true;
/**
* Return layout elements options (like repeat, repeat direction, etc for the default DashboardGridItem)
*/
getOptions?(): OptionsPaneItemDescriptor[];
/**
* Used by panel edit to commit changes
*/
setBody(body: SceneObject): void;
/**
* Only implemented by elements that wrap VizPanels
*/
getVizPanel?(): VizPanel;
}
export function isDashboardLayoutElement(obj: SceneObject): obj is DashboardLayoutElement {
return 'isDashboardLayoutElement' in obj;
export function isDashboardLayoutItem(obj: SceneObject): obj is DashboardLayoutItem {
return 'isDashboardLayoutItem' in obj;
}
export interface DashboardRepeatsProcessedEventPayload {

@ -27,10 +27,10 @@ import { DASHBOARD_DATASOURCE_PLUGIN_ID } from 'app/plugins/datasource/dashboard
import { DashboardDataDTO } from 'app/types';
import { DashboardDataLayerSet } from '../scene/DashboardDataLayerSet';
import { DashboardGridItem } from '../scene/DashboardGridItem';
import { LibraryPanelBehavior } from '../scene/LibraryPanelBehavior';
import { PanelTimeRange } from '../scene/PanelTimeRange';
import { RowRepeaterBehavior } from '../scene/RowRepeaterBehavior';
import { DashboardGridItem } from '../scene/layout-default/DashboardGridItem';
import { DefaultGridLayoutManager } from '../scene/layout-default/DefaultGridLayoutManager';
import { NEW_LINK } from '../settings/links/utils';
import { getQueryRunnerFor } from '../utils/utils';

@ -28,7 +28,6 @@ import { AlertStatesDataLayer } from '../scene/AlertStatesDataLayer';
import { DashboardAnnotationsDataLayer } from '../scene/DashboardAnnotationsDataLayer';
import { DashboardControls } from '../scene/DashboardControls';
import { DashboardDataLayerSet } from '../scene/DashboardDataLayerSet';
import { DashboardGridItem, RepeatDirection } from '../scene/DashboardGridItem';
import { registerDashboardMacro } from '../scene/DashboardMacro';
import { DashboardReloadBehavior } from '../scene/DashboardReloadBehavior';
import { DashboardScene } from '../scene/DashboardScene';
@ -40,6 +39,7 @@ import { PanelNotices } from '../scene/PanelNotices';
import { PanelTimeRange } from '../scene/PanelTimeRange';
import { RowRepeaterBehavior } from '../scene/RowRepeaterBehavior';
import { AngularDeprecation } from '../scene/angular/AngularDeprecation';
import { DashboardGridItem, RepeatDirection } from '../scene/layout-default/DashboardGridItem';
import { DefaultGridLayoutManager } from '../scene/layout-default/DefaultGridLayoutManager';
import { RowActions } from '../scene/row-actions/RowActions';
import { setDashboardPanelContext } from '../scene/setDashboardPanelContext';

@ -24,9 +24,9 @@ import { SHARED_DASHBOARD_QUERY } from 'app/plugins/datasource/dashboard';
import { DashboardDataDTO } from 'app/types';
import { DashboardDataLayerSet } from '../scene/DashboardDataLayerSet';
import { DashboardGridItem } from '../scene/DashboardGridItem';
import { LibraryPanelBehavior } from '../scene/LibraryPanelBehavior';
import { RowRepeaterBehavior } from '../scene/RowRepeaterBehavior';
import { DashboardGridItem } from '../scene/layout-default/DashboardGridItem';
import { DefaultGridLayoutManager } from '../scene/layout-default/DefaultGridLayoutManager';
import { NEW_LINK } from '../settings/links/utils';
import { activateFullSceneTree, buildPanelRepeaterScene } from '../utils/test-utils';

@ -31,10 +31,10 @@ import { DASHBOARD_SCHEMA_VERSION } from 'app/features/dashboard/state/Dashboard
import { GrafanaQueryType } from 'app/plugins/datasource/grafana/types';
import { DashboardDataLayerSet } from '../scene/DashboardDataLayerSet';
import { DashboardGridItem } from '../scene/DashboardGridItem';
import { DashboardScene } from '../scene/DashboardScene';
import { PanelTimeRange } from '../scene/PanelTimeRange';
import { RowRepeaterBehavior } from '../scene/RowRepeaterBehavior';
import { DashboardGridItem } from '../scene/layout-default/DashboardGridItem';
import { DefaultGridLayoutManager } from '../scene/layout-default/DefaultGridLayoutManager';
import { dashboardSceneGraph } from '../utils/dashboardSceneGraph';
import { getLibraryPanelBehavior, getPanelIdForVizPanel, getQueryRunnerFor, isLibraryPanel } from '../utils/utils';

@ -6,7 +6,7 @@ import { ShareLibraryPanel } from 'app/features/dashboard/components/ShareModal/
import { shareDashboardType } from 'app/features/dashboard/components/ShareModal/utils';
import { DashboardModel, PanelModel } from 'app/features/dashboard/state';
import { DashboardGridItem } from '../scene/DashboardGridItem';
import { DashboardGridItem } from '../scene/layout-default/DashboardGridItem';
import { gridItemToPanel, transformSceneToSaveModel } from '../serialization/transformSceneToSaveModel';
import { getDashboardSceneFor } from '../utils/utils';

@ -4,9 +4,9 @@ import { DashboardCursorSync } from '@grafana/schema';
import { DashboardAnnotationsDataLayer } from '../scene/DashboardAnnotationsDataLayer';
import { DashboardControls } from '../scene/DashboardControls';
import { DashboardDataLayerSet } from '../scene/DashboardDataLayerSet';
import { DashboardGridItem } from '../scene/DashboardGridItem';
import { DashboardScene, DashboardSceneState } from '../scene/DashboardScene';
import { VizPanelLinks, VizPanelLinksMenu } from '../scene/PanelLinks';
import { DashboardGridItem } from '../scene/layout-default/DashboardGridItem';
import { DefaultGridLayoutManager } from '../scene/layout-default/DefaultGridLayoutManager';
import { dashboardSceneGraph } from './dashboardSceneGraph';

@ -15,9 +15,9 @@ import { DashboardLoaderSrv, setDashboardLoaderSrv } from 'app/features/dashboar
import { ALL_VARIABLE_TEXT, ALL_VARIABLE_VALUE } from 'app/features/variables/constants';
import { DashboardDTO } from 'app/types';
import { DashboardGridItem, RepeatDirection } from '../scene/DashboardGridItem';
import { VizPanelLinks, VizPanelLinksMenu } from '../scene/PanelLinks';
import { RowRepeaterBehavior } from '../scene/RowRepeaterBehavior';
import { DashboardGridItem, RepeatDirection } from '../scene/layout-default/DashboardGridItem';
import { DefaultGridLayoutManager } from '../scene/layout-default/DefaultGridLayoutManager';
export function setupLoadDashboardMock(rsp: DeepPartial<DashboardDTO>, spy?: jest.Mock) {

@ -3,7 +3,7 @@ import { lastValueFrom } from 'rxjs';
import { VizPanel } from '@grafana/scenes';
import { LibraryPanel, defaultDashboard } from '@grafana/schema';
import { DashboardModel } from 'app/features/dashboard/state';
import { DashboardGridItem } from 'app/features/dashboard-scene/scene/DashboardGridItem';
import { DashboardGridItem } from 'app/features/dashboard-scene/scene/layout-default/DashboardGridItem';
import { vizPanelToPanel } from 'app/features/dashboard-scene/serialization/transformSceneToSaveModel';
import { getLibraryPanelBehavior } from 'app/features/dashboard-scene/utils/utils';

Loading…
Cancel
Save