|
@@ -1,18 +1,21 @@
|
|
import React from 'react';
|
|
import React from 'react';
|
|
import * as S from 'components/Topics/Topic/Messages/Filters/Filters.styled';
|
|
import * as S from 'components/Topics/Topic/Messages/Filters/Filters.styled';
|
|
-import { ActiveMessageFilter, MessageFilters } from 'components/Topics/Topic/Messages/Filters/Filters';
|
|
|
|
|
|
+import {
|
|
|
|
+ ActiveMessageFilter,
|
|
|
|
+ MessageFilters,
|
|
|
|
+} from 'components/Topics/Topic/Messages/Filters/Filters';
|
|
import AddFilter from 'components/Topics/Topic/Messages/Filters/AddFilter';
|
|
import AddFilter from 'components/Topics/Topic/Messages/Filters/AddFilter';
|
|
import EditFilter from 'components/Topics/Topic/Messages/Filters/EditFilter';
|
|
import EditFilter from 'components/Topics/Topic/Messages/Filters/EditFilter';
|
|
|
|
|
|
export interface FilterModalProps {
|
|
export interface FilterModalProps {
|
|
toggleIsOpen(): void;
|
|
toggleIsOpen(): void;
|
|
- filters?: MessageFilters[];
|
|
|
|
- addFilter?(values: MessageFilters): void;
|
|
|
|
- deleteFilter?(index: number): void;
|
|
|
|
- activeFilterHandler?(activeFilter: MessageFilters, index: number): void;
|
|
|
|
|
|
+ filters: MessageFilters[];
|
|
|
|
+ addFilter(values: MessageFilters): void;
|
|
|
|
+ deleteFilter(index: number): void;
|
|
|
|
+ activeFilterHandler(activeFilter: MessageFilters, index: number): void;
|
|
editSavedFilter(filter: FilterEdit): void;
|
|
editSavedFilter(filter: FilterEdit): void;
|
|
- activeFilter?: ActiveMessageFilter;
|
|
|
|
- quickEditMode?: boolean
|
|
|
|
|
|
+ activeFilter: ActiveMessageFilter;
|
|
|
|
+ quickEditMode?: boolean;
|
|
}
|
|
}
|
|
|
|
|
|
export interface FilterEdit {
|
|
export interface FilterEdit {
|
|
@@ -29,8 +32,9 @@ const FilterModal: React.FC<FilterModalProps> = ({
|
|
editSavedFilter,
|
|
editSavedFilter,
|
|
activeFilter,
|
|
activeFilter,
|
|
quickEditMode = false,
|
|
quickEditMode = false,
|
|
- }) => {
|
|
|
|
- const [isInEditMode, setIsInEditMode] = React.useState<boolean>(quickEditMode);
|
|
|
|
|
|
+}) => {
|
|
|
|
+ const [isInEditMode, setIsInEditMode] =
|
|
|
|
+ React.useState<boolean>(quickEditMode);
|
|
const [isSavedFiltersOpen, setIsSavedFiltersOpen] =
|
|
const [isSavedFiltersOpen, setIsSavedFiltersOpen] =
|
|
React.useState<boolean>(false);
|
|
React.useState<boolean>(false);
|
|
|
|
|
|
@@ -38,9 +42,11 @@ const FilterModal: React.FC<FilterModalProps> = ({
|
|
setIsInEditMode(!isInEditMode);
|
|
setIsInEditMode(!isInEditMode);
|
|
};
|
|
};
|
|
|
|
|
|
- const [editFilter, setEditFilter] = React.useState<FilterEdit>( () => {
|
|
|
|
- const {index, name, code} = activeFilter!;
|
|
|
|
- return quickEditMode ? { index, filter: { name, code } } : { index: -1, filter: { name: "", code: "" } };
|
|
|
|
|
|
+ const [editFilter, setEditFilter] = React.useState<FilterEdit>(() => {
|
|
|
|
+ const { index, name, code } = activeFilter;
|
|
|
|
+ return quickEditMode
|
|
|
|
+ ? { index, filter: { name, code } }
|
|
|
|
+ : { index: -1, filter: { name: '', code: '' } };
|
|
});
|
|
});
|
|
const editFilterHandler = (value: FilterEdit) => {
|
|
const editFilterHandler = (value: FilterEdit) => {
|
|
setEditFilter(value);
|
|
setEditFilter(value);
|
|
@@ -52,18 +58,18 @@ const FilterModal: React.FC<FilterModalProps> = ({
|
|
return (
|
|
return (
|
|
<S.MessageFilterModal data-testid="messageFilterModal">
|
|
<S.MessageFilterModal data-testid="messageFilterModal">
|
|
{isInEditMode ? (
|
|
{isInEditMode ? (
|
|
- <EditFilter
|
|
|
|
- editFilter={editFilter}
|
|
|
|
- toggleEditModal={toggleEditModalHandler}
|
|
|
|
- editSavedFilter={editSavedFilter}
|
|
|
|
- />
|
|
|
|
|
|
+ <EditFilter
|
|
|
|
+ editFilter={editFilter}
|
|
|
|
+ toggleEditModal={toggleEditModalHandler}
|
|
|
|
+ editSavedFilter={editSavedFilter}
|
|
|
|
+ />
|
|
) : (
|
|
) : (
|
|
<AddFilter
|
|
<AddFilter
|
|
toggleIsOpen={toggleIsOpen}
|
|
toggleIsOpen={toggleIsOpen}
|
|
- filters={filters!}
|
|
|
|
- addFilter={addFilter!}
|
|
|
|
- deleteFilter={deleteFilter!}
|
|
|
|
- activeFilterHandler={activeFilterHandler!}
|
|
|
|
|
|
+ filters={filters}
|
|
|
|
+ addFilter={addFilter}
|
|
|
|
+ deleteFilter={deleteFilter}
|
|
|
|
+ activeFilterHandler={activeFilterHandler}
|
|
toggleEditModal={toggleEditModal}
|
|
toggleEditModal={toggleEditModal}
|
|
editFilter={editFilterHandler}
|
|
editFilter={editFilterHandler}
|
|
isSavedFiltersOpen={isSavedFiltersOpen}
|
|
isSavedFiltersOpen={isSavedFiltersOpen}
|