diff --git a/packages/grafana-ui/src/types/icon.ts b/packages/grafana-ui/src/types/icon.ts index b4d90864c4b..34483ff3459 100644 --- a/packages/grafana-ui/src/types/icon.ts +++ b/packages/grafana-ui/src/types/icon.ts @@ -12,6 +12,8 @@ export type IconName = | 'filter' | 'angle-left' | 'angle-right' + | 'angle-double-right' + | 'angle-double-down' | 'pen' | 'envelope' | 'percentage' @@ -128,6 +130,8 @@ export const getAvailableIcons = (): IconName[] => [ 'filter', 'angle-left', 'angle-right', + 'angle-double-right', + 'angle-double-down', 'pen', 'envelope', 'percentage', diff --git a/packages/jaeger-ui-components/src/TraceTimelineViewer/TimelineHeaderRow/TimelineCollapser.test.js b/packages/jaeger-ui-components/src/TraceTimelineViewer/TimelineHeaderRow/TimelineCollapser.test.js index 02a447e323f..322e197cc7f 100644 --- a/packages/jaeger-ui-components/src/TraceTimelineViewer/TimelineHeaderRow/TimelineCollapser.test.js +++ b/packages/jaeger-ui-components/src/TraceTimelineViewer/TimelineHeaderRow/TimelineCollapser.test.js @@ -15,7 +15,7 @@ import React from 'react'; import { shallow } from 'enzyme'; -import TimelineCollapser from './TimelineCollapser'; +import { TimelineCollapser } from './TimelineCollapser'; describe('', () => { it('renders without exploding', () => { diff --git a/packages/jaeger-ui-components/src/TraceTimelineViewer/TimelineHeaderRow/TimelineCollapser.tsx b/packages/jaeger-ui-components/src/TraceTimelineViewer/TimelineHeaderRow/TimelineCollapser.tsx index c2e355facee..2ebf823ce7c 100644 --- a/packages/jaeger-ui-components/src/TraceTimelineViewer/TimelineHeaderRow/TimelineCollapser.tsx +++ b/packages/jaeger-ui-components/src/TraceTimelineViewer/TimelineHeaderRow/TimelineCollapser.tsx @@ -12,18 +12,13 @@ // See the License for the specific language governing permissions and // limitations under the License. -import React from 'react'; +import { IconButton } from '@grafana/ui'; import { css } from 'emotion'; -import cx from 'classnames'; - -import { UITooltip, UIIcon } from '../../uiElementsContext'; +import React from 'react'; import { createStyle } from '../../Theme'; const getStyles = createStyle(() => { return { - TraceTimelineViewer: css` - border-bottom: 1px solid #bbb; - `, TimelineCollapser: css` align-items: center; display: flex; @@ -31,21 +26,6 @@ const getStyles = createStyle(() => { justify-content: center; margin-right: 0.5rem; `, - tooltipTitle: css` - white-space: pre; - `, - btn: css` - color: rgba(0, 0, 0, 0.5); - cursor: pointer; - margin-right: 0.3rem; - padding: 0.1rem; - &:hover { - color: rgba(0, 0, 0, 0.85); - } - `, - btnExpanded: css` - transform: rotate(90deg); - `, }; }); @@ -56,40 +36,27 @@ type CollapserProps = { onExpandAll: () => void; }; -function getTitle(value: string) { +export function TimelineCollapser(props: CollapserProps) { + const { onExpandAll, onExpandOne, onCollapseAll, onCollapseOne } = props; const styles = getStyles(); - return {value}; -} - -export default class TimelineCollapser extends React.PureComponent { - containerRef: React.RefObject; - - constructor(props: CollapserProps) { - super(props); - this.containerRef = React.createRef(); - } - - // TODO: Something less hacky than createElement to help TypeScript / AntD - getContainer = () => this.containerRef.current || document.createElement('div'); - - render() { - const { onExpandAll, onExpandOne, onCollapseAll, onCollapseOne } = this.props; - const styles = getStyles(); - return ( -
- - - - - - - - - - - - -
- ); - } + return ( +
+ + + + +
+ ); } diff --git a/packages/jaeger-ui-components/src/TraceTimelineViewer/TimelineHeaderRow/TimelineHeaderRow.test.js b/packages/jaeger-ui-components/src/TraceTimelineViewer/TimelineHeaderRow/TimelineHeaderRow.test.js index 0bc9ccc77af..95b2f5eef9e 100644 --- a/packages/jaeger-ui-components/src/TraceTimelineViewer/TimelineHeaderRow/TimelineHeaderRow.test.js +++ b/packages/jaeger-ui-components/src/TraceTimelineViewer/TimelineHeaderRow/TimelineHeaderRow.test.js @@ -19,7 +19,7 @@ import TimelineHeaderRow from './TimelineHeaderRow'; import TimelineColumnResizer from './TimelineColumnResizer'; import TimelineViewingLayer from './TimelineViewingLayer'; import Ticks from '../Ticks'; -import TimelineCollapser from './TimelineCollapser'; +import { TimelineCollapser } from './TimelineCollapser'; describe('', () => { let wrapper; diff --git a/packages/jaeger-ui-components/src/TraceTimelineViewer/TimelineHeaderRow/TimelineHeaderRow.tsx b/packages/jaeger-ui-components/src/TraceTimelineViewer/TimelineHeaderRow/TimelineHeaderRow.tsx index 793e24a483d..9d734b6f571 100644 --- a/packages/jaeger-ui-components/src/TraceTimelineViewer/TimelineHeaderRow/TimelineHeaderRow.tsx +++ b/packages/jaeger-ui-components/src/TraceTimelineViewer/TimelineHeaderRow/TimelineHeaderRow.tsx @@ -16,7 +16,7 @@ import * as React from 'react'; import { css } from 'emotion'; import cx from 'classnames'; -import TimelineCollapser from './TimelineCollapser'; +import { TimelineCollapser } from './TimelineCollapser'; import TimelineColumnResizer from './TimelineColumnResizer'; import TimelineViewingLayer from './TimelineViewingLayer'; import Ticks from '../Ticks';