Web: Files: Thumbnails: removed ThumbnailsStore, createThumbnails func moved to FilesStore, applied createThumbnails func

This commit is contained in:
Artem Tarasov 2021-06-19 09:48:30 +03:00
parent 83549b62cd
commit a81ba032fa
5 changed files with 50 additions and 64 deletions

View File

@ -48,7 +48,6 @@ export function getFolder(folderId, filter) {
filter && filter instanceof FilesFilter
? `${folderId}?${filter.toApiUrlParams()}`
: folderId;
console.log(params);
const options = {
method: "get",
url: `/files/${params}`,

View File

@ -93,7 +93,8 @@ class SectionFilterContent extends React.Component {
};
onChangeViewAs = (view) => {
const { setViewAs } = this.props;
const { setViewAs, createThumbnails } = this.props;
if (view === "tile") createThumbnails();
setViewAs(view);
};
@ -289,38 +290,43 @@ class SectionFilterContent extends React.Component {
}
}
export default inject(({ auth, filesStore, selectedFolderStore }) => {
const {
fetchFiles,
filter,
setIsLoading,
setViewAs,
viewAs,
files,
folders,
} = filesStore;
export default inject(
({ auth, filesStore, selectedFolderStore, thumbnailsStore }) => {
const {
fetchFiles,
filter,
setIsLoading,
setViewAs,
viewAs,
files,
folders,
createThumbnails,
} = filesStore;
const { user } = auth.userStore;
const { customNames, culture } = auth.settingsStore;
const { user } = auth.userStore;
const { customNames, culture } = auth.settingsStore;
const { search, filterType, authorType } = filter;
const isFiltered =
!!files.length || !!folders.length || search || filterType || authorType;
const { search, filterType, authorType } = filter;
const isFiltered =
!!files.length || !!folders.length || search || filterType || authorType;
return {
customNames,
user,
selectedFolderId: selectedFolderStore.id,
selectedItem: filter.selectedItem,
filter,
viewAs,
isFiltered,
//const { createThumbnails } = thumbnailsStore;
return {
customNames,
user,
selectedFolderId: selectedFolderStore.id,
selectedItem: filter.selectedItem,
filter,
viewAs,
isFiltered,
setIsLoading,
fetchFiles,
setViewAs,
};
})(
setIsLoading,
fetchFiles,
setViewAs,
createThumbnails,
};
}
)(
withRouter(
withLayoutSize(
withTranslation(["Home", "Common", "Translations"])(

View File

@ -264,6 +264,7 @@ class FilesStore {
getSubfolders,
} = this.treeFoldersStore;
setSelectedNode([folderId + ""]);
this.createThumbnails();
if (privacyFolder && privacyFolder.id === +folderId) {
if (!this.settingsStore.isEncryptionSupport) {
@ -1316,6 +1317,20 @@ class FilesStore {
);
}
};
createThumbnails = () => {
const filesList = this.filesList;
const fileIds = [];
const re = /\d*$/;
filesList.map((file) => {
if (!file.thumbnailUrl && !file.isFolder) {
fileIds.push(file.id);
}
});
if (fileIds.length) return api.files.createThumbnails(fileIds);
};
}
export default FilesStore;

View File

@ -1,31 +0,0 @@
import { makeAutoObservable } from "mobx";
import api from "@appserver/common/api";
class FilesActionStore {
filesStore;
constructor(filesStore) {
makeAutoObservable(this);
this.filesStore = filesStore;
}
createThumbnails = () => {
const filesList = this.filesStore.filesList;
const fileIds = [];
const re = /\d*$/;
filesList.map((file) => {
if (
!file.thumbnailUrl ||
(file.thumbnailUrl && file.thumbnailUrl.match(re)[0] != file.version)
) {
fileIds.push(file.id);
}
});
return api.files.createThumbnails(fileIds);
};
}
export default FilesActionStore;

View File

@ -16,7 +16,6 @@ import PrimaryProgressDataStore from "./PrimaryProgressDataStore";
import VersionHistoryStore from "./VersionHistoryStore";
import DialogsStore from "./DialogsStore";
import ThumbnailsStore from "./ThumbnailsStore";
import store from "studio/store";
@ -67,7 +66,6 @@ const filesActionsStore = new FilesActionsStore(
);
const versionHistoryStore = new VersionHistoryStore(filesStore);
const thumbnailsStore = new ThumbnailsStore(filesStore);
const stores = {
filesStore,
@ -80,7 +78,6 @@ const stores = {
treeFoldersStore,
selectedFolderStore,
filesActionsStore,
thumbnailsStore,
};
export default stores;