Skip to content
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ import { ExpandedRowContent } from './expanded_row_content';
import { ExpandedRowPanel } from './expanded_row_panel';
import { useBarColor } from './use_bar_color';

const METRIC_DISTRIBUTION_CHART_WIDTH = 260;
const METRIC_DISTRIBUTION_CHART_WIDTH = 360;
const METRIC_DISTRIBUTION_CHART_HEIGHT = 200;

interface SummaryTableItem {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -389,6 +389,7 @@ const UnmemoizedDataVisualizerTable = <T extends DataVisualizerTableItem>({

const $panelWidthS = `calc(max(20%, 225px))`;
const $panelWidthM = `calc(max(30%, 300px))`;
const $panelWidthL = `calc(max(35%, 400px))`;

const dvTableCss = css({
thead: {
Expand Down Expand Up @@ -440,11 +441,12 @@ const UnmemoizedDataVisualizerTable = <T extends DataVisualizerTableItem>({
},
},
'& .dvTopValues__wrapper': {
minWidth: 'fit-content',
minWidth: $panelWidthM,
maxWidth: $panelWidthL,
},
'& .dvPanel__wrapper': {
'&.dvPanel--compressed': {
width: $panelWidthS,
minWidth: $panelWidthS,
},
'&.dvPanel--uniform': {
minWidth: $panelWidthS,
Expand All @@ -459,6 +461,7 @@ const UnmemoizedDataVisualizerTable = <T extends DataVisualizerTableItem>({
},

'& .dvMap__wrapper': {
minWidth: $panelWidthL,
height: '240px',
},
'& .dvText__wrapper': {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ import {
EuiSpacer,
useEuiTheme,
euiScrollBarStyles,
EuiTextTruncate,
} from '@elastic/eui';

import { FormattedMessage } from '@kbn/i18n-react';
Expand Down Expand Up @@ -77,6 +78,8 @@ export const TopValues: FC<TopValuesProps> = ({

const fieldDataTopValuesContainer = css({ paddingTop: euiTheme.size.xs });
const topValuesValueLabelContainer = css({ marginRight: euiTheme.size.m });
const topValueLabelStyles = css({ textOverflow: 'ellipsis' });
const topValueBarStyles = css({ maxInlineSize: 'calc(100% - 52px)' });

if (stats === undefined || !stats.topValues) return null;
const { fieldName, sampleCount, approximate } = stats;
Expand Down Expand Up @@ -175,11 +178,13 @@ export const TopValues: FC<TopValuesProps> = ({

return (
<ExpandedRowPanel
grow={true}
dataTestSubj={'dataVisualizerFieldDataTopValues'}
className={classNames('dvPanel__wrapper', compressed ? 'dvPanel--compressed' : undefined)}
css={css`
overflow-x: auto;
${euiScrollBarStyles(euiThemeContext)}
${euiScrollBarStyles(euiThemeContext)};
max-width: 420px;
`}
>
<ExpandedRowFieldHeader>
Expand All @@ -205,17 +210,22 @@ export const TopValues: FC<TopValuesProps> = ({
? topValues.map((value) => {
const fieldValue = value.key_as_string ?? (value.key ? value.key.toString() : '');
const displayValue = fieldValue === '' ? EMPTY_EXAMPLE : fieldValue;
const label: string = value.key
? kibanaFieldFormat(value.key, fieldFormat)
: displayValue;

return (
<EuiFlexGroup gutterSize="xs" alignItems="center" key={displayValue}>
<EuiFlexItem data-test-subj="dataVisualizerFieldDataTopValueBar">
<EuiFlexItem
css={topValueBarStyles}
data-test-subj="dataVisualizerFieldDataTopValueBar"
>
<EuiProgress
value={value.percent}
max={1}
color={barColor}
size="xs"
label={value.key ? kibanaFieldFormat(value.key, fieldFormat) : displayValue}
className="eui-textTruncate"
label={<EuiTextTruncate css={topValueLabelStyles} text={label} />}
css={topValuesValueLabelContainer}
valueText={`${value.doc_count}${
totalDocuments !== undefined
Expand Down Expand Up @@ -283,7 +293,10 @@ export const TopValues: FC<TopValuesProps> = ({
: null}
{shouldShowOtherCount && topValuesOtherCount > 0 ? (
<EuiFlexGroup gutterSize="xs" alignItems="center" key="other">
<EuiFlexItem data-test-subj="dataVisualizerFieldDataTopValueBar">
<EuiFlexItem
css={topValueBarStyles}
data-test-subj="dataVisualizerFieldDataTopValueBar"
>
<EuiProgress
value={topValuesOtherCount}
max={totalDocuments}
Expand Down