import React, { Suspense } from 'react'; import { Icon, Tooltip } from '@grafana/ui'; import { FuncInstance } from '../gfunc'; export interface FunctionEditorControlsProps { onMoveLeft: (func: FuncInstance) => void; onMoveRight: (func: FuncInstance) => void; onRemove: (func: FuncInstance) => void; } const FunctionDescription = React.lazy(async () => { // @ts-ignore const { default: rst2html } = await import(/* webpackChunkName: "rst2html" */ 'rst2html'); return { default(props: { description?: string }) { return
; }, }; }); const FunctionHelpButton = (props: { description?: string; name: string }) => { if (props.description) { let tooltip = ( Loading description...}> ); return ( ); } return ( { window.open( 'http://graphite.readthedocs.org/en/latest/functions.html#graphite.render.functions.' + props.name, '_blank' ); }} /> ); }; export const FunctionEditorControls = ( props: FunctionEditorControlsProps & { func: FuncInstance; } ) => { const { func, onMoveLeft, onMoveRight, onRemove } = props; return (
onMoveLeft(func)} /> onRemove(func)} /> onMoveRight(func)} />
); };