web: files: fix TreeFoldersStore accesses

This commit is contained in:
Vladislav Makhov 2021-04-02 11:20:19 +03:00
parent df3f8ca9e5
commit 2bafdbc0d2
2 changed files with 24 additions and 41 deletions

View File

@ -1,43 +1,17 @@
import { makeObservable, observable, computed, action } from "mobx";
import { makeAutoObservable } from "mobx";
import { getFoldersTree } from "@appserver/common/api/files";
import { FolderType } from "@appserver/common/constants";
import selectedFolderStore from "./SelectedFolderStore";
class TreeFoldersStore {
selectedFolderStore;
treeFolders = [];
selectedTreeNode = [];
expandedKeys = [];
constructor() {
makeObservable(this, {
treeFolders: observable,
selectedTreeNode: observable,
expandedKeys: observable,
myFolderId: computed,
commonFolderId: computed,
myFolder: computed,
shareFolder: computed,
favoritesFolder: computed,
recentFolder: computed,
privacyFolder: computed,
commonFolder: computed,
recycleBinFolder: computed,
isMyFolder: computed,
isShareFolder: computed,
isFavoritesFolder: computed,
isRecentFolder: computed,
isPrivacyFolder: computed,
isCommonFolder: computed,
isRecycleBinFolder: computed,
fetchTreeFolders: action,
setTreeFolders: action,
setExpandedKeys: action,
setSelectedNode: action,
});
constructor(selectedFolderStore) {
makeAutoObservable(this);
this.selectedFolderStore = selectedFolderStore;
}
fetchTreeFolders = async () => {
@ -103,38 +77,46 @@ class TreeFoldersStore {
}
get isMyFolder() {
return this.myFolder && this.myFolder.id === selectedFolderStore.id;
return this.myFolder && this.myFolder.id === this.selectedFolderStore.id;
}
get isShareFolder() {
return this.shareFolder && this.shareFolder.id === selectedFolderStore.id;
return (
this.shareFolder && this.shareFolder.id === this.selectedFolderStore.id
);
}
get isFavoritesFolder() {
return (
this.favoritesFolder && selectedFolderStore.id === this.favoritesFolder.id
this.favoritesFolder &&
this.selectedFolderStore.id === this.favoritesFolder.id
);
}
get isRecentFolder() {
return this.recentFolder && selectedFolderStore.id === this.recentFolder.id;
return (
this.recentFolder && this.selectedFolderStore.id === this.recentFolder.id
);
}
get isPrivacyFolder() {
return (
this.privacyFolder &&
this.privacyFolder.rootFolderType === selectedFolderStore.rootFolderType
this.privacyFolder.rootFolderType ===
this.selectedFolderStore.rootFolderType
);
}
get isCommonFolder() {
return this.commonFolder && this.commonFolder.id === selectedFolderStore.id;
return (
this.commonFolder && this.commonFolder.id === this.selectedFolderStore.id
);
}
get isRecycleBinFolder() {
return (
this.recycleBinFolder &&
selectedFolderStore.id === this.recycleBinFolder.id
this.selectedFolderStore.id === this.recycleBinFolder.id
);
}
@ -155,4 +137,4 @@ class TreeFoldersStore {
}
}
export default new TreeFoldersStore();
export default TreeFoldersStore;

View File

@ -1,7 +1,7 @@
import FilesStore from "./FilesStore";
import fileActionStore from "./FileActionStore";
import selectedFolderStore from "./SelectedFolderStore";
import treeFoldersStore from "./TreeFoldersStore";
import TreeFoldersStore from "./TreeFoldersStore";
import InitFilesStore from "./InitFilesStore";
import thirdPartyStore from "./ThirdPartyStore";
import SettingsStore from "./SettingsStore";
@ -18,6 +18,7 @@ import dialogsStore from "./DialogsStore";
import store from "studio/store";
const treeFoldersStore = new TreeFoldersStore(selectedFolderStore);
const filesStore = new FilesStore(
store.auth,
store.auth.settingsStore,