Client: TableView: logic changes for vdr indexes

This commit is contained in:
Dmitry Sychugov 2024-04-18 21:11:09 +05:00
parent dc7f45f7f6
commit 83325a89df
2 changed files with 31 additions and 15 deletions

View File

@ -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,

View File

@ -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 && (
<TableCell
style={
!indexColumnIsEnabled ? { background: "none" } : dragStyles.style
@ -76,8 +79,6 @@ const RowDataComponent = (props) => {
{...props}
/>
</TableCell>
) : (
<div />
)}
<TableCell
@ -209,7 +210,7 @@ const RowDataComponent = (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));