From ace1e899b887ab6fad3aa169518317d8e527d8bf Mon Sep 17 00:00:00 2001 From: "H@di" Date: Sat, 21 Sep 2024 16:53:38 +0330 Subject: [PATCH 1/4] Make tooltip font regular for edit button of broker configs (#556) --- .../TableComponents/InputCell/InputCellViewMode.tsx | 4 ++-- .../Broker/Configs/TableComponents/InputCell/styled.ts | 7 ++++--- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/frontend/src/components/Brokers/Broker/Configs/TableComponents/InputCell/InputCellViewMode.tsx b/frontend/src/components/Brokers/Broker/Configs/TableComponents/InputCell/InputCellViewMode.tsx index 1ddfa2b03..a4c776b83 100644 --- a/frontend/src/components/Brokers/Broker/Configs/TableComponents/InputCell/InputCellViewMode.tsx +++ b/frontend/src/components/Brokers/Broker/Configs/TableComponents/InputCell/InputCellViewMode.tsx @@ -31,8 +31,8 @@ const InputCellViewMode: FC = ({ ); return ( - - {displayValue} + + {displayValue} ` +export const ValueWrapper = styled.div` display: flex; justify-content: space-between; - font-weight: ${({ $isDynamic }) => ($isDynamic ? 600 : 400)}; + font-weight: 400; button { margin: 0 10px; } `; -export const Value = styled.span` +export const Value = styled.span<{ $isDynamic?: boolean }>` line-height: 24px; margin-right: 10px; text-overflow: ellipsis; max-width: 400px; overflow: hidden; white-space: nowrap; + font-weight: ${({ $isDynamic }) => ($isDynamic ? 600 : 400)}; `; export const ButtonsWrapper = styled.div` From 0d523e5256f27dbb3e03014a8d67cc21f27a0932 Mon Sep 17 00:00:00 2001 From: "H@di" Date: Sat, 21 Sep 2024 17:25:44 +0330 Subject: [PATCH 2/4] Allow topic analysis in read only clusters (#556) --- api/src/main/java/io/kafbat/ui/config/ReadOnlyModeFilter.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/api/src/main/java/io/kafbat/ui/config/ReadOnlyModeFilter.java b/api/src/main/java/io/kafbat/ui/config/ReadOnlyModeFilter.java index 81165e988..ac7c6747f 100644 --- a/api/src/main/java/io/kafbat/ui/config/ReadOnlyModeFilter.java +++ b/api/src/main/java/io/kafbat/ui/config/ReadOnlyModeFilter.java @@ -25,7 +25,7 @@ public class ReadOnlyModeFilter implements WebFilter { Pattern.compile("/api/clusters/(?[^/]++)"); private static final Set SAFE_ENDPOINTS = Set.of( - Pattern.compile("/api/clusters/[^/]+/topics/[^/]+/(smartfilters)$") + Pattern.compile("/api/clusters/[^/]+/topics/[^/]+/(smartfilters|analysis)$") ); private final ClustersStorage clustersStorage; From 0bc97476bc972876c0347578e9d15647deaf095f Mon Sep 17 00:00:00 2001 From: "H@di" Date: Sat, 21 Sep 2024 18:35:29 +0330 Subject: [PATCH 3/4] Fix linter warning (#556) --- .../Configs/TableComponents/InputCell/InputCellViewMode.tsx | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/frontend/src/components/Brokers/Broker/Configs/TableComponents/InputCell/InputCellViewMode.tsx b/frontend/src/components/Brokers/Broker/Configs/TableComponents/InputCell/InputCellViewMode.tsx index a4c776b83..0fd2bad12 100644 --- a/frontend/src/components/Brokers/Broker/Configs/TableComponents/InputCell/InputCellViewMode.tsx +++ b/frontend/src/components/Brokers/Broker/Configs/TableComponents/InputCell/InputCellViewMode.tsx @@ -32,7 +32,9 @@ const InputCellViewMode: FC = ({ return ( - {displayValue} + + {displayValue} + Date: Sat, 28 Sep 2024 19:08:52 +0330 Subject: [PATCH 4/4] Mark all broker configs as read-only in read-only clusters (#556) Co-authored-by: Roman Zabaluev --- .../main/java/io/kafbat/ui/model/InternalBrokerConfig.java | 4 ++-- api/src/main/java/io/kafbat/ui/service/BrokerService.java | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/api/src/main/java/io/kafbat/ui/model/InternalBrokerConfig.java b/api/src/main/java/io/kafbat/ui/model/InternalBrokerConfig.java index 496c8bfe5..5f87b0487 100644 --- a/api/src/main/java/io/kafbat/ui/model/InternalBrokerConfig.java +++ b/api/src/main/java/io/kafbat/ui/model/InternalBrokerConfig.java @@ -16,12 +16,12 @@ public class InternalBrokerConfig { private final boolean isReadOnly; private final List synonyms; - public static InternalBrokerConfig from(ConfigEntry configEntry) { + public static InternalBrokerConfig from(ConfigEntry configEntry, boolean readOnlyCluster) { InternalBrokerConfig.InternalBrokerConfigBuilder builder = InternalBrokerConfig.builder() .name(configEntry.name()) .value(configEntry.value()) .source(configEntry.source()) - .isReadOnly(configEntry.isReadOnly()) + .isReadOnly(readOnlyCluster || configEntry.isReadOnly()) .isSensitive(configEntry.isSensitive()) .synonyms(configEntry.synonyms()); return builder.build(); diff --git a/api/src/main/java/io/kafbat/ui/service/BrokerService.java b/api/src/main/java/io/kafbat/ui/service/BrokerService.java index fd9c4c8ab..198685b93 100644 --- a/api/src/main/java/io/kafbat/ui/service/BrokerService.java +++ b/api/src/main/java/io/kafbat/ui/service/BrokerService.java @@ -59,7 +59,7 @@ private Flux getBrokersConfig(KafkaCluster cluster, Intege } return loadBrokersConfig(cluster, brokerId) .map(list -> list.stream() - .map(InternalBrokerConfig::from) + .map(configEntry -> InternalBrokerConfig.from(configEntry, cluster.isReadOnly())) .collect(Collectors.toList())) .flatMapMany(Flux::fromIterable); }