From 83325a89df95a5584cd3ef5c05ab20b7035c0a7d Mon Sep 17 00:00:00 2001 From: DmitrySychugov Date: Thu, 18 Apr 2024 21:11:09 +0500 Subject: [PATCH] Client: TableView: logic changes for vdr indexes --- .../Section/Body/TableView/TableHeader.js | 28 +++++++++++-------- .../Body/TableView/sub-components/RowData.js | 18 +++++++++--- 2 files changed, 31 insertions(+), 15 deletions(-) diff --git a/packages/client/src/pages/Home/Section/Body/TableView/TableHeader.js b/packages/client/src/pages/Home/Section/Body/TableView/TableHeader.js index 729abdede8..47b321d688 100644 --- a/packages/client/src/pages/Home/Section/Body/TableView/TableHeader.js +++ b/packages/client/src/pages/Home/Section/Body/TableView/TableHeader.js @@ -58,6 +58,7 @@ class FilesTableHeader extends React.Component { isArchiveFolder, indexing, roomType, + isVirtualDataRoom, } = this.props; const defaultColumns = []; @@ -290,16 +291,6 @@ class FilesTableHeader extends React.Component { ]; defaultColumns.push(...columns); } else { - const indexBlock = - indexing && roomType === RoomsType.VirtualDataRoom - ? { - key: "Index", - title: t("idx"), - enable: this.props.indexColumnIsEnabled, - minWidth: 50, - } - : {}; - const authorBlock = !isPublicRoom ? { key: "Author", @@ -313,7 +304,6 @@ class FilesTableHeader extends React.Component { : {}; const columns = [ - { ...indexBlock }, { key: "Name", title: t("Common:Name"), @@ -372,6 +362,15 @@ class FilesTableHeader extends React.Component { defaultColumns.push(...columns); } + if (isVirtualDataRoom && indexing) { + defaultColumns.unshift({ + key: "Index", + title: t("idx"), + enable: this.props.indexColumnIsEnabled, + // minWidth: 110, + }); + } + let columns = getColumns(defaultColumns); const storageColumns = localStorage.getItem(this.props.tableStorageName); const splitColumns = storageColumns && storageColumns.split(","); @@ -450,9 +449,11 @@ class FilesTableHeader extends React.Component { columnInfoPanelStorageName, isRecentTab, isArchiveFolder, + isVirtualDataRoom, } = this.props; if ( + isVirtualDataRoom !== prevProps.isVirtualDataRoom || isArchiveFolder !== prevProps.isArchiveFolder || isRooms !== prevProps.isRooms || isTrashFolder !== prevProps.isTrashFolder || @@ -670,6 +671,10 @@ export default inject( const { isPublicRoom, publicRoomKey } = publicRoomStore; + const isVirtualDataRoom = + window.location.pathname.includes("rooms/shared") && + roomType === RoomsType.VirtualDataRoom; + return { setRoomsFilter, isHeaderChecked, @@ -723,6 +728,7 @@ export default inject( setColumnEnable, isTrashFolder, isPublicRoom, + isVirtualDataRoom, publicRoomKey, isFrame, diff --git a/packages/client/src/pages/Home/Section/Body/TableView/sub-components/RowData.js b/packages/client/src/pages/Home/Section/Body/TableView/sub-components/RowData.js index b122010aa4..a73e57a4ee 100644 --- a/packages/client/src/pages/Home/Section/Body/TableView/sub-components/RowData.js +++ b/packages/client/src/pages/Home/Section/Body/TableView/sub-components/RowData.js @@ -34,6 +34,7 @@ import DateCell from "./DateCell"; import SizeCell from "./SizeCell"; import IndexCell from "./IndexCell"; import { classNames } from "@docspace/shared/utils"; +import { RoomsType } from "@docspace/shared/enums"; import { StyledBadgesContainer, StyledQuickButtonsContainer, @@ -60,11 +61,13 @@ const RowDataComponent = (props) => { showHotkeyBorder, badgesComponent, quickButtonsComponent, + + enableIndexing, } = props; return ( <> - {indexColumnIsEnabled ? ( + {indexColumnIsEnabled && enableIndexing && ( { {...props} /> - ) : ( -
)} { ); }; -export default inject(({ tableStore }) => { +export default inject(({ tableStore, selectedFolderStore }) => { const { authorColumnIsEnabled, createdColumnIsEnabled, @@ -220,6 +221,13 @@ export default inject(({ tableStore }) => { quickButtonsColumnIsEnabled, } = tableStore; + const { indexing, roomType } = selectedFolderStore; + + const enableIndexing = + window.location.pathname.includes("rooms/shared") && + roomType === RoomsType.VirtualDataRoom && + indexing; + return { authorColumnIsEnabled, createdColumnIsEnabled, @@ -228,5 +236,7 @@ export default inject(({ tableStore }) => { indexColumnIsEnabled, typeColumnIsEnabled, quickButtonsColumnIsEnabled, + + enableIndexing, }; })(observer(RowDataComponent));