Skip to content

Commit 06f3368

Browse files
committed
fixes after review
1 parent 90b0073 commit 06f3368

File tree

1 file changed

+27
-22
lines changed

1 file changed

+27
-22
lines changed

frontend/src/components/Topics/Topic/Messages/MessagesTable.tsx

Lines changed: 27 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import PageLoader from 'components/common/PageLoader/PageLoader';
22
import { Table } from 'components/common/table/Table/Table.styled';
33
import TableHeaderCell from 'components/common/table/TableHeaderCell/TableHeaderCell';
44
import { TopicMessage } from 'generated-sources';
5-
import React, { useEffect, useState } from 'react';
5+
import React, { useCallback, useEffect, useState } from 'react';
66
import { Button } from 'components/common/Button/Button';
77
import * as S from 'components/common/NewTable/Table.styled';
88
import { usePaginateTopics, useIsLiveMode } from 'lib/hooks/useMessagesFilters';
@@ -50,33 +50,38 @@ const MessagesTable: React.FC<MessagesTableProps> = ({
5050
setContentFilters(messagesPreview[topicName]?.contentFilters || []);
5151
}, []);
5252

53+
const setFilters = useCallback(
54+
(payload: PreviewFilter[]) => {
55+
if (previewFor === 'key') {
56+
setKeyFilters(payload);
57+
setMessagesPreview({
58+
...messagesPreview,
59+
[topicName]: {
60+
...messagesPreview[topicName],
61+
keyFilters: payload,
62+
},
63+
});
64+
} else {
65+
setContentFilters(payload);
66+
setMessagesPreview({
67+
...messagesPreview,
68+
[topicName]: {
69+
...messagesPreview[topicName],
70+
contentFilters: payload,
71+
},
72+
});
73+
}
74+
},
75+
[previewFor, messagesPreview, topicName]
76+
);
77+
5378
return (
5479
<div style={{ position: 'relative' }}>
5580
{previewFor !== null && (
5681
<PreviewModal
5782
values={previewFor === 'key' ? keyFilters : contentFilters}
5883
toggleIsOpen={() => setPreviewFor(null)}
59-
setFilters={(payload: PreviewFilter[]) => {
60-
if (previewFor === 'key') {
61-
setKeyFilters(payload);
62-
setMessagesPreview({
63-
...messagesPreview,
64-
[topicName]: {
65-
...messagesPreview[topicName],
66-
keyFilters: payload,
67-
},
68-
});
69-
} else {
70-
setContentFilters(payload);
71-
setMessagesPreview({
72-
...messagesPreview,
73-
[topicName]: {
74-
...messagesPreview[topicName],
75-
contentFilters: payload,
76-
},
77-
});
78-
}
79-
}}
84+
setFilters={setFilters}
8085
/>
8186
)}
8287
<Table isFullwidth>

0 commit comments

Comments
 (0)