Web: Files: added table-view to files module

This commit is contained in:
Nikita Gopienko 2021-07-15 13:45:04 +03:00
parent 568aa61071
commit 9f3d12dacb
4 changed files with 56 additions and 44 deletions

View File

@ -81,5 +81,6 @@
"UnblockVersion": "Unblock/Check-in",
"UploadToFolder": "Upload to folder",
"ViewList": "List",
"ViewTiles": "Tiles"
}
"ViewTiles": "Tiles",
"ViewTables": "Tables"
}

View File

@ -81,5 +81,6 @@
"UnblockVersion": "Заблокировать/Разблокировать",
"UploadToFolder": "Загрузить в папку",
"ViewList": "Список",
"ViewTiles": "Плитки"
}
"ViewTiles": "Плитки",
"ViewTables": "Таблицы"
}

View File

@ -159,8 +159,8 @@ const SectionBodyContent = (props) => {
return (!fileActionId && isEmptyFilesList) || null ? (
<EmptyContainer />
) : viewAs === "tile" ? (
<FilesTileContainer />
) : viewAs === "table" || viewAs === "row" ? (
<FilesTileContainer t={t} />
) : viewAs === "table" ? (
<TableView />
) : (
<FilesRowContainer tReady={tReady} />

View File

@ -212,12 +212,12 @@ class SectionFilterContent extends React.Component {
{ key: "Size", label: t("Common:Size"), default: true },
];
if (!personal)
commonOptions.push({
key: "Author",
label: t("ByAuthor"),
default: true,
});
if (!personal)
commonOptions.push({
key: "Author",
label: t("ByAuthor"),
default: true,
});
return commonOptions;
};
@ -229,20 +229,23 @@ class SectionFilterContent extends React.Component {
{
value: "row",
label: t("ViewList"),
isSetting: isMobileOnly,
default: true,
icon: "/static/images/view-rows.react.svg",
},
{
value: "tile",
label: t("ViewTiles"),
isSetting: isMobileOnly,
default: true,
icon: "/static/images/view-tiles.react.svg",
callback: createThumbnails,
},
];
!isMobile &&
viewSettings.push({
value: "table",
label: t("ViewTables"),
icon: "/static/images/view-tiles.react.svg",
});
return viewSettings;
};
@ -290,7 +293,14 @@ class SectionFilterContent extends React.Component {
render() {
//console.log("Filter render");
const selectedFilterData = this.getSelectedFilterData();
const { t, sectionWidth, tReady, isFiltered, viewAs, personal } = this.props;
const {
t,
sectionWidth,
tReady,
isFiltered,
viewAs,
personal,
} = this.props;
const filterColumnCount =
window.innerWidth < 500 ? {} : { filterColumnCount: personal ? 2 : 3 };
@ -320,22 +330,22 @@ class SectionFilterContent extends React.Component {
export default inject(
({ auth, filesStore, treeFoldersStore, selectedFolderStore }) => {
const {
fetchFiles,
filter,
setIsLoading,
setViewAs,
viewAs,
files,
folders,
const {
fetchFiles,
filter,
setIsLoading,
setViewAs,
viewAs,
files,
folders,
createThumbnails,
} = filesStore;
} = filesStore;
const { user } = auth.userStore;
const { customNames, culture, personal } = auth.settingsStore;
const { user } = auth.userStore;
const { customNames, culture, personal } = auth.settingsStore;
const { search, filterType, authorType } = filter;
const isFiltered =
const { search, filterType, authorType } = filter;
const isFiltered =
(!!files.length ||
!!folders.length ||
search ||
@ -343,22 +353,22 @@ export default inject(
authorType) &&
!(treeFoldersStore.isPrivacyFolder && isMobile);
return {
customNames,
user,
selectedFolderId: selectedFolderStore.id,
selectedItem: filter.selectedItem,
filter,
viewAs,
isFiltered,
return {
customNames,
user,
selectedFolderId: selectedFolderStore.id,
selectedItem: filter.selectedItem,
filter,
viewAs,
isFiltered,
setIsLoading,
fetchFiles,
setViewAs,
createThumbnails,
setIsLoading,
fetchFiles,
setViewAs,
createThumbnails,
personal,
};
personal,
};
}
)(
withRouter(