Skip to content

@sqlrooms/mosaic / isChartPanelConfig

Function: isChartPanelConfig()

isChartPanelConfig(panel): panel is { id: string; type: "vgplot"; title: string; config: { chartType: "histogram"; settings: { field?: string; maxBins?: number }; settingsOpen?: boolean; dataPolicy?: { disabled?: boolean; maxRows?: number; reason?: string } } | { chartType: "count-plot"; settings: { field?: string }; settingsOpen?: boolean; dataPolicy?: { disabled?: boolean; maxRows?: number; reason?: string } } | { chartType: "line-chart"; settings: { x?: string; xInterval?: "second" | "minute" | "hour" | "day" | "week" | "month" | "quarter" | "year"; yFields?: { field: string; color?: string; aggregate: "sum" | "max" | "min" | "avg" }[] }; settingsOpen?: boolean; dataPolicy?: { disabled?: boolean; maxRows?: number; reason?: string } } | { chartType: "bubble-chart"; settings: { x?: string; y?: string; size?: string }; settingsOpen?: boolean; dataPolicy?: { disabled?: boolean; maxRows?: number; reason?: string } } | { chartType: "heatmap"; settings: { x?: string; y?: string }; settingsOpen?: boolean; dataPolicy?: { disabled?: boolean; maxRows?: number; reason?: string } } | { chartType: "box-plot"; settings: { x: string; y: string }; settingsOpen?: boolean; dataPolicy?: { disabled?: boolean; maxRows?: number; reason?: string } } | { chartType: "custom-spec"; settingsOpen?: boolean; settings: { vgPlotSpec?: unknown }; dataPolicy?: { disabled?: boolean; maxRows?: number; reason?: string } } | { chartType: string; settings: Record<string, unknown>; settingsOpen?: boolean; dataPolicy?: { disabled?: boolean; maxRows?: number; reason?: string } } }

Parameters

ParameterType
panel{ id: string; type: "vgplot"; title: string; config: { chartType: "histogram"; settings: { field?: string; maxBins?: number; }; settingsOpen?: boolean; dataPolicy?: { disabled?: boolean; maxRows?: number; reason?: string; }; } | { chartType: "count-plot"; settings: { field?: string; }; settingsOpen?: boolean; dataPolicy?: { disabled?: boolean; maxRows?: number; reason?: string; }; } | { chartType: "line-chart"; settings: { x?: string; xInterval?: "second" | "minute" | "hour" | "day" | "week" | "month" | "quarter" | "year"; yFields?: object[]; }; settingsOpen?: boolean; dataPolicy?: { disabled?: boolean; maxRows?: number; reason?: string; }; } | { chartType: "bubble-chart"; settings: { x?: string; y?: string; size?: string; }; settingsOpen?: boolean; dataPolicy?: { disabled?: boolean; maxRows?: number; reason?: string; }; } | { chartType: "heatmap"; settings: { x?: string; y?: string; }; settingsOpen?: boolean; dataPolicy?: { disabled?: boolean; maxRows?: number; reason?: string; }; } | { chartType: "box-plot"; settings: { x: string; y: string; }; settingsOpen?: boolean; dataPolicy?: { disabled?: boolean; maxRows?: number; reason?: string; }; } | { chartType: "custom-spec"; settingsOpen?: boolean; settings: { vgPlotSpec?: unknown; }; dataPolicy?: { disabled?: boolean; maxRows?: number; reason?: string; }; } | { chartType: string; settings: Record<string, unknown>; settingsOpen?: boolean; dataPolicy?: { disabled?: boolean; maxRows?: number; reason?: string; }; }; } | { id: string; type: "profiler"; title: string; config: { pageSize?: number; }; } | { id: string; type: "text"; title: string; config: { content: string; toolbarOpen: boolean; sourcePanelOpen: boolean; }; } | { id: string; type: string; title: string; config: Record<string, unknown>; }

Returns

panel is { id: string; type: "vgplot"; title: string; config: { chartType: "histogram"; settings: { field?: string; maxBins?: number }; settingsOpen?: boolean; dataPolicy?: { disabled?: boolean; maxRows?: number; reason?: string } } | { chartType: "count-plot"; settings: { field?: string }; settingsOpen?: boolean; dataPolicy?: { disabled?: boolean; maxRows?: number; reason?: string } } | { chartType: "line-chart"; settings: { x?: string; xInterval?: "second" | "minute" | "hour" | "day" | "week" | "month" | "quarter" | "year"; yFields?: { field: string; color?: string; aggregate: "sum" | "max" | "min" | "avg" }[] }; settingsOpen?: boolean; dataPolicy?: { disabled?: boolean; maxRows?: number; reason?: string } } | { chartType: "bubble-chart"; settings: { x?: string; y?: string; size?: string }; settingsOpen?: boolean; dataPolicy?: { disabled?: boolean; maxRows?: number; reason?: string } } | { chartType: "heatmap"; settings: { x?: string; y?: string }; settingsOpen?: boolean; dataPolicy?: { disabled?: boolean; maxRows?: number; reason?: string } } | { chartType: "box-plot"; settings: { x: string; y: string }; settingsOpen?: boolean; dataPolicy?: { disabled?: boolean; maxRows?: number; reason?: string } } | { chartType: "custom-spec"; settingsOpen?: boolean; settings: { vgPlotSpec?: unknown }; dataPolicy?: { disabled?: boolean; maxRows?: number; reason?: string } } | { chartType: string; settings: Record<string, unknown>; settingsOpen?: boolean; dataPolicy?: { disabled?: boolean; maxRows?: number; reason?: string } } }