1
1
import 'react-datepicker/dist/react-datepicker.css' ;
2
2
3
- import { SerdeUsage , TopicMessageConsuming , TopicMessage } from 'generated-sources' ;
3
+ import {
4
+ SerdeUsage ,
5
+ TopicMessageConsuming ,
6
+ TopicMessage ,
7
+ } from 'generated-sources' ;
4
8
import React , { ChangeEvent , useMemo , useState } from 'react' ;
5
9
import { format } from 'date-fns' ;
6
10
import MultiSelect from 'components/common/MultiSelect/MultiSelect.styled' ;
@@ -54,7 +58,7 @@ export interface FiltersProps {
54
58
consumptionStats ?: TopicMessageConsuming ;
55
59
isFetching : boolean ;
56
60
abortFetchData : ( ) => void ;
57
- messages ?: TopicMessage [ ] ;
61
+ messages ?: TopicMessage [ ] ;
58
62
}
59
63
60
64
const Filters : React . FC < FiltersProps > = ( {
@@ -88,7 +92,9 @@ const Filters: React.FC<FiltersProps> = ({
88
92
89
93
const { data : topic } = useTopicDetails ( { clusterName, topicName } ) ;
90
94
const [ createdEditedSmartId , setCreatedEditedSmartId ] = useState < string > ( ) ;
91
- const remove = useMessageFiltersStore ( ( state : { remove : ( id : string ) => void } ) => state . remove ) ;
95
+ const remove = useMessageFiltersStore (
96
+ ( state : { remove : ( id : string ) => void } ) => state . remove
97
+ ) ;
92
98
93
99
// Download functionality
94
100
const [ showFormatSelector , setShowFormatSelector ] = useState ( false ) ;
@@ -100,14 +106,16 @@ const Filters: React.FC<FiltersProps> = ({
100
106
101
107
const baseFileName = `topic-messages${ padCurrentDateTimeString ( ) } ` ;
102
108
103
- const savedMessagesJson : MessageData [ ] = messages . map ( ( message : TopicMessage ) => ( {
104
- Value : message . content ,
105
- Offset : message . offset ,
106
- Key : message . key ,
107
- Partition : message . partition ,
108
- Headers : message . headers ,
109
- Timestamp : message . timestamp ,
110
- } ) ) ;
109
+ const savedMessagesJson : MessageData [ ] = messages . map (
110
+ ( message : TopicMessage ) => ( {
111
+ Value : message . content ,
112
+ Offset : message . offset ,
113
+ Key : message . key ,
114
+ Partition : message . partition ,
115
+ Headers : message . headers ,
116
+ Timestamp : message . timestamp ,
117
+ } )
118
+ ) ;
111
119
112
120
const convertToCSV = useMemo ( ( ) => {
113
121
return ( messagesData : MessageData [ ] ) => {
@@ -305,7 +313,8 @@ const Filters: React.FC<FiltersProps> = ({
305
313
< path d = "M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" />
306
314
< polyline points = "7,10 12,15 17,10" />
307
315
< line x1 = "12" y1 = "15" x2 = "12" y2 = "3" />
308
- </ svg > Export
316
+ </ svg > { ' ' }
317
+ Export
309
318
</ Button >
310
319
{ showFormatSelector && (
311
320
< div
@@ -325,6 +334,7 @@ const Filters: React.FC<FiltersProps> = ({
325
334
{ formatOptions . map ( ( option ) => (
326
335
< button
327
336
key = { option . value }
337
+ type = "button"
328
338
onClick = { ( ) => handleFormatSelect ( option . value ) }
329
339
onKeyDown = { ( e ) => {
330
340
if ( e . key === 'Enter' || e . key === ' ' ) {
0 commit comments