[v7.4.x]: Menu: Mark menu components as internal (#30801)
This commit is contained in:
@@ -14,10 +14,10 @@ import {
|
||||
outerJoinDataFrames,
|
||||
reduceField,
|
||||
TimeRange,
|
||||
TimeZone,
|
||||
} from '@grafana/data';
|
||||
import { useTheme } from '../../themes';
|
||||
import { UPlotChart } from '../uPlot/Plot';
|
||||
import { PlotProps } from '../uPlot/types';
|
||||
import {
|
||||
AxisPlacement,
|
||||
DrawStyle,
|
||||
@@ -41,12 +41,18 @@ export interface XYFieldMatchers {
|
||||
x: FieldMatcher; // first match
|
||||
y: FieldMatcher;
|
||||
}
|
||||
export interface GraphNGProps extends Omit<PlotProps, 'data' | 'config'> {
|
||||
|
||||
export interface GraphNGProps {
|
||||
width: number;
|
||||
height: number;
|
||||
data: DataFrame[];
|
||||
timeRange: TimeRange;
|
||||
legend: VizLegendOptions;
|
||||
timeZone: TimeZone;
|
||||
fields?: XYFieldMatchers; // default will assume timeseries data
|
||||
onLegendClick?: (event: GraphNGLegendEvent) => void;
|
||||
onSeriesColorChange?: (label: string, color: string) => void;
|
||||
children?: React.ReactNode;
|
||||
}
|
||||
|
||||
const defaultConfig: GraphFieldConfig = {
|
||||
|
||||
@@ -6,6 +6,7 @@ import { useStyles } from '../../themes';
|
||||
import { Icon } from '../Icon/Icon';
|
||||
import { IconName } from '../../types';
|
||||
|
||||
/** @internal */
|
||||
export interface MenuItem {
|
||||
/** Label of the menu item */
|
||||
label: string;
|
||||
@@ -20,6 +21,8 @@ export interface MenuItem {
|
||||
/** Handler for the click behaviour */
|
||||
group?: string;
|
||||
}
|
||||
|
||||
/** @internal */
|
||||
export interface MenuItemsGroup {
|
||||
/** Label for the menu items group */
|
||||
label?: string;
|
||||
@@ -27,6 +30,7 @@ export interface MenuItemsGroup {
|
||||
items: MenuItem[];
|
||||
}
|
||||
|
||||
/** @internal */
|
||||
export interface MenuProps extends React.HTMLAttributes<HTMLDivElement> {
|
||||
/** React element rendered at the top of the menu */
|
||||
header?: React.ReactNode;
|
||||
@@ -36,7 +40,7 @@ export interface MenuProps extends React.HTMLAttributes<HTMLDivElement> {
|
||||
onClose?: () => void;
|
||||
}
|
||||
|
||||
/** @public */
|
||||
/** @internal */
|
||||
export const Menu = React.forwardRef<HTMLDivElement, MenuProps>(({ header, items, onClose, ...otherProps }, ref) => {
|
||||
const styles = useStyles(getMenuStyles);
|
||||
const onClick = useCallback(() => {
|
||||
@@ -57,6 +61,7 @@ export const Menu = React.forwardRef<HTMLDivElement, MenuProps>(({ header, items
|
||||
</div>
|
||||
);
|
||||
});
|
||||
|
||||
Menu.displayName = 'Menu';
|
||||
|
||||
interface MenuGroupProps {
|
||||
|
||||
@@ -23,7 +23,7 @@ export interface PlotProps {
|
||||
width: number;
|
||||
height: number;
|
||||
config: UPlotConfigBuilder;
|
||||
children?: React.ReactElement[];
|
||||
children?: React.ReactNode;
|
||||
}
|
||||
|
||||
export abstract class PlotConfigBuilder<P, T> {
|
||||
|
||||
@@ -55,12 +55,10 @@ export const TimeSeriesPanel: React.FC<TimeSeriesPanelProps> = ({
|
||||
<TooltipPlugin mode={options.tooltipOptions.mode} timeZone={timeZone} />
|
||||
<ZoomPlugin onZoom={onChangeTimeRange} />
|
||||
<ContextMenuPlugin timeZone={timeZone} replaceVariables={replaceVariables} />
|
||||
{data.annotations ? (
|
||||
{data.annotations && (
|
||||
<ExemplarsPlugin exemplars={data.annotations} timeZone={timeZone} getFieldLinks={getFieldLinks} />
|
||||
) : (
|
||||
<></>
|
||||
)}
|
||||
{data.annotations ? <AnnotationsPlugin annotations={data.annotations} timeZone={timeZone} /> : <></>}
|
||||
{data.annotations && <AnnotationsPlugin annotations={data.annotations} timeZone={timeZone} />}
|
||||
</GraphNG>
|
||||
);
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user