|
@@ -53,11 +53,13 @@ export interface FiltersProps {
|
|
|
phaseMessage?: string;
|
|
|
meta: TopicMessageConsuming;
|
|
|
isFetching: boolean;
|
|
|
+ messageEventType?: string;
|
|
|
addMessage(content: { message: TopicMessage; prepend: boolean }): void;
|
|
|
resetMessages(): void;
|
|
|
updatePhase(phase: string): void;
|
|
|
updateMeta(meta: TopicMessageConsuming): void;
|
|
|
setIsFetching(status: boolean): void;
|
|
|
+ setMessageType(messageType: string): void;
|
|
|
}
|
|
|
|
|
|
export interface MessageFilters {
|
|
@@ -80,13 +82,15 @@ export const SeekTypeOptions = [
|
|
|
|
|
|
const Filters: React.FC<FiltersProps> = ({
|
|
|
phaseMessage,
|
|
|
- meta: { elapsedMs, bytesConsumed, messagesConsumed },
|
|
|
+ meta: { elapsedMs, bytesConsumed, messagesConsumed, filterApplyErrors },
|
|
|
isFetching,
|
|
|
addMessage,
|
|
|
resetMessages,
|
|
|
updatePhase,
|
|
|
updateMeta,
|
|
|
setIsFetching,
|
|
|
+ setMessageType,
|
|
|
+ messageEventType,
|
|
|
}) => {
|
|
|
const { clusterName, topicName } = useAppParams<RouteParamsClusterTopic>();
|
|
|
const location = useLocation();
|
|
@@ -355,6 +359,12 @@ const Filters: React.FC<FiltersProps> = ({
|
|
|
case TopicMessageEventTypeEnum.CONSUMING:
|
|
|
if (consuming) updateMeta(consuming);
|
|
|
break;
|
|
|
+ case TopicMessageEventTypeEnum.DONE:
|
|
|
+ if (consuming && type) {
|
|
|
+ setMessageType(type);
|
|
|
+ updateMeta(consuming);
|
|
|
+ }
|
|
|
+ break;
|
|
|
default:
|
|
|
}
|
|
|
};
|
|
@@ -551,6 +561,7 @@ const Filters: React.FC<FiltersProps> = ({
|
|
|
{seekDirection !== SeekDirection.TAILING &&
|
|
|
isFetching &&
|
|
|
phaseMessage}
|
|
|
+ {!isFetching && messageEventType}
|
|
|
</S.Message>
|
|
|
<S.MessageLoading isLive={isTailing}>
|
|
|
<S.MessageLoadingSpinner isFetching={isFetching} />
|
|
@@ -582,6 +593,11 @@ const Filters: React.FC<FiltersProps> = ({
|
|
|
</S.MetricsIcon>
|
|
|
<span>{messagesConsumed} messages consumed</span>
|
|
|
</S.Metric>
|
|
|
+ {!!filterApplyErrors && (
|
|
|
+ <S.Metric title="Errors">
|
|
|
+ <span>{filterApplyErrors} errors</span>
|
|
|
+ </S.Metric>
|
|
|
+ )}
|
|
|
</S.FiltersMetrics>
|
|
|
</S.FiltersWrapper>
|
|
|
);
|