From bd38dd6a8d7f664eda12bbd137ce19eee37762c3 Mon Sep 17 00:00:00 2001 From: Maxime Lalo Date: Tue, 19 Sep 2023 15:52:23 +0200 Subject: [PATCH] :bug: Fixing search --- .../DesignSystem/BlockList/classes.module.scss | 2 +- .../DesignSystem/FolderListContainer/index.tsx | 17 +++++++++++------ 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/src/front/Components/DesignSystem/BlockList/classes.module.scss b/src/front/Components/DesignSystem/BlockList/classes.module.scss index 2e542b94..ca2072d0 100644 --- a/src/front/Components/DesignSystem/BlockList/classes.module.scss +++ b/src/front/Components/DesignSystem/BlockList/classes.module.scss @@ -21,7 +21,7 @@ display: inline-flex; justify-content: space-between; align-items: center; - + overflow-wrap: anywhere; .warning { margin-left: 32px; } diff --git a/src/front/Components/DesignSystem/FolderListContainer/index.tsx b/src/front/Components/DesignSystem/FolderListContainer/index.tsx index 7c730e6e..abfeb50a 100644 --- a/src/front/Components/DesignSystem/FolderListContainer/index.tsx +++ b/src/front/Components/DesignSystem/FolderListContainer/index.tsx @@ -26,6 +26,7 @@ type IPropsClass = IProps & { type IState = { filteredFolders: OfficeFolder[]; + blocks: IBlock[]; }; class FolderListContainerClass extends React.Component { @@ -36,6 +37,7 @@ class FolderListContainerClass extends React.Component { super(props); this.state = { filteredFolders: this.props.folders, + blocks: this.getBlocks(this.props.folders), }; this.filterFolders = this.filterFolders.bind(this); this.onSelectedFolder = this.onSelectedFolder.bind(this); @@ -50,7 +52,7 @@ class FolderListContainerClass extends React.Component {
- +
{!this.props.isArchived && ( @@ -73,8 +75,8 @@ class FolderListContainerClass extends React.Component { ); } - private getBlocks(): IBlock[] { - const pendingFolders = this.props.folders + private getBlocks(folders: OfficeFolder[]): IBlock[] { + const pendingFolders = folders .filter((folder) => { const pendingDocuments = (folder.documents ?? []).filter( (document) => document.document_status === EDocumentStatus.DEPOSITED, @@ -85,7 +87,7 @@ class FolderListContainerClass extends React.Component { return folder1.created_at! > folder2.created_at! ? -1 : 1; }); - const otherFolders = this.props.folders + const otherFolders = folders .filter((folder) => { const pendingDocuments = (folder.documents ?? []).filter( (document) => document.document_status === EDocumentStatus.DEPOSITED, @@ -104,6 +106,7 @@ class FolderListContainerClass extends React.Component { }; }); } + private onSelectedFolder(block: IBlock) { const folder = this.props.folders.find((folder) => folder.uid === block.id); if (!folder) return; @@ -116,19 +119,21 @@ class FolderListContainerClass extends React.Component { const filteredFolders: OfficeFolder[] = this.props.folders.filter((folder) => { const name = folder.name.toLowerCase(); const number = folder.folder_number.toLowerCase(); - + value = value.toLowerCase(); if (folder.customers) { const customerNames = folder.customers .map((customer) => { return `${customer.contact?.first_name.toLowerCase()} ${customer.contact?.last_name.toLowerCase()}`; }) .join(", "); + return name.includes(value) || number.includes(value) || customerNames.includes(value); } return name.includes(value) || number.includes(value); }); - this.setState({ filteredFolders }); + + this.setState({ filteredFolders, blocks: this.getBlocks(filteredFolders) }); } }