{'This update will affect '} - {panel.libraryPanel.meta.connectedDashboards}{' '} - {panel.libraryPanel.meta.connectedDashboards === 1 ? 'dashboard' : 'dashboards'}. + {panel.libraryPanel.meta?.connectedDashboards}{' '} + {panel.libraryPanel.meta?.connectedDashboards === 1 ? 'dashboard' : 'dashboards'}. The following dashboards using the panel will be affected:
diff --git a/public/app/features/library-panels/types.ts b/public/app/features/library-panels/types.ts index d4d1cd4c085..0d4356ff7ba 100644 --- a/public/app/features/library-panels/types.ts +++ b/public/app/features/library-panels/types.ts @@ -1,17 +1,22 @@ import { AnyAction } from '@reduxjs/toolkit'; import { Dispatch } from 'react'; +import { LibraryPanel } from '@grafana/schema'; +import { LibraryElementDTOMetaUser } from '@grafana/schema/src/raw/librarypanel/x/librarypanel_types.gen'; + import { PanelModel } from '../dashboard/state'; export enum LibraryElementKind { Panel = 1, - Variable, } export enum LibraryElementConnectionKind { Dashboard = 1, } +/** @deprecated use LibraryPanel */ +export interface LibraryElementDTO extends LibraryPanel {} + export interface LibraryElementConnectionDTO { id: number; kind: LibraryElementConnectionKind; @@ -24,48 +29,13 @@ export interface LibraryElementConnectionDTO { export interface LibraryElementsSearchResult { totalCount: number; - elements: LibraryElementDTO[]; + elements: LibraryPanel[]; perPage: number; page: number; } -export interface LibraryElementDTO { - id: number; - orgId: number; - folderUid: string; - uid: string; - name: string; - kind: LibraryElementKind; - type: string; - description: string; - model: any; - version: number; - meta: LibraryElementDTOMeta; -} - -export interface LibraryElementDTOMeta { - folderName: string; - folderUid: string; - connectedDashboards: number; - created: string; - updated: string; - createdBy: LibraryElementDTOMetaUser; - updatedBy: LibraryElementDTOMetaUser; -} - -export interface LibraryElementDTOMetaUser { - id: number; - name: string; - avatarUrl: string; -} - -export interface LibraryPanelRef { - name: string; - uid: string; -} - export interface PanelModelWithLibraryPanel extends PanelModel { - libraryPanel: LibraryElementDTO; + libraryPanel: LibraryPanel; } export type DispatchResult = (dispatch: Dispatch