ui: fix exclusion component for path

This commit is contained in:
nick-delirium 2024-12-16 12:03:22 +01:00
parent 2c82ed81cc
commit 6f845f5e91
No known key found for this signature in database
GPG key ID: 93ABD695DF5FDBA0
5 changed files with 36 additions and 28 deletions

View file

@ -85,7 +85,7 @@ function CustomMetricLineChart(props: Props) {
activeDot={{ fill: colors[index]}}
/>
) : null)}
{compData?.namesMap.map((key, i) => data.namesMap[i] ? (
{compData?.namesMap?.map((key, i) => data.namesMap[i] ? (
<Line
key={key}
name={key}

View file

@ -28,9 +28,9 @@ function ExcludeFilters(props: Props) {
};
return (
<div className={cn("flex items-center border-b", { 'p-5' : hasExcludes, 'px-2': !hasExcludes })}>
<div className={cn("flex items-center mb-2")}>
{filter.excludes.length > 0 ? (
<div className="flex items-center mb-2 flex-col">
<div className="flex items-center mb-2 bg-white rounded-xl flex-col px-4 py-2 w-full">
<div className="text-sm color-gray-medium mr-auto mb-2">EXCLUDES</div>
{filter.excludes.map((f: any, index: number) => (
<FilterItem

View file

@ -112,6 +112,7 @@ interface Props {
canExclude?: boolean;
expandable?: boolean;
isHeatmap?: boolean;
removeEvents?: boolean;
}
function FilterSeries(props: Props) {
@ -125,6 +126,7 @@ function FilterSeries(props: Props) {
canExclude = false,
expandable = false,
isHeatmap,
removeEvents,
} = props;
const [expanded, setExpanded] = useState(hideHeader || !expandable);
const { series, seriesIndex } = props;
@ -206,30 +208,32 @@ function FilterSeries(props: Props) {
{expanded ? (
<>
<EventsList
filter={series.filter}
onUpdateFilter={onUpdateFilter}
onRemoveFilter={onRemoveFilter}
onChangeEventsOrder={onChangeEventsOrder}
supportsEmpty={supportsEmpty}
onFilterMove={onFilterMove}
excludeFilterKeys={excludeFilterKeys}
onAddFilter={onAddFilter}
mergeUp={!hideHeader}
mergeDown
cannotAdd={isHeatmap}
/>
<FilterList
filter={series.filter}
onUpdateFilter={onUpdateFilter}
onRemoveFilter={onRemoveFilter}
onChangeEventsOrder={onChangeEventsOrder}
supportsEmpty={supportsEmpty}
onFilterMove={onFilterMove}
excludeFilterKeys={excludeFilterKeys}
onAddFilter={onAddFilter}
mergeUp
/>
{removeEvents ? null :
<EventsList
filter={series.filter}
onUpdateFilter={onUpdateFilter}
onRemoveFilter={onRemoveFilter}
onChangeEventsOrder={onChangeEventsOrder}
supportsEmpty={supportsEmpty}
onFilterMove={onFilterMove}
excludeFilterKeys={excludeFilterKeys}
onAddFilter={onAddFilter}
mergeUp={!hideHeader}
mergeDown
cannotAdd={isHeatmap}
/>
}
<FilterList
filter={series.filter}
onUpdateFilter={onUpdateFilter}
onRemoveFilter={onRemoveFilter}
onChangeEventsOrder={onChangeEventsOrder}
supportsEmpty={supportsEmpty}
onFilterMove={onFilterMove}
excludeFilterKeys={excludeFilterKeys}
onAddFilter={onAddFilter}
mergeUp={!removeEvents}
/>
</>
) : null}
</div>

View file

@ -191,7 +191,10 @@ function WidgetChart(props: Props) {
loadComparisonData();
}, [dashboardStore.comparisonPeriod]);
useEffect(() => {
dashboardStore.setComparisonPeriod(null)
setCompData(null);
_metric.updateKey('page', 1);
_metric.updateKey()
loadPage();
}, [
drillDownPeriod,

View file

@ -55,10 +55,11 @@ const FilterSection = observer(({ metric, excludeFilterKeys }: any) => {
metric.series
.slice(0, isSingleSeries ? 1 : metric.series.length)
.map((series: any, index: number) => (
<div className="mb-2 rounded-xl border border-gray-lighter" key={series.name}>
<div className="mb-2 rounded-xl" key={series.name}>
<FilterSeries
isHeatmap={isHeatMap}
canExclude={isPathAnalysis}
removeEvents={isPathAnalysis}
supportsEmpty={!isHeatMap && !isPathAnalysis}
excludeFilterKeys={excludeFilterKeys}
observeChanges={() => metric.updateKey('hasChanged', true)}