diff --git a/products/ASC.Files/Client/src/store/TreeFoldersStore.js b/products/ASC.Files/Client/src/store/TreeFoldersStore.js index 4a396ca46c..53cb0da823 100644 --- a/products/ASC.Files/Client/src/store/TreeFoldersStore.js +++ b/products/ASC.Files/Client/src/store/TreeFoldersStore.js @@ -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; diff --git a/products/ASC.Files/Client/src/store/index.js b/products/ASC.Files/Client/src/store/index.js index 8da993c143..6db4a3d849 100644 --- a/products/ASC.Files/Client/src/store/index.js +++ b/products/ASC.Files/Client/src/store/index.js @@ -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,