Web: Files: removed FormatsStore, added getting file formats from SettingsStore
This commit is contained in:
parent
264b3a8764
commit
ccc0838269
@ -132,17 +132,16 @@ export default function withBadges(WrappedComponent) {
|
|||||||
(
|
(
|
||||||
{
|
{
|
||||||
auth,
|
auth,
|
||||||
formatsStore,
|
|
||||||
treeFoldersStore,
|
treeFoldersStore,
|
||||||
filesActionsStore,
|
filesActionsStore,
|
||||||
versionHistoryStore,
|
versionHistoryStore,
|
||||||
selectedFolderStore,
|
selectedFolderStore,
|
||||||
dialogsStore,
|
dialogsStore,
|
||||||
filesStore,
|
filesStore,
|
||||||
|
settingsStore,
|
||||||
},
|
},
|
||||||
{ item }
|
{ item }
|
||||||
) => {
|
) => {
|
||||||
const { docserviceStore } = formatsStore;
|
|
||||||
const { isRecycleBinFolder, isPrivacyFolder } = treeFoldersStore;
|
const { isRecycleBinFolder, isPrivacyFolder } = treeFoldersStore;
|
||||||
const {
|
const {
|
||||||
lockFileAction,
|
lockFileAction,
|
||||||
@ -158,8 +157,8 @@ export default function withBadges(WrappedComponent) {
|
|||||||
} = dialogsStore;
|
} = dialogsStore;
|
||||||
const { setIsLoading } = filesStore;
|
const { setIsLoading } = filesStore;
|
||||||
|
|
||||||
const canWebEdit = docserviceStore.canWebEdit(item.fileExst);
|
const canWebEdit = settingsStore.canWebEdit(item.fileExst);
|
||||||
const canConvert = docserviceStore.canConvert(item.fileExst);
|
const canConvert = settingsStore.canConvert(item.fileExst);
|
||||||
|
|
||||||
return {
|
return {
|
||||||
isAdmin: auth.isAdmin,
|
isAdmin: auth.isAdmin,
|
||||||
|
@ -25,7 +25,7 @@ export default function withContextOptions(WrappedComponent) {
|
|||||||
const {
|
const {
|
||||||
copyAsAction,
|
copyAsAction,
|
||||||
item,
|
item,
|
||||||
formfillingDocs,
|
extsWebRestrictedEditing,
|
||||||
setConvertPasswordDialogVisible,
|
setConvertPasswordDialogVisible,
|
||||||
setFormCreationInfo,
|
setFormCreationInfo,
|
||||||
t,
|
t,
|
||||||
@ -33,7 +33,8 @@ export default function withContextOptions(WrappedComponent) {
|
|||||||
const { title, id, folderId, fileExst } = item;
|
const { title, id, folderId, fileExst } = item;
|
||||||
|
|
||||||
const newTitle =
|
const newTitle =
|
||||||
title.substring(0, title.length - fileExst.length) + formfillingDocs[0];
|
title.substring(0, title.length - fileExst.length) +
|
||||||
|
extsWebRestrictedEditing[0];
|
||||||
|
|
||||||
copyAsAction(id, newTitle, folderId).catch((err) => {
|
copyAsAction(id, newTitle, folderId).catch((err) => {
|
||||||
console.log("err", err);
|
console.log("err", err);
|
||||||
@ -44,7 +45,7 @@ export default function withContextOptions(WrappedComponent) {
|
|||||||
setFormCreationInfo({
|
setFormCreationInfo({
|
||||||
newTitle,
|
newTitle,
|
||||||
fromExst: fileExst,
|
fromExst: fileExst,
|
||||||
toExst: formfillingDocs[0],
|
toExst: extsWebRestrictedEditing[0],
|
||||||
fileInfo: item,
|
fileInfo: item,
|
||||||
});
|
});
|
||||||
setConvertPasswordDialogVisible(true);
|
setConvertPasswordDialogVisible(true);
|
||||||
@ -641,10 +642,11 @@ export default function withContextOptions(WrappedComponent) {
|
|||||||
treeFoldersStore,
|
treeFoldersStore,
|
||||||
uploadDataStore,
|
uploadDataStore,
|
||||||
versionHistoryStore,
|
versionHistoryStore,
|
||||||
|
settingsStore,
|
||||||
},
|
},
|
||||||
{ item }
|
{ item }
|
||||||
) => {
|
) => {
|
||||||
const { openDocEditor, fileActionStore, formatsStore } = filesStore;
|
const { openDocEditor, fileActionStore } = filesStore;
|
||||||
const {
|
const {
|
||||||
deleteItemAction,
|
deleteItemAction,
|
||||||
downloadAction,
|
downloadAction,
|
||||||
@ -676,7 +678,7 @@ export default function withContextOptions(WrappedComponent) {
|
|||||||
const { setAction, type, extension, id } = fileActionStore;
|
const { setAction, type, extension, id } = fileActionStore;
|
||||||
const { setMediaViewerData } = mediaViewerDataStore;
|
const { setMediaViewerData } = mediaViewerDataStore;
|
||||||
const { copyAsAction } = uploadDataStore;
|
const { copyAsAction } = uploadDataStore;
|
||||||
const { formfillingDocs } = formatsStore.docserviceStore;
|
const { extsWebRestrictedEditing } = settingsStore;
|
||||||
|
|
||||||
const { isRecycleBinFolder, isShare } = treeFoldersStore;
|
const { isRecycleBinFolder, isShare } = treeFoldersStore;
|
||||||
const isShareFolder = isShare(item.rootFolderType);
|
const isShareFolder = isShare(item.rootFolderType);
|
||||||
@ -717,7 +719,7 @@ export default function withContextOptions(WrappedComponent) {
|
|||||||
setUnsubscribe,
|
setUnsubscribe,
|
||||||
isDesktop: isDesktopClient,
|
isDesktop: isDesktopClient,
|
||||||
copyAsAction,
|
copyAsAction,
|
||||||
formfillingDocs,
|
extsWebRestrictedEditing,
|
||||||
setFormCreationInfo,
|
setFormCreationInfo,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -303,8 +303,8 @@ export default function withFileActions(WrappedFileItem) {
|
|||||||
//selectedFolderStore,
|
//selectedFolderStore,
|
||||||
filesStore,
|
filesStore,
|
||||||
uploadDataStore,
|
uploadDataStore,
|
||||||
formatsStore,
|
|
||||||
mediaViewerDataStore,
|
mediaViewerDataStore,
|
||||||
|
settingsStore,
|
||||||
},
|
},
|
||||||
{ item, t, history }
|
{ item, t, history }
|
||||||
) => {
|
) => {
|
||||||
@ -346,7 +346,6 @@ export default function withFileActions(WrappedFileItem) {
|
|||||||
} = filesStore;
|
} = filesStore;
|
||||||
const { startUpload } = uploadDataStore;
|
const { startUpload } = uploadDataStore;
|
||||||
const { type, extension, id } = fileActionStore;
|
const { type, extension, id } = fileActionStore;
|
||||||
const { mediaViewersFormatsStore, docserviceStore } = formatsStore;
|
|
||||||
const { setMediaViewerData } = mediaViewerDataStore;
|
const { setMediaViewerData } = mediaViewerDataStore;
|
||||||
|
|
||||||
const selectedItem = selection.find(
|
const selectedItem = selection.find(
|
||||||
@ -358,13 +357,10 @@ export default function withFileActions(WrappedFileItem) {
|
|||||||
|
|
||||||
const isFolder = selectedItem ? false : !item.isFolder ? false : true;
|
const isFolder = selectedItem ? false : !item.isFolder ? false : true;
|
||||||
|
|
||||||
const isMediaOrImage = mediaViewersFormatsStore.isMediaOrImage(
|
const isMediaOrImage = settingsStore.isMediaOrImage(item.fileExst);
|
||||||
item.fileExst
|
const canWebEdit = settingsStore.canWebEdit(item.fileExst);
|
||||||
);
|
const canConvert = settingsStore.canConvert(item.fileExst);
|
||||||
|
const canViewedDocs = settingsStore.canViewedDocs(item.fileExst);
|
||||||
const canWebEdit = docserviceStore.canWebEdit(item.fileExst);
|
|
||||||
const canConvert = docserviceStore.canConvert(item.fileExst);
|
|
||||||
const canViewedDocs = docserviceStore.canViewedDocs(item.fileExst);
|
|
||||||
|
|
||||||
const inProgress =
|
const inProgress =
|
||||||
activeFiles.findIndex((x) => x === item.id) !== -1 ||
|
activeFiles.findIndex((x) => x === item.id) !== -1 ||
|
||||||
|
@ -25,7 +25,7 @@ const DownloadContent = (props) => {
|
|||||||
getItemIcon,
|
getItemIcon,
|
||||||
titleFormat,
|
titleFormat,
|
||||||
type,
|
type,
|
||||||
filesConverts,
|
extsConvertible,
|
||||||
title,
|
title,
|
||||||
} = props;
|
} = props;
|
||||||
|
|
||||||
@ -37,9 +37,7 @@ const DownloadContent = (props) => {
|
|||||||
for (let item of items) {
|
for (let item of items) {
|
||||||
const exst = item.fileExst;
|
const exst = item.fileExst;
|
||||||
|
|
||||||
const exstItem = filesConverts.find((f) => f[exst]);
|
arr = [...arr, ...extsConvertible[exst]];
|
||||||
const arrayExst = exstItem ? exstItem[exst] : [];
|
|
||||||
arr = [...arr, ...arrayExst];
|
|
||||||
}
|
}
|
||||||
|
|
||||||
arr = arr.filter((x, pos) => arr.indexOf(x) !== pos);
|
arr = arr.filter((x, pos) => arr.indexOf(x) !== pos);
|
||||||
@ -92,9 +90,7 @@ const DownloadContent = (props) => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const getFormats = (item) => {
|
const getFormats = (item) => {
|
||||||
const arrayFormats = item && filesConverts.find((f) => f[item.fileExst]);
|
const arrayFormats = item ? extsConvertible[item.fileExst] : [];
|
||||||
const conversionFormats = arrayFormats ? arrayFormats[item.fileExst] : [];
|
|
||||||
|
|
||||||
const formats = [
|
const formats = [
|
||||||
{
|
{
|
||||||
key: "original",
|
key: "original",
|
||||||
@ -105,7 +101,7 @@ const DownloadContent = (props) => {
|
|||||||
"data-file-id": item.id,
|
"data-file-id": item.id,
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
for (let f of conversionFormats) {
|
for (let f of arrayFormats) {
|
||||||
formats.push({
|
formats.push({
|
||||||
key: f,
|
key: f,
|
||||||
label: f,
|
label: f,
|
||||||
|
@ -316,7 +316,7 @@ class DownloadDialogComponent extends React.Component {
|
|||||||
};
|
};
|
||||||
|
|
||||||
render() {
|
render() {
|
||||||
const { visible, t, tReady, filesConverts } = this.props;
|
const { visible, t, tReady, extsConvertible } = this.props;
|
||||||
const {
|
const {
|
||||||
documentsTitleFormat,
|
documentsTitleFormat,
|
||||||
spreadsheetsTitleFormat,
|
spreadsheetsTitleFormat,
|
||||||
@ -358,7 +358,7 @@ class DownloadDialogComponent extends React.Component {
|
|||||||
{documents.length > 0 && (
|
{documents.length > 0 && (
|
||||||
<DownloadContent
|
<DownloadContent
|
||||||
t={t}
|
t={t}
|
||||||
filesConverts={filesConverts}
|
extsConvertible={extsConvertible}
|
||||||
checkedTitle={checkedDocTitle}
|
checkedTitle={checkedDocTitle}
|
||||||
indeterminateTitle={indeterminateDocTitle}
|
indeterminateTitle={indeterminateDocTitle}
|
||||||
items={documents}
|
items={documents}
|
||||||
@ -374,7 +374,7 @@ class DownloadDialogComponent extends React.Component {
|
|||||||
{spreadsheets.length > 0 && (
|
{spreadsheets.length > 0 && (
|
||||||
<DownloadContent
|
<DownloadContent
|
||||||
t={t}
|
t={t}
|
||||||
filesConverts={filesConverts}
|
extsConvertible={extsConvertible}
|
||||||
checkedTitle={checkedSpreadsheetTitle}
|
checkedTitle={checkedSpreadsheetTitle}
|
||||||
indeterminateTitle={indeterminateSpreadsheetTitle}
|
indeterminateTitle={indeterminateSpreadsheetTitle}
|
||||||
items={spreadsheets}
|
items={spreadsheets}
|
||||||
@ -390,7 +390,7 @@ class DownloadDialogComponent extends React.Component {
|
|||||||
{presentations.length > 0 && (
|
{presentations.length > 0 && (
|
||||||
<DownloadContent
|
<DownloadContent
|
||||||
t={t}
|
t={t}
|
||||||
filesConverts={filesConverts}
|
extsConvertible={extsConvertible}
|
||||||
checkedTitle={checkedPresentationTitle}
|
checkedTitle={checkedPresentationTitle}
|
||||||
indeterminateTitle={indeterminatePresentationTitle}
|
indeterminateTitle={indeterminatePresentationTitle}
|
||||||
items={presentations}
|
items={presentations}
|
||||||
@ -503,10 +503,9 @@ const DownloadDialog = withTranslation([
|
|||||||
])(DownloadDialogComponent);
|
])(DownloadDialogComponent);
|
||||||
|
|
||||||
export default inject(
|
export default inject(
|
||||||
({ filesStore, formatsStore, dialogsStore, filesActionsStore }) => {
|
({ filesStore, dialogsStore, filesActionsStore, settingsStore }) => {
|
||||||
const { sortedFiles } = filesStore;
|
const { sortedFiles } = filesStore;
|
||||||
const { getIcon, getFolderIcon } = formatsStore.iconFormatsStore;
|
const { extsConvertible, getIcon, getFolderIcon } = settingsStore;
|
||||||
const { filesConverts } = formatsStore.docserviceStore;
|
|
||||||
|
|
||||||
const {
|
const {
|
||||||
downloadDialogVisible: visible,
|
downloadDialogVisible: visible,
|
||||||
@ -518,7 +517,7 @@ export default inject(
|
|||||||
return {
|
return {
|
||||||
sortedFiles,
|
sortedFiles,
|
||||||
visible,
|
visible,
|
||||||
filesConverts,
|
extsConvertible,
|
||||||
|
|
||||||
getIcon,
|
getIcon,
|
||||||
getFolderIcon,
|
getFolderIcon,
|
||||||
|
@ -242,10 +242,10 @@ export default inject(
|
|||||||
filesStore,
|
filesStore,
|
||||||
mediaViewerDataStore,
|
mediaViewerDataStore,
|
||||||
treeFoldersStore,
|
treeFoldersStore,
|
||||||
formatsStore,
|
|
||||||
filesActionsStore,
|
filesActionsStore,
|
||||||
selectedFolderStore,
|
selectedFolderStore,
|
||||||
dialogsStore,
|
dialogsStore,
|
||||||
|
settingsStore,
|
||||||
}) => {
|
}) => {
|
||||||
const {
|
const {
|
||||||
fetchFiles,
|
fetchFiles,
|
||||||
@ -259,7 +259,7 @@ export default inject(
|
|||||||
} = filesStore;
|
} = filesStore;
|
||||||
const { updateRootBadge } = treeFoldersStore;
|
const { updateRootBadge } = treeFoldersStore;
|
||||||
const { setMediaViewerData } = mediaViewerDataStore;
|
const { setMediaViewerData } = mediaViewerDataStore;
|
||||||
const { getIcon, getFolderIcon } = formatsStore.iconFormatsStore;
|
const { getIcon, getFolderIcon } = settingsStore;
|
||||||
const { markAsRead } = filesActionsStore;
|
const { markAsRead } = filesActionsStore;
|
||||||
const { pathParts } = selectedFolderStore;
|
const { pathParts } = selectedFolderStore;
|
||||||
|
|
||||||
|
@ -66,9 +66,8 @@ FilesListRow.defaultProps = {
|
|||||||
isMultiSelect: false,
|
isMultiSelect: false,
|
||||||
};
|
};
|
||||||
|
|
||||||
export default inject(({ formatsStore }, { fileExst }) => {
|
export default inject(({ settingsStore }, { fileExst }) => {
|
||||||
const { iconFormatsStore } = formatsStore;
|
const iconSrc = settingsStore.getIconSrc(fileExst, 24);
|
||||||
const iconSrc = iconFormatsStore.getIconSrc(fileExst, 24);
|
|
||||||
return {
|
return {
|
||||||
iconSrc,
|
iconSrc,
|
||||||
};
|
};
|
||||||
|
@ -353,7 +353,10 @@ class FileRow extends Component {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
export default inject(
|
export default inject(
|
||||||
({ auth, formatsStore, uploadDataStore, mediaViewerDataStore }, { item }) => {
|
(
|
||||||
|
{ auth, uploadDataStore, mediaViewerDataStore, settingsStore },
|
||||||
|
{ item }
|
||||||
|
) => {
|
||||||
let ext;
|
let ext;
|
||||||
let name;
|
let name;
|
||||||
let splitted;
|
let splitted;
|
||||||
@ -368,11 +371,11 @@ export default inject(
|
|||||||
}
|
}
|
||||||
const { personal } = auth.settingsStore;
|
const { personal } = auth.settingsStore;
|
||||||
const {
|
const {
|
||||||
iconFormatsStore,
|
canViewedDocs,
|
||||||
mediaViewersFormatsStore,
|
isMediaOrImage,
|
||||||
docserviceStore,
|
getIconSrc,
|
||||||
} = formatsStore;
|
isArchive,
|
||||||
const { canViewedDocs } = docserviceStore;
|
} = settingsStore;
|
||||||
const {
|
const {
|
||||||
uploaded,
|
uploaded,
|
||||||
primaryProgressDataStore,
|
primaryProgressDataStore,
|
||||||
@ -385,11 +388,11 @@ export default inject(
|
|||||||
} = uploadDataStore;
|
} = uploadDataStore;
|
||||||
const { playlist, setMediaViewerData } = mediaViewerDataStore;
|
const { playlist, setMediaViewerData } = mediaViewerDataStore;
|
||||||
const { loadingFile: file } = primaryProgressDataStore;
|
const { loadingFile: file } = primaryProgressDataStore;
|
||||||
const isMedia = mediaViewersFormatsStore.isMediaOrImage(ext);
|
const isMedia = isMediaOrImage(ext);
|
||||||
const isMediaActive =
|
const isMediaActive =
|
||||||
playlist.findIndex((el) => el.fileId === item.fileId) !== -1;
|
playlist.findIndex((el) => el.fileId === item.fileId) !== -1;
|
||||||
|
|
||||||
const fileIcon = iconFormatsStore.getIconSrc(ext, 24);
|
const fileIcon = getIconSrc(ext, 24);
|
||||||
|
|
||||||
const loadingFile = !file || !file.uniqueId ? null : file;
|
const loadingFile = !file || !file.uniqueId ? null : file;
|
||||||
|
|
||||||
@ -398,8 +401,6 @@ export default inject(
|
|||||||
? loadingFile.percent
|
? loadingFile.percent
|
||||||
: null;
|
: null;
|
||||||
|
|
||||||
const { isArchive } = iconFormatsStore;
|
|
||||||
|
|
||||||
const downloadInCurrentTab = isArchive(ext) || !canViewedDocs(ext);
|
const downloadInCurrentTab = isArchive(ext) || !canViewedDocs(ext);
|
||||||
|
|
||||||
return {
|
return {
|
||||||
|
@ -1,11 +1,9 @@
|
|||||||
import rootFilesStore from "../store/";
|
import settingsStore from "../store/";
|
||||||
import store from "studio/store";
|
import store from "studio/store";
|
||||||
import { desktopConstants } from "@appserver/common/desktop";
|
import { desktopConstants } from "@appserver/common/desktop";
|
||||||
|
|
||||||
const { docserviceStore } = rootFilesStore.formatsStore;
|
|
||||||
|
|
||||||
export function encryptionUploadDialog(callback) {
|
export function encryptionUploadDialog(callback) {
|
||||||
const filter = docserviceStore.encryptedDocs.map((f) => "*" + f).join(" ");
|
const filter = settingsStore.extsWebEncrypt.map((f) => "*" + f).join(" ");
|
||||||
|
|
||||||
const data = {
|
const data = {
|
||||||
cryptoEngineId: desktopConstants.cryptoEngineId,
|
cryptoEngineId: desktopConstants.cryptoEngineId,
|
||||||
|
@ -6,7 +6,7 @@ import { addFileToRecentlyViewed } from "@appserver/common/api/files";
|
|||||||
import i18n from "./i18n";
|
import i18n from "./i18n";
|
||||||
|
|
||||||
import { request } from "@appserver/common/api/client";
|
import { request } from "@appserver/common/api/client";
|
||||||
import docserviceStore from "../store/DocserviceStore";
|
import settingsStore from "../store/";
|
||||||
|
|
||||||
export const setDocumentTitle = (subTitle = null) => {
|
export const setDocumentTitle = (subTitle = null) => {
|
||||||
const { isAuthenticated, settingsStore, product: currentModule } = authStore;
|
const { isAuthenticated, settingsStore, product: currentModule } = authStore;
|
||||||
@ -118,7 +118,7 @@ export const SaveAs = (title, url, folderId, openNewTab) => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export const canConvert = (fileExst) => {
|
export const canConvert = (fileExst) => {
|
||||||
const { canConvert } = docserviceStore;
|
const { canConvert } = settingsStore;
|
||||||
|
|
||||||
return canConvert(fileExst);
|
return canConvert(fileExst);
|
||||||
};
|
};
|
||||||
|
@ -164,7 +164,7 @@ export default inject(
|
|||||||
filesStore,
|
filesStore,
|
||||||
mediaViewerDataStore,
|
mediaViewerDataStore,
|
||||||
filesActionsStore,
|
filesActionsStore,
|
||||||
formatsStore,
|
settingsStore,
|
||||||
dialogsStore,
|
dialogsStore,
|
||||||
treeFoldersStore,
|
treeFoldersStore,
|
||||||
}) => {
|
}) => {
|
||||||
@ -184,7 +184,7 @@ export default inject(
|
|||||||
setToPreviewFile,
|
setToPreviewFile,
|
||||||
} = mediaViewerDataStore;
|
} = mediaViewerDataStore;
|
||||||
const { deleteItemAction } = filesActionsStore;
|
const { deleteItemAction } = filesActionsStore;
|
||||||
const { media, images } = formatsStore.mediaViewersFormatsStore;
|
const { extsVideo, extsImage } = settingsStore;
|
||||||
const { expandedKeys, setExpandedKeys } = treeFoldersStore;
|
const { expandedKeys, setExpandedKeys } = treeFoldersStore;
|
||||||
|
|
||||||
return {
|
return {
|
||||||
@ -195,8 +195,8 @@ export default inject(
|
|||||||
currentMediaFileId,
|
currentMediaFileId,
|
||||||
deleteItemAction,
|
deleteItemAction,
|
||||||
setMediaViewerData,
|
setMediaViewerData,
|
||||||
mediaViewerImageFormats: images,
|
mediaViewerImageFormats: extsImage,
|
||||||
mediaViewerMediaFormats: media,
|
mediaViewerMediaFormats: extsVideo,
|
||||||
setRemoveMediaItem: dialogsStore.setRemoveMediaItem,
|
setRemoveMediaItem: dialogsStore.setRemoveMediaItem,
|
||||||
deleteDialogVisible: dialogsStore.deleteDialogVisible,
|
deleteDialogVisible: dialogsStore.deleteDialogVisible,
|
||||||
fetchFiles,
|
fetchFiles,
|
||||||
|
@ -108,8 +108,8 @@ const FilesTile = (props) => {
|
|||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
export default inject(({ formatsStore }) => {
|
export default inject(({ settingsStore }) => {
|
||||||
const { getIcon } = formatsStore.iconFormatsStore;
|
const { getIcon } = settingsStore;
|
||||||
return { getIcon };
|
return { getIcon };
|
||||||
})(
|
})(
|
||||||
withTranslation("Home")(
|
withTranslation("Home")(
|
||||||
|
@ -39,7 +39,7 @@ class PureHome extends React.Component {
|
|||||||
setExpandedKeys,
|
setExpandedKeys,
|
||||||
setToPreviewFile,
|
setToPreviewFile,
|
||||||
playlist,
|
playlist,
|
||||||
mediaViewersFormatsStore,
|
isMediaOrImage,
|
||||||
getFileInfo,
|
getFileInfo,
|
||||||
setIsPrevSettingsModule,
|
setIsPrevSettingsModule,
|
||||||
isPrevSettingsModule,
|
isPrevSettingsModule,
|
||||||
@ -62,9 +62,7 @@ class PureHome extends React.Component {
|
|||||||
|
|
||||||
getFileInfo(fileId)
|
getFileInfo(fileId)
|
||||||
.then((data) => {
|
.then((data) => {
|
||||||
const canOpenPlayer = mediaViewersFormatsStore.isMediaOrImage(
|
const canOpenPlayer = isMediaOrImage(data.fileExst);
|
||||||
data.fileExst
|
|
||||||
);
|
|
||||||
const file = { ...data, canOpenPlayer };
|
const file = { ...data, canOpenPlayer };
|
||||||
setToPreviewFile(file, true);
|
setToPreviewFile(file, true);
|
||||||
})
|
})
|
||||||
@ -353,7 +351,7 @@ export default inject(
|
|||||||
uploadDataStore,
|
uploadDataStore,
|
||||||
treeFoldersStore,
|
treeFoldersStore,
|
||||||
mediaViewerDataStore,
|
mediaViewerDataStore,
|
||||||
formatsStore,
|
settingsStore,
|
||||||
}) => {
|
}) => {
|
||||||
const {
|
const {
|
||||||
secondaryProgressDataStore,
|
secondaryProgressDataStore,
|
||||||
@ -376,8 +374,6 @@ export default inject(
|
|||||||
isPrevSettingsModule,
|
isPrevSettingsModule,
|
||||||
} = filesStore;
|
} = filesStore;
|
||||||
|
|
||||||
const { mediaViewersFormatsStore } = formatsStore;
|
|
||||||
|
|
||||||
const { id } = fileActionStore;
|
const { id } = fileActionStore;
|
||||||
const {
|
const {
|
||||||
isRecycleBinFolder,
|
isRecycleBinFolder,
|
||||||
@ -463,7 +459,7 @@ export default inject(
|
|||||||
setHeaderVisible: auth.settingsStore.setHeaderVisible,
|
setHeaderVisible: auth.settingsStore.setHeaderVisible,
|
||||||
setToPreviewFile,
|
setToPreviewFile,
|
||||||
playlist,
|
playlist,
|
||||||
mediaViewersFormatsStore,
|
isMediaOrImage: settingsStore.isMediaOrImage,
|
||||||
getFileInfo,
|
getFileInfo,
|
||||||
|
|
||||||
setIsPrevSettingsModule,
|
setIsPrevSettingsModule,
|
||||||
|
@ -1,216 +0,0 @@
|
|||||||
import { makeObservable } from "mobx";
|
|
||||||
import { presentInArray } from "../helpers/files-helpers";
|
|
||||||
|
|
||||||
class DocserviceStore {
|
|
||||||
coauthorDocs = [
|
|
||||||
".csv",
|
|
||||||
".docx",
|
|
||||||
".docxf",
|
|
||||||
".oform",
|
|
||||||
".ppsx",
|
|
||||||
".pptx",
|
|
||||||
".txt",
|
|
||||||
".xlsx",
|
|
||||||
];
|
|
||||||
commentedDocs = [".docx", ".docxf", ".xlsx", ".pptx"];
|
|
||||||
convertDocs = [
|
|
||||||
".doc",
|
|
||||||
".docm",
|
|
||||||
".dot",
|
|
||||||
".dotm",
|
|
||||||
".dotx",
|
|
||||||
".fodp",
|
|
||||||
".fods",
|
|
||||||
".fodt",
|
|
||||||
".odp",
|
|
||||||
".ods",
|
|
||||||
".odt",
|
|
||||||
".otp",
|
|
||||||
".ots",
|
|
||||||
".ott",
|
|
||||||
".pot",
|
|
||||||
".potm",
|
|
||||||
".potx",
|
|
||||||
".pps",
|
|
||||||
".ppsm",
|
|
||||||
".ppt",
|
|
||||||
".pptm",
|
|
||||||
".rtf",
|
|
||||||
".xls",
|
|
||||||
".xlsm",
|
|
||||||
".xlt",
|
|
||||||
".xltm",
|
|
||||||
".xltx",
|
|
||||||
];
|
|
||||||
editedDocs = [
|
|
||||||
".csv",
|
|
||||||
".doc",
|
|
||||||
".docm",
|
|
||||||
".docx",
|
|
||||||
".docxf",
|
|
||||||
".dot",
|
|
||||||
".dotm",
|
|
||||||
".dotx",
|
|
||||||
".fodp",
|
|
||||||
".fods",
|
|
||||||
".fodt",
|
|
||||||
".htm",
|
|
||||||
".html",
|
|
||||||
".mht",
|
|
||||||
".odp",
|
|
||||||
".ods",
|
|
||||||
".odt",
|
|
||||||
".oform",
|
|
||||||
".otp",
|
|
||||||
".ots",
|
|
||||||
".ott",
|
|
||||||
".pot",
|
|
||||||
".potm",
|
|
||||||
".potx",
|
|
||||||
".pps",
|
|
||||||
".ppsm",
|
|
||||||
".ppsx",
|
|
||||||
".ppt",
|
|
||||||
".pptm",
|
|
||||||
".pptx",
|
|
||||||
".rtf",
|
|
||||||
".txt",
|
|
||||||
".xls",
|
|
||||||
".xlsm",
|
|
||||||
".xlsx",
|
|
||||||
".xlt",
|
|
||||||
".xltm",
|
|
||||||
".xltx",
|
|
||||||
];
|
|
||||||
encryptedDocs = [".docx", ".xlsx", ".pptx", ".docxf", ".oform"];
|
|
||||||
formfillingDocs = [".oform"];
|
|
||||||
customfilterDocs = [".xlsx"];
|
|
||||||
reviewedDocs = [".docx", ".docxf"];
|
|
||||||
viewedDocs = [
|
|
||||||
".csv",
|
|
||||||
".djvu",
|
|
||||||
".doc",
|
|
||||||
".docm",
|
|
||||||
".docx",
|
|
||||||
".docxf",
|
|
||||||
".dot",
|
|
||||||
".dotm",
|
|
||||||
".dotx",
|
|
||||||
".epub",
|
|
||||||
".fodp",
|
|
||||||
".fods",
|
|
||||||
".fodt",
|
|
||||||
".gdoc",
|
|
||||||
".gsheet",
|
|
||||||
".gslides",
|
|
||||||
".htm",
|
|
||||||
".html",
|
|
||||||
".mht",
|
|
||||||
".odp",
|
|
||||||
".ods",
|
|
||||||
".odt",
|
|
||||||
".oform",
|
|
||||||
".otp",
|
|
||||||
".ots",
|
|
||||||
".ott",
|
|
||||||
".pdf",
|
|
||||||
".pot",
|
|
||||||
".potm",
|
|
||||||
".potx",
|
|
||||||
".pps",
|
|
||||||
".ppsm",
|
|
||||||
".ppsx",
|
|
||||||
".ppt",
|
|
||||||
".pptm",
|
|
||||||
".pptx",
|
|
||||||
".rtf",
|
|
||||||
".txt",
|
|
||||||
".xls",
|
|
||||||
".xlsm",
|
|
||||||
".xlsx",
|
|
||||||
".xlt",
|
|
||||||
".xltm",
|
|
||||||
".xltx",
|
|
||||||
".xps",
|
|
||||||
];
|
|
||||||
|
|
||||||
filesConverts = [
|
|
||||||
{ ".csv": [".ods", ".pdf", ".xlsx"] },
|
|
||||||
{ ".doc": [".docx", ".odt", ".pdf", ".rtf", ".txt"] },
|
|
||||||
{ ".docm": [".docx", ".odt", ".pdf", ".rtf", ".txt"] },
|
|
||||||
{ ".doct": [".docx"] },
|
|
||||||
{ ".docx": [".docxf", ".odt", ".pdf", ".rtf", ".txt"] },
|
|
||||||
{ ".dot": [".docx", ".odt", ".pdf", ".rtf", ".txt"] },
|
|
||||||
{ ".dotm": [".docx", ".odt", ".pdf", ".rtf", ".txt"] },
|
|
||||||
{ ".dotx": [".docx", ".odt", ".pdf", ".rtf", ".txt"] },
|
|
||||||
{ ".epub": [".docx", ".odt", ".pdf", ".rtf", ".txt"] },
|
|
||||||
{ ".fb2": [".docx", ".odt", ".pdf", ".rtf", ".txt"] },
|
|
||||||
{ ".fodp": [".odp", ".pdf", ".pptx"] },
|
|
||||||
{ ".fods": [".csv", ".ods", ".pdf", ".xlsx"] },
|
|
||||||
{ ".fodt": [".docx", ".odt", ".pdf", ".rtf", ".txt"] },
|
|
||||||
{ ".html": [".docx", ".odt", ".pdf", ".rtf", ".txt"] },
|
|
||||||
{ ".mht": [".docx", ".odt", ".pdf", ".rtf", ".txt"] },
|
|
||||||
{ ".odp": [".pdf", ".pptx"] },
|
|
||||||
{ ".otp": [".odp", ".pdf", ".pptx"] },
|
|
||||||
{ ".ods": [".csv", ".pdf", ".xlsx"] },
|
|
||||||
{ ".ots": [".csv", ".ods", ".pdf", ".xlsx"] },
|
|
||||||
{ ".odt": [".docx", ".pdf", ".rtf", ".txt"] },
|
|
||||||
{ ".ott": [".docx", ".odt", ".pdf", ".rtf", ".txt"] },
|
|
||||||
{ ".pot": [".odp", ".pdf", ".pptx"] },
|
|
||||||
{ ".potm": [".odp", ".pdf", ".pptx"] },
|
|
||||||
{ ".potx": [".odp", ".pdf", ".pptx"] },
|
|
||||||
{ ".pps": [".odp", ".pdf", ".pptx"] },
|
|
||||||
{ ".ppsm": [".odp", ".pdf", ".pptx"] },
|
|
||||||
{ ".ppsx": [".odp", ".pdf", ".pptx"] },
|
|
||||||
{ ".ppt": [".odp", ".pdf", ".pptx"] },
|
|
||||||
{ ".pptm": [".odp", ".pdf", ".pptx"] },
|
|
||||||
{ ".pptt": [".pptx"] },
|
|
||||||
{ ".pptx": [".odp", ".pdf"] },
|
|
||||||
{ ".rtf": [".docx", ".odt", ".pdf", ".txt"] },
|
|
||||||
{ ".txt": [".docx", ".odt", ".pdf", ".rtf"] },
|
|
||||||
{ ".xls": [".csv", ".ods", ".pdf", ".xlsx"] },
|
|
||||||
{ ".xlsm": [".csv", ".ods", ".pdf", ".xlsx"] },
|
|
||||||
{ ".xlst": [".xlsx"] },
|
|
||||||
{ ".xlsx": [".csv", ".ods", ".pdf"] },
|
|
||||||
{ ".xlt": [".csv", ".ods", ".pdf", ".xlsx"] },
|
|
||||||
{ ".xltm": [".csv", ".ods", ".pdf", ".xlsx"] },
|
|
||||||
{ ".xltx": [".csv", ".ods", ".pdf", ".xlsx"] },
|
|
||||||
{ ".xps": [".pdf"] },
|
|
||||||
{
|
|
||||||
".docxf": [
|
|
||||||
".docx",
|
|
||||||
".dotx",
|
|
||||||
".epub",
|
|
||||||
".fb2",
|
|
||||||
".html",
|
|
||||||
".odt",
|
|
||||||
".oform",
|
|
||||||
".ott",
|
|
||||||
".pdf",
|
|
||||||
".rtf",
|
|
||||||
".txt",
|
|
||||||
],
|
|
||||||
},
|
|
||||||
];
|
|
||||||
|
|
||||||
constructor() {
|
|
||||||
makeObservable(this, {});
|
|
||||||
}
|
|
||||||
|
|
||||||
canWebEdit = (extension) => presentInArray(this.editedDocs, extension);
|
|
||||||
|
|
||||||
canViewedDocs = (extension) => presentInArray(this.viewedDocs, extension);
|
|
||||||
|
|
||||||
canConvert = (extension) => presentInArray(this.convertDocs, extension);
|
|
||||||
|
|
||||||
canWebComment = (extension) => presentInArray(this.commentedDocs, extension);
|
|
||||||
|
|
||||||
canWebReview = (extension) => presentInArray(this.reviewedDocs, extension);
|
|
||||||
|
|
||||||
canFormFillingDocs = (extension) =>
|
|
||||||
presentInArray(this.formfillingDocs, extension);
|
|
||||||
|
|
||||||
canWebFilterEditing = (extension) =>
|
|
||||||
presentInArray(this.customfilterDocs, extension);
|
|
||||||
}
|
|
||||||
export default new DocserviceStore();
|
|
@ -28,7 +28,6 @@ class FilesStore {
|
|||||||
fileActionStore;
|
fileActionStore;
|
||||||
selectedFolderStore;
|
selectedFolderStore;
|
||||||
treeFoldersStore;
|
treeFoldersStore;
|
||||||
formatsStore;
|
|
||||||
filesSettingsStore;
|
filesSettingsStore;
|
||||||
|
|
||||||
isLoaded = false;
|
isLoaded = false;
|
||||||
@ -67,7 +66,6 @@ class FilesStore {
|
|||||||
fileActionStore,
|
fileActionStore,
|
||||||
selectedFolderStore,
|
selectedFolderStore,
|
||||||
treeFoldersStore,
|
treeFoldersStore,
|
||||||
formatsStore,
|
|
||||||
filesSettingsStore
|
filesSettingsStore
|
||||||
) {
|
) {
|
||||||
const pathname = window.location.pathname.toLowerCase();
|
const pathname = window.location.pathname.toLowerCase();
|
||||||
@ -80,7 +78,6 @@ class FilesStore {
|
|||||||
this.fileActionStore = fileActionStore;
|
this.fileActionStore = fileActionStore;
|
||||||
this.selectedFolderStore = selectedFolderStore;
|
this.selectedFolderStore = selectedFolderStore;
|
||||||
this.treeFoldersStore = treeFoldersStore;
|
this.treeFoldersStore = treeFoldersStore;
|
||||||
this.formatsStore = formatsStore;
|
|
||||||
this.filesSettingsStore = filesSettingsStore;
|
this.filesSettingsStore = filesSettingsStore;
|
||||||
|
|
||||||
const { socketHelper } = authStore.settingsStore;
|
const { socketHelper } = authStore.settingsStore;
|
||||||
@ -651,7 +648,7 @@ class FilesStore {
|
|||||||
canWebEdit,
|
canWebEdit,
|
||||||
canViewedDocs,
|
canViewedDocs,
|
||||||
canFormFillingDocs,
|
canFormFillingDocs,
|
||||||
} = this.formatsStore.docserviceStore;
|
} = this.filesSettingsStore;
|
||||||
|
|
||||||
const isThirdPartyFolder =
|
const isThirdPartyFolder =
|
||||||
item.providerKey && item.id === item.rootFolderId;
|
item.providerKey && item.id === item.rootFolderId;
|
||||||
@ -1254,7 +1251,7 @@ class FilesStore {
|
|||||||
}
|
}
|
||||||
|
|
||||||
get iconOfDraggedFile() {
|
get iconOfDraggedFile() {
|
||||||
const { getIcon } = this.formatsStore.iconFormatsStore;
|
const { getIcon } = this.filesSettingsStore;
|
||||||
|
|
||||||
if (this.selection.length === 1) {
|
if (this.selection.length === 1) {
|
||||||
return getIcon(
|
return getIcon(
|
||||||
@ -1318,7 +1315,7 @@ class FilesStore {
|
|||||||
}
|
}
|
||||||
|
|
||||||
onCreateAddTempItem = (items) => {
|
onCreateAddTempItem = (items) => {
|
||||||
const { getFileIcon, getFolderIcon } = this.formatsStore.iconFormatsStore;
|
const { getFileIcon, getFolderIcon } = this.filesSettingsStore;
|
||||||
const { extension, title } = this.fileActionStore;
|
const { extension, title } = this.fileActionStore;
|
||||||
|
|
||||||
if (items.length && items[0].id === -1) return; //TODO: if change media collection from state remove this;
|
if (items.length && items[0].id === -1) return; //TODO: if change media collection from state remove this;
|
||||||
@ -1346,8 +1343,7 @@ class FilesStore {
|
|||||||
}
|
}
|
||||||
|
|
||||||
get filesList() {
|
get filesList() {
|
||||||
const { mediaViewersFormatsStore, iconFormatsStore } = this.formatsStore;
|
const { getIcon } = this.filesSettingsStore;
|
||||||
const { getIcon } = iconFormatsStore;
|
|
||||||
//return [...this.folders, ...this.files];
|
//return [...this.folders, ...this.files];
|
||||||
|
|
||||||
const items = [...this.folders, ...this.files];
|
const items = [...this.folders, ...this.files];
|
||||||
@ -1386,11 +1382,9 @@ class FilesStore {
|
|||||||
canEdit,
|
canEdit,
|
||||||
} = item;
|
} = item;
|
||||||
|
|
||||||
const { canConvert } = this.formatsStore.docserviceStore;
|
const { canConvert, isMediaOrImage } = this.filesSettingsStore;
|
||||||
|
|
||||||
const canOpenPlayer = mediaViewersFormatsStore.isMediaOrImage(
|
const canOpenPlayer = isMediaOrImage(item.fileExst);
|
||||||
item.fileExst
|
|
||||||
);
|
|
||||||
|
|
||||||
const previewUrl = canOpenPlayer
|
const previewUrl = canOpenPlayer
|
||||||
? combineUrl(
|
? combineUrl(
|
||||||
@ -1494,14 +1488,14 @@ class FilesStore {
|
|||||||
}
|
}
|
||||||
|
|
||||||
get cbMenuItems() {
|
get cbMenuItems() {
|
||||||
const { mediaViewersFormatsStore, iconFormatsStore } = this.formatsStore;
|
|
||||||
const {
|
const {
|
||||||
|
isImage,
|
||||||
|
isVideo,
|
||||||
isDocument,
|
isDocument,
|
||||||
isPresentation,
|
isPresentation,
|
||||||
isSpreadsheet,
|
isSpreadsheet,
|
||||||
isArchive,
|
isArchive,
|
||||||
} = iconFormatsStore;
|
} = this.filesSettingsStore;
|
||||||
const { isImage, isVideo } = mediaViewersFormatsStore;
|
|
||||||
|
|
||||||
let cbMenu = ["all"];
|
let cbMenu = ["all"];
|
||||||
const filesItems = [...this.files, ...this.folders];
|
const filesItems = [...this.files, ...this.folders];
|
||||||
@ -1557,11 +1551,11 @@ class FilesStore {
|
|||||||
|
|
||||||
get sortedFiles() {
|
get sortedFiles() {
|
||||||
const {
|
const {
|
||||||
|
extsConvertible,
|
||||||
isSpreadsheet,
|
isSpreadsheet,
|
||||||
isPresentation,
|
isPresentation,
|
||||||
isDocument,
|
isDocument,
|
||||||
} = this.formatsStore.iconFormatsStore;
|
} = this.filesSettingsStore;
|
||||||
const { filesConverts } = this.formatsStore.docserviceStore;
|
|
||||||
|
|
||||||
let sortedFiles = {
|
let sortedFiles = {
|
||||||
documents: [],
|
documents: [],
|
||||||
@ -1580,7 +1574,7 @@ class FilesStore {
|
|||||||
item.checked = true;
|
item.checked = true;
|
||||||
item.format = null;
|
item.format = null;
|
||||||
|
|
||||||
const canConvert = filesConverts.find((f) => f[item.fileExst]);
|
const canConvert = extsConvertible[item.fileExst];
|
||||||
|
|
||||||
if (item.fileExst && canConvert) {
|
if (item.fileExst && canConvert) {
|
||||||
if (isSpreadsheet(item.fileExst)) {
|
if (isSpreadsheet(item.fileExst)) {
|
||||||
@ -1638,7 +1632,7 @@ class FilesStore {
|
|||||||
}
|
}
|
||||||
|
|
||||||
get canConvertSelected() {
|
get canConvertSelected() {
|
||||||
const { filesConverts } = this.formatsStore.docserviceStore;
|
const { extsConvertible } = this.filesSettingsStore;
|
||||||
|
|
||||||
const selection = this.selection.length
|
const selection = this.selection.length
|
||||||
? this.selection
|
? this.selection
|
||||||
@ -1648,13 +1642,13 @@ class FilesStore {
|
|||||||
|
|
||||||
return selection.some((selected) => {
|
return selection.some((selected) => {
|
||||||
if (selected.isFolder === true || !selected.fileExst) return false;
|
if (selected.isFolder === true || !selected.fileExst) return false;
|
||||||
const index = filesConverts.findIndex((f) => f[selected.fileExst]);
|
const array = extsConvertible[selected.fileExst];
|
||||||
return index !== -1;
|
return array;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
get isViewedSelected() {
|
get isViewedSelected() {
|
||||||
const { canViewedDocs } = this.formatsStore.docserviceStore;
|
const { canViewedDocs } = this.filesSettingsStore;
|
||||||
|
|
||||||
return this.selection.some((selected) => {
|
return this.selection.some((selected) => {
|
||||||
if (selected.isFolder === true || !selected.fileExst) return false;
|
if (selected.isFolder === true || !selected.fileExst) return false;
|
||||||
@ -1663,7 +1657,7 @@ class FilesStore {
|
|||||||
}
|
}
|
||||||
|
|
||||||
get isMediaSelected() {
|
get isMediaSelected() {
|
||||||
const { isMediaOrImage } = this.formatsStore.mediaViewersFormatsStore;
|
const { isMediaOrImage } = this.filesSettingsStore;
|
||||||
|
|
||||||
return this.selection.some((selected) => {
|
return this.selection.some((selected) => {
|
||||||
if (selected.isFolder === true || !selected.fileExst) return false;
|
if (selected.isFolder === true || !selected.fileExst) return false;
|
||||||
@ -1708,7 +1702,7 @@ class FilesStore {
|
|||||||
canFormFillingDocs,
|
canFormFillingDocs,
|
||||||
canWebFilterEditing,
|
canWebFilterEditing,
|
||||||
canConvert,
|
canConvert,
|
||||||
} = this.formatsStore.docserviceStore;
|
} = this.filesSettingsStore;
|
||||||
|
|
||||||
if (selection[0].encrypted) {
|
if (selection[0].encrypted) {
|
||||||
return ["FullAccess", "DenyAccess"];
|
return ["FullAccess", "DenyAccess"];
|
||||||
|
@ -1,16 +0,0 @@
|
|||||||
import { makeAutoObservable } from "mobx";
|
|
||||||
|
|
||||||
class FormatsStore {
|
|
||||||
iconFormatsStore;
|
|
||||||
mediaViewersFormatsStore;
|
|
||||||
docserviceStore;
|
|
||||||
|
|
||||||
constructor(iconFormatsStore, mediaViewersFormatsStore, docserviceStore) {
|
|
||||||
makeAutoObservable(this);
|
|
||||||
this.iconFormatsStore = iconFormatsStore;
|
|
||||||
this.mediaViewersFormatsStore = mediaViewersFormatsStore;
|
|
||||||
this.docserviceStore = docserviceStore;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
export default FormatsStore;
|
|
@ -1,368 +0,0 @@
|
|||||||
import { makeAutoObservable } from "mobx";
|
|
||||||
import { presentInArray } from "../helpers/files-helpers";
|
|
||||||
|
|
||||||
class IconFormatsStore {
|
|
||||||
archive = [
|
|
||||||
".ace",
|
|
||||||
".arc",
|
|
||||||
".arj",
|
|
||||||
".bh",
|
|
||||||
".cab",
|
|
||||||
".enc",
|
|
||||||
".gz",
|
|
||||||
".gz",
|
|
||||||
".ha",
|
|
||||||
".jar",
|
|
||||||
".lha",
|
|
||||||
".lzh",
|
|
||||||
".pak",
|
|
||||||
".pk3",
|
|
||||||
".rar",
|
|
||||||
".tar",
|
|
||||||
".tgz",
|
|
||||||
".uu",
|
|
||||||
".uue",
|
|
||||||
".xxe",
|
|
||||||
".z",
|
|
||||||
".zip",
|
|
||||||
".zoo",
|
|
||||||
];
|
|
||||||
image = [
|
|
||||||
".ai",
|
|
||||||
".bmp",
|
|
||||||
".cmx",
|
|
||||||
".cod",
|
|
||||||
".gif",
|
|
||||||
".ico",
|
|
||||||
".ief",
|
|
||||||
".jpe",
|
|
||||||
".jpeg",
|
|
||||||
".jpg",
|
|
||||||
".pbm",
|
|
||||||
".png",
|
|
||||||
".pnm",
|
|
||||||
".ppm",
|
|
||||||
".psd",
|
|
||||||
".rgb",
|
|
||||||
".tif",
|
|
||||||
".tiff",
|
|
||||||
".webp",
|
|
||||||
".xbm",
|
|
||||||
".xpm",
|
|
||||||
".xwd",
|
|
||||||
];
|
|
||||||
sound = [
|
|
||||||
".aac",
|
|
||||||
".ac3",
|
|
||||||
".aiff",
|
|
||||||
".amr",
|
|
||||||
".ape",
|
|
||||||
".cda",
|
|
||||||
".flac",
|
|
||||||
".m4a",
|
|
||||||
".mid",
|
|
||||||
".mka",
|
|
||||||
".mp3",
|
|
||||||
".mpc",
|
|
||||||
".oga",
|
|
||||||
".ogg",
|
|
||||||
".pcm",
|
|
||||||
".ra",
|
|
||||||
".raw",
|
|
||||||
".wav",
|
|
||||||
".wma",
|
|
||||||
];
|
|
||||||
video = [
|
|
||||||
".3gp",
|
|
||||||
".asf",
|
|
||||||
".avi",
|
|
||||||
".f4v",
|
|
||||||
".fla",
|
|
||||||
".flv",
|
|
||||||
".m2ts",
|
|
||||||
".m4v",
|
|
||||||
".mkv",
|
|
||||||
".mov",
|
|
||||||
".mp4",
|
|
||||||
".mpeg",
|
|
||||||
".mpg",
|
|
||||||
".mts",
|
|
||||||
".ogv",
|
|
||||||
".svi",
|
|
||||||
".vob",
|
|
||||||
".webm",
|
|
||||||
".wmv",
|
|
||||||
];
|
|
||||||
html = [".htm", ".mht", ".html"];
|
|
||||||
ebook = [".fb2", ".ibk", ".prc", ".epub"];
|
|
||||||
document = [
|
|
||||||
".doc",
|
|
||||||
".docx",
|
|
||||||
".docm",
|
|
||||||
".dot",
|
|
||||||
".dotx",
|
|
||||||
".dotm",
|
|
||||||
".odt",
|
|
||||||
".fodt",
|
|
||||||
".ott",
|
|
||||||
".rtf",
|
|
||||||
".txt",
|
|
||||||
".html",
|
|
||||||
".htm",
|
|
||||||
".mht",
|
|
||||||
".pdf",
|
|
||||||
".djvu",
|
|
||||||
".fb2",
|
|
||||||
".epub",
|
|
||||||
".xps",
|
|
||||||
".doct",
|
|
||||||
".docy",
|
|
||||||
".gdoc",
|
|
||||||
".docxf",
|
|
||||||
".oform",
|
|
||||||
];
|
|
||||||
presentation = [
|
|
||||||
".pps",
|
|
||||||
".ppsx",
|
|
||||||
".ppsm",
|
|
||||||
".ppt",
|
|
||||||
".pptx",
|
|
||||||
".pptm",
|
|
||||||
".pot",
|
|
||||||
".potx",
|
|
||||||
".potm",
|
|
||||||
".odp",
|
|
||||||
".fodp",
|
|
||||||
".otp",
|
|
||||||
".pptt",
|
|
||||||
".ppty",
|
|
||||||
".gslides",
|
|
||||||
];
|
|
||||||
spreadsheet = [
|
|
||||||
".xls",
|
|
||||||
".xlsx",
|
|
||||||
".xlsm",
|
|
||||||
".xlt",
|
|
||||||
".xltx",
|
|
||||||
".xltm",
|
|
||||||
".ods",
|
|
||||||
".fods",
|
|
||||||
".ots",
|
|
||||||
".csv",
|
|
||||||
".xlst",
|
|
||||||
".xlsy",
|
|
||||||
".xlsb",
|
|
||||||
".gsheet",
|
|
||||||
];
|
|
||||||
|
|
||||||
constructor() {
|
|
||||||
makeAutoObservable(this);
|
|
||||||
//makeObservable(this, {});
|
|
||||||
}
|
|
||||||
|
|
||||||
isArchive = (extension) => presentInArray(this.archive, extension);
|
|
||||||
|
|
||||||
isImage = (extension) => presentInArray(this.image, extension);
|
|
||||||
|
|
||||||
isSound = (extension) => presentInArray(this.sound, extension);
|
|
||||||
|
|
||||||
isHtml = (extension) => presentInArray(this.html, extension);
|
|
||||||
|
|
||||||
isEbook = (extension) => presentInArray(this.ebook, extension);
|
|
||||||
|
|
||||||
isDocument = (extension) => presentInArray(this.document, extension);
|
|
||||||
|
|
||||||
isPresentation = (extension) => presentInArray(this.presentation, extension);
|
|
||||||
|
|
||||||
isSpreadsheet = (extension) => presentInArray(this.spreadsheet, extension);
|
|
||||||
|
|
||||||
getIcon = (
|
|
||||||
size = 24,
|
|
||||||
fileExst = null,
|
|
||||||
providerKey = null,
|
|
||||||
contentLength = null
|
|
||||||
) => {
|
|
||||||
if (fileExst || contentLength) {
|
|
||||||
const isArchiveItem = this.isArchive(fileExst);
|
|
||||||
const isImageItem = this.isImage(fileExst);
|
|
||||||
const isSoundItem = this.isSound(fileExst);
|
|
||||||
const isHtmlItem = this.isHtml(fileExst);
|
|
||||||
|
|
||||||
const icon = this.getFileIcon(
|
|
||||||
fileExst,
|
|
||||||
size,
|
|
||||||
isArchiveItem,
|
|
||||||
isImageItem,
|
|
||||||
isSoundItem,
|
|
||||||
isHtmlItem
|
|
||||||
);
|
|
||||||
return icon;
|
|
||||||
} else {
|
|
||||||
return this.getFolderIcon(providerKey, size);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
getFolderIcon = (providerKey, size = 32) => {
|
|
||||||
const folderPath = `images/icons/${size}`;
|
|
||||||
|
|
||||||
switch (providerKey) {
|
|
||||||
case "Box":
|
|
||||||
case "BoxNet":
|
|
||||||
return `${folderPath}/folder/box.svg`;
|
|
||||||
case "DropBox":
|
|
||||||
case "DropboxV2":
|
|
||||||
return `${folderPath}/folder/dropbox.svg`;
|
|
||||||
case "Google":
|
|
||||||
case "GoogleDrive":
|
|
||||||
return `${folderPath}/folder/google.svg`;
|
|
||||||
case "OneDrive":
|
|
||||||
return `${folderPath}/folder/onedrive.svg`;
|
|
||||||
case "SharePoint":
|
|
||||||
return `${folderPath}/folder/sharepoint.svg`;
|
|
||||||
case "Yandex":
|
|
||||||
return `${folderPath}/folder/yandex.svg`;
|
|
||||||
case "kDrive":
|
|
||||||
return `${folderPath}/folder/kdrive.svg`;
|
|
||||||
case "WebDav":
|
|
||||||
return `${folderPath}/folder/webdav.svg`;
|
|
||||||
default:
|
|
||||||
return `${folderPath}/folder.svg`;
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
getIconUrl = (extension, folderPath) => {
|
|
||||||
switch (extension) {
|
|
||||||
case ".avi":
|
|
||||||
return `${folderPath}/avi.svg`;
|
|
||||||
case ".csv":
|
|
||||||
return `${folderPath}/csv.svg`;
|
|
||||||
case ".djvu":
|
|
||||||
return `${folderPath}/djvu.svg`;
|
|
||||||
case ".doc":
|
|
||||||
return `${folderPath}/doc.svg`;
|
|
||||||
case ".docm":
|
|
||||||
return `${folderPath}/docm.svg`;
|
|
||||||
case ".docx":
|
|
||||||
return `${folderPath}/docx.svg`;
|
|
||||||
case ".dotx":
|
|
||||||
return `${folderPath}/dotx.svg`;
|
|
||||||
case ".dvd":
|
|
||||||
return `${folderPath}/dvd.svg`;
|
|
||||||
case ".epub":
|
|
||||||
return `${folderPath}/epub.svg`;
|
|
||||||
case ".pb2":
|
|
||||||
case ".fb2":
|
|
||||||
return `${folderPath}/fb2.svg`;
|
|
||||||
case ".flv":
|
|
||||||
return `${folderPath}/flv.svg`;
|
|
||||||
case ".fodt":
|
|
||||||
return `${folderPath}/fodt.svg`;
|
|
||||||
case ".iaf":
|
|
||||||
return `${folderPath}/iaf.svg`;
|
|
||||||
case ".ics":
|
|
||||||
return `${folderPath}/ics.svg`;
|
|
||||||
case ".m2ts":
|
|
||||||
return `${folderPath}/m2ts.svg`;
|
|
||||||
case ".mht":
|
|
||||||
return `${folderPath}/mht.svg`;
|
|
||||||
case ".mkv":
|
|
||||||
return `${folderPath}/mkv.svg`;
|
|
||||||
case ".mov":
|
|
||||||
return `${folderPath}/mov.svg`;
|
|
||||||
case ".mp4":
|
|
||||||
return `${folderPath}/mp4.svg`;
|
|
||||||
case ".mpg":
|
|
||||||
return `${folderPath}/mpg.svg`;
|
|
||||||
case ".odp":
|
|
||||||
return `${folderPath}/odp.svg`;
|
|
||||||
case ".ods":
|
|
||||||
return `${folderPath}/ods.svg`;
|
|
||||||
case ".odt":
|
|
||||||
return `${folderPath}/odt.svg`;
|
|
||||||
case ".otp":
|
|
||||||
return `${folderPath}/otp.svg`;
|
|
||||||
case ".ots":
|
|
||||||
return `${folderPath}/ots.svg`;
|
|
||||||
case ".ott":
|
|
||||||
return `${folderPath}/ott.svg`;
|
|
||||||
case ".pdf":
|
|
||||||
return `${folderPath}/pdf.svg`;
|
|
||||||
case ".pot":
|
|
||||||
return `${folderPath}/pot.svg`;
|
|
||||||
case ".pps":
|
|
||||||
return `${folderPath}/pps.svg`;
|
|
||||||
case ".ppsx":
|
|
||||||
return `${folderPath}/ppsx.svg`;
|
|
||||||
case ".ppt":
|
|
||||||
return `${folderPath}/ppt.svg`;
|
|
||||||
case ".pptm":
|
|
||||||
return `${folderPath}/pptm.svg`;
|
|
||||||
case ".pptx":
|
|
||||||
return `${folderPath}/pptx.svg`;
|
|
||||||
case ".rtf":
|
|
||||||
return `${folderPath}/rtf.svg`;
|
|
||||||
case ".svg":
|
|
||||||
return `${folderPath}/svg.svg`;
|
|
||||||
case ".txt":
|
|
||||||
return `${folderPath}/txt.svg`;
|
|
||||||
case ".webm":
|
|
||||||
return `${folderPath}/webm.svg`;
|
|
||||||
case ".xls":
|
|
||||||
return `${folderPath}/xls.svg`;
|
|
||||||
case ".xlsm":
|
|
||||||
return `${folderPath}/xlsm.svg`;
|
|
||||||
case ".xlsx":
|
|
||||||
return `${folderPath}/xlsx.svg`;
|
|
||||||
case ".xps":
|
|
||||||
return `${folderPath}/xps.svg`;
|
|
||||||
case ".xml":
|
|
||||||
return `${folderPath}/xml.svg`;
|
|
||||||
case ".oform":
|
|
||||||
return `${folderPath}/oform.svg`;
|
|
||||||
case ".docxf":
|
|
||||||
return `${folderPath}/docxf.svg`;
|
|
||||||
default:
|
|
||||||
return `${folderPath}/file.svg`;
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
getFileIcon = (
|
|
||||||
extension,
|
|
||||||
size = 32,
|
|
||||||
archive = false,
|
|
||||||
image = false,
|
|
||||||
sound = false,
|
|
||||||
html = false
|
|
||||||
) => {
|
|
||||||
const folderPath = `/static/images/icons/${size}`;
|
|
||||||
|
|
||||||
if (archive) return `${folderPath}/file_archive.svg`;
|
|
||||||
|
|
||||||
if (image) return `${folderPath}/image.svg`;
|
|
||||||
|
|
||||||
if (sound) return `${folderPath}/sound.svg`;
|
|
||||||
|
|
||||||
if (html) return `${folderPath}/html.svg`;
|
|
||||||
|
|
||||||
return this.getIconUrl(extension, folderPath);
|
|
||||||
};
|
|
||||||
|
|
||||||
getIconSrc = (ext, size = 24) => {
|
|
||||||
const folderPath = `/static/images/icons/${size}`;
|
|
||||||
|
|
||||||
if (presentInArray(this.archive, ext, true))
|
|
||||||
return `${folderPath}/file_archive.svg`;
|
|
||||||
|
|
||||||
if (presentInArray(this.image, ext, true)) return `${folderPath}/image.svg`;
|
|
||||||
|
|
||||||
if (presentInArray(this.sound, ext, true)) return `${folderPath}/sound.svg`;
|
|
||||||
|
|
||||||
if (presentInArray(this.html, ext, true)) return `${folderPath}/html.svg`;
|
|
||||||
|
|
||||||
const extension = ext.toLowerCase();
|
|
||||||
|
|
||||||
return this.getIconUrl(extension, folderPath);
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
export default new IconFormatsStore();
|
|
@ -2,16 +2,16 @@ import { makeAutoObservable } from "mobx";
|
|||||||
|
|
||||||
class MediaViewerDataStore {
|
class MediaViewerDataStore {
|
||||||
filesStore;
|
filesStore;
|
||||||
formatsStore;
|
settingsStore;
|
||||||
|
|
||||||
id = null;
|
id = null;
|
||||||
visible = false;
|
visible = false;
|
||||||
previewFile = null;
|
previewFile = null;
|
||||||
|
|
||||||
constructor(filesStore, formatsStore) {
|
constructor(filesStore, settingsStore) {
|
||||||
makeAutoObservable(this);
|
makeAutoObservable(this);
|
||||||
this.filesStore = filesStore;
|
this.filesStore = filesStore;
|
||||||
this.formatsStore = formatsStore;
|
this.settingsStore = settingsStore;
|
||||||
}
|
}
|
||||||
|
|
||||||
setMediaViewerData = (mediaData) => {
|
setMediaViewerData = (mediaData) => {
|
||||||
@ -35,7 +35,7 @@ class MediaViewerDataStore {
|
|||||||
};
|
};
|
||||||
|
|
||||||
get playlist() {
|
get playlist() {
|
||||||
const { isMediaOrImage } = this.formatsStore.mediaViewersFormatsStore;
|
const { isMediaOrImage } = this.settingsStore;
|
||||||
const { files } = this.filesStore;
|
const { files } = this.filesStore;
|
||||||
|
|
||||||
const filesList = [...files];
|
const filesList = [...files];
|
||||||
|
@ -1,59 +0,0 @@
|
|||||||
import { makeObservable, observable } from "mobx";
|
|
||||||
import { presentInArray } from "../helpers/files-helpers";
|
|
||||||
|
|
||||||
class MediaViewersFormatsStore {
|
|
||||||
images = [
|
|
||||||
".bmp",
|
|
||||||
".gif",
|
|
||||||
".ico",
|
|
||||||
".jpeg",
|
|
||||||
".jpg",
|
|
||||||
".png",
|
|
||||||
".svg",
|
|
||||||
".tif",
|
|
||||||
".tiff",
|
|
||||||
".webp",
|
|
||||||
];
|
|
||||||
media = [
|
|
||||||
".aac",
|
|
||||||
".avi",
|
|
||||||
".f4v",
|
|
||||||
".flac",
|
|
||||||
".m4v",
|
|
||||||
".mov",
|
|
||||||
".mp3",
|
|
||||||
".mp4",
|
|
||||||
".mpeg",
|
|
||||||
".mpg",
|
|
||||||
".oga",
|
|
||||||
".ogg",
|
|
||||||
".ogv",
|
|
||||||
".wav",
|
|
||||||
".webm",
|
|
||||||
".wmv",
|
|
||||||
];
|
|
||||||
|
|
||||||
constructor() {
|
|
||||||
makeObservable(this, {
|
|
||||||
images: observable,
|
|
||||||
media: observable,
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
isVideo = (extension) => {
|
|
||||||
return presentInArray(this.media, extension);
|
|
||||||
};
|
|
||||||
|
|
||||||
isImage = (extension) => {
|
|
||||||
return presentInArray(this.images, extension);
|
|
||||||
};
|
|
||||||
|
|
||||||
isMediaOrImage = (fileExst) => {
|
|
||||||
if (this.media.includes(fileExst) || this.images.includes(fileExst)) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
export default new MediaViewersFormatsStore();
|
|
@ -6,6 +6,7 @@ import {
|
|||||||
setRecentSetting,
|
setRecentSetting,
|
||||||
} from "@appserver/common/api/files";
|
} from "@appserver/common/api/files";
|
||||||
import { FolderType } from "@appserver/common/constants";
|
import { FolderType } from "@appserver/common/constants";
|
||||||
|
import { presentInArray } from "../helpers/files-helpers";
|
||||||
|
|
||||||
class SettingsStore {
|
class SettingsStore {
|
||||||
thirdPartyStore;
|
thirdPartyStore;
|
||||||
@ -27,6 +28,33 @@ class SettingsStore {
|
|||||||
|
|
||||||
settingsIsLoaded = false;
|
settingsIsLoaded = false;
|
||||||
|
|
||||||
|
extsImagePreviewed = [];
|
||||||
|
extsMediaPreviewed = [];
|
||||||
|
extsWebPreviewed = [];
|
||||||
|
extsWebEdited = [];
|
||||||
|
extsWebEncrypt = [];
|
||||||
|
extsWebReviewed = [];
|
||||||
|
extsWebCustomFilterEditing = [];
|
||||||
|
extsWebRestrictedEditing = [];
|
||||||
|
extsWebCommented = [];
|
||||||
|
extsWebTemplate = [];
|
||||||
|
extsCoAuthoring = [];
|
||||||
|
extsMustConvert = [];
|
||||||
|
extsConvertible = [];
|
||||||
|
extsUploadable = [];
|
||||||
|
extsArchive = [];
|
||||||
|
extsVideo = [];
|
||||||
|
extsAudio = [];
|
||||||
|
extsImage = [];
|
||||||
|
extsSpreadsheet = [];
|
||||||
|
extsPresentation = [];
|
||||||
|
extsDocument = [];
|
||||||
|
internalFormats = {};
|
||||||
|
masterFormExtension = "";
|
||||||
|
|
||||||
|
html = [".htm", ".mht", ".html"]; //TODO:
|
||||||
|
ebook = [".fb2", ".ibk", ".prc", ".epub"]; //TODO:
|
||||||
|
|
||||||
constructor(thirdPartyStore, treeFoldersStore) {
|
constructor(thirdPartyStore, treeFoldersStore) {
|
||||||
makeAutoObservable(this);
|
makeAutoObservable(this);
|
||||||
|
|
||||||
@ -183,6 +211,244 @@ class SettingsStore {
|
|||||||
const hideConfirmConvertSave = await api.files.hideConfirmConvert(save);
|
const hideConfirmConvertSave = await api.files.hideConfirmConvert(save);
|
||||||
this.hideConfirmConvertSave = hideConfirmConvertSave;
|
this.hideConfirmConvertSave = hideConfirmConvertSave;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
canWebEdit = (extension) => presentInArray(this.extsWebEdited, extension);
|
||||||
|
|
||||||
|
canViewedDocs = (extension) =>
|
||||||
|
presentInArray(this.extsWebPreviewed, extension);
|
||||||
|
|
||||||
|
canConvert = (extension) => presentInArray(this.extsMustConvert, extension);
|
||||||
|
|
||||||
|
canWebComment = (extension) =>
|
||||||
|
presentInArray(this.extsWebCommented, extension);
|
||||||
|
|
||||||
|
canWebReview = (extension) => presentInArray(this.extsWebReviewed, extension);
|
||||||
|
|
||||||
|
canFormFillingDocs = (extension) =>
|
||||||
|
presentInArray(this.extsWebRestrictedEditing, extension);
|
||||||
|
|
||||||
|
canWebFilterEditing = (extension) =>
|
||||||
|
presentInArray(this.extsWebCustomFilterEditing, extension);
|
||||||
|
|
||||||
|
isMediaOrImage = (fileExst) => {
|
||||||
|
if (
|
||||||
|
this.extsVideo.includes(fileExst) ||
|
||||||
|
this.extsImage.includes(fileExst)
|
||||||
|
) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
};
|
||||||
|
|
||||||
|
isArchive = (extension) => presentInArray(this.extsArchive, extension);
|
||||||
|
|
||||||
|
isImage = (extension) => presentInArray(this.extsImage, extension);
|
||||||
|
|
||||||
|
isVideo = (extension) => presentInArray(this.extsVideo, extension);
|
||||||
|
|
||||||
|
isSound = (extension) => presentInArray(this.extsAudio, extension);
|
||||||
|
|
||||||
|
isHtml = (extension) => presentInArray(this.html, extension);
|
||||||
|
|
||||||
|
isEbook = (extension) => presentInArray(this.ebook, extension);
|
||||||
|
|
||||||
|
isDocument = (extension) => presentInArray(this.extsDocument, extension);
|
||||||
|
|
||||||
|
isPresentation = (extension) =>
|
||||||
|
presentInArray(this.extsPresentation, extension);
|
||||||
|
|
||||||
|
isSpreadsheet = (extension) =>
|
||||||
|
presentInArray(this.extsSpreadsheet, extension);
|
||||||
|
|
||||||
|
getIcon = (
|
||||||
|
size = 24,
|
||||||
|
fileExst = null,
|
||||||
|
providerKey = null,
|
||||||
|
contentLength = null
|
||||||
|
) => {
|
||||||
|
if (fileExst || contentLength) {
|
||||||
|
const isArchiveItem = this.isArchive(fileExst);
|
||||||
|
const isImageItem = this.isImage(fileExst);
|
||||||
|
const isSoundItem = this.isSound(fileExst);
|
||||||
|
const isHtmlItem = this.isHtml(fileExst);
|
||||||
|
|
||||||
|
const icon = this.getFileIcon(
|
||||||
|
fileExst,
|
||||||
|
size,
|
||||||
|
isArchiveItem,
|
||||||
|
isImageItem,
|
||||||
|
isSoundItem,
|
||||||
|
isHtmlItem
|
||||||
|
);
|
||||||
|
return icon;
|
||||||
|
} else {
|
||||||
|
return this.getFolderIcon(providerKey, size);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
getFolderIcon = (providerKey, size = 32) => {
|
||||||
|
const folderPath = `images/icons/${size}`;
|
||||||
|
|
||||||
|
switch (providerKey) {
|
||||||
|
case "Box":
|
||||||
|
case "BoxNet":
|
||||||
|
return `${folderPath}/folder/box.svg`;
|
||||||
|
case "DropBox":
|
||||||
|
case "DropboxV2":
|
||||||
|
return `${folderPath}/folder/dropbox.svg`;
|
||||||
|
case "Google":
|
||||||
|
case "GoogleDrive":
|
||||||
|
return `${folderPath}/folder/google.svg`;
|
||||||
|
case "OneDrive":
|
||||||
|
return `${folderPath}/folder/onedrive.svg`;
|
||||||
|
case "SharePoint":
|
||||||
|
return `${folderPath}/folder/sharepoint.svg`;
|
||||||
|
case "Yandex":
|
||||||
|
return `${folderPath}/folder/yandex.svg`;
|
||||||
|
case "kDrive":
|
||||||
|
return `${folderPath}/folder/kdrive.svg`;
|
||||||
|
case "WebDav":
|
||||||
|
return `${folderPath}/folder/webdav.svg`;
|
||||||
|
default:
|
||||||
|
return `${folderPath}/folder.svg`;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
getIconUrl = (extension, folderPath) => {
|
||||||
|
switch (extension) {
|
||||||
|
case ".avi":
|
||||||
|
return `${folderPath}/avi.svg`;
|
||||||
|
case ".csv":
|
||||||
|
return `${folderPath}/csv.svg`;
|
||||||
|
case ".djvu":
|
||||||
|
return `${folderPath}/djvu.svg`;
|
||||||
|
case ".doc":
|
||||||
|
return `${folderPath}/doc.svg`;
|
||||||
|
case ".docm":
|
||||||
|
return `${folderPath}/docm.svg`;
|
||||||
|
case ".docx":
|
||||||
|
return `${folderPath}/docx.svg`;
|
||||||
|
case ".dotx":
|
||||||
|
return `${folderPath}/dotx.svg`;
|
||||||
|
case ".dvd":
|
||||||
|
return `${folderPath}/dvd.svg`;
|
||||||
|
case ".epub":
|
||||||
|
return `${folderPath}/epub.svg`;
|
||||||
|
case ".pb2":
|
||||||
|
case ".fb2":
|
||||||
|
return `${folderPath}/fb2.svg`;
|
||||||
|
case ".flv":
|
||||||
|
return `${folderPath}/flv.svg`;
|
||||||
|
case ".fodt":
|
||||||
|
return `${folderPath}/fodt.svg`;
|
||||||
|
case ".iaf":
|
||||||
|
return `${folderPath}/iaf.svg`;
|
||||||
|
case ".ics":
|
||||||
|
return `${folderPath}/ics.svg`;
|
||||||
|
case ".m2ts":
|
||||||
|
return `${folderPath}/m2ts.svg`;
|
||||||
|
case ".mht":
|
||||||
|
return `${folderPath}/mht.svg`;
|
||||||
|
case ".mkv":
|
||||||
|
return `${folderPath}/mkv.svg`;
|
||||||
|
case ".mov":
|
||||||
|
return `${folderPath}/mov.svg`;
|
||||||
|
case ".mp4":
|
||||||
|
return `${folderPath}/mp4.svg`;
|
||||||
|
case ".mpg":
|
||||||
|
return `${folderPath}/mpg.svg`;
|
||||||
|
case ".odp":
|
||||||
|
return `${folderPath}/odp.svg`;
|
||||||
|
case ".ods":
|
||||||
|
return `${folderPath}/ods.svg`;
|
||||||
|
case ".odt":
|
||||||
|
return `${folderPath}/odt.svg`;
|
||||||
|
case ".otp":
|
||||||
|
return `${folderPath}/otp.svg`;
|
||||||
|
case ".ots":
|
||||||
|
return `${folderPath}/ots.svg`;
|
||||||
|
case ".ott":
|
||||||
|
return `${folderPath}/ott.svg`;
|
||||||
|
case ".pdf":
|
||||||
|
return `${folderPath}/pdf.svg`;
|
||||||
|
case ".pot":
|
||||||
|
return `${folderPath}/pot.svg`;
|
||||||
|
case ".pps":
|
||||||
|
return `${folderPath}/pps.svg`;
|
||||||
|
case ".ppsx":
|
||||||
|
return `${folderPath}/ppsx.svg`;
|
||||||
|
case ".ppt":
|
||||||
|
return `${folderPath}/ppt.svg`;
|
||||||
|
case ".pptm":
|
||||||
|
return `${folderPath}/pptm.svg`;
|
||||||
|
case ".pptx":
|
||||||
|
return `${folderPath}/pptx.svg`;
|
||||||
|
case ".rtf":
|
||||||
|
return `${folderPath}/rtf.svg`;
|
||||||
|
case ".svg":
|
||||||
|
return `${folderPath}/svg.svg`;
|
||||||
|
case ".txt":
|
||||||
|
return `${folderPath}/txt.svg`;
|
||||||
|
case ".webm":
|
||||||
|
return `${folderPath}/webm.svg`;
|
||||||
|
case ".xls":
|
||||||
|
return `${folderPath}/xls.svg`;
|
||||||
|
case ".xlsm":
|
||||||
|
return `${folderPath}/xlsm.svg`;
|
||||||
|
case ".xlsx":
|
||||||
|
return `${folderPath}/xlsx.svg`;
|
||||||
|
case ".xps":
|
||||||
|
return `${folderPath}/xps.svg`;
|
||||||
|
case ".xml":
|
||||||
|
return `${folderPath}/xml.svg`;
|
||||||
|
case ".oform":
|
||||||
|
return `${folderPath}/oform.svg`;
|
||||||
|
case ".docxf":
|
||||||
|
return `${folderPath}/docxf.svg`;
|
||||||
|
default:
|
||||||
|
return `${folderPath}/file.svg`;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
getFileIcon = (
|
||||||
|
extension,
|
||||||
|
size = 32,
|
||||||
|
archive = false,
|
||||||
|
image = false,
|
||||||
|
sound = false,
|
||||||
|
html = false
|
||||||
|
) => {
|
||||||
|
const folderPath = `/static/images/icons/${size}`;
|
||||||
|
|
||||||
|
if (archive) return `${folderPath}/file_archive.svg`;
|
||||||
|
|
||||||
|
if (image) return `${folderPath}/image.svg`;
|
||||||
|
|
||||||
|
if (sound) return `${folderPath}/sound.svg`;
|
||||||
|
|
||||||
|
if (html) return `${folderPath}/html.svg`;
|
||||||
|
|
||||||
|
return this.getIconUrl(extension, folderPath);
|
||||||
|
};
|
||||||
|
|
||||||
|
getIconSrc = (ext, size = 24) => {
|
||||||
|
const folderPath = `/static/images/icons/${size}`;
|
||||||
|
|
||||||
|
if (presentInArray(this.extsArchive, ext, true))
|
||||||
|
return `${folderPath}/file_archive.svg`;
|
||||||
|
|
||||||
|
if (presentInArray(this.extsImage, ext, true))
|
||||||
|
return `${folderPath}/image.svg`;
|
||||||
|
|
||||||
|
if (presentInArray(this.extsAudio, ext, true))
|
||||||
|
return `${folderPath}/sound.svg`;
|
||||||
|
|
||||||
|
if (presentInArray(this.html, ext, true)) return `${folderPath}/html.svg`;
|
||||||
|
|
||||||
|
const extension = ext.toLowerCase();
|
||||||
|
|
||||||
|
return this.getIconUrl(extension, folderPath);
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
export default SettingsStore;
|
export default SettingsStore;
|
||||||
|
@ -19,7 +19,6 @@ import {
|
|||||||
} from "@appserver/common/api/files";
|
} from "@appserver/common/api/files";
|
||||||
import toastr from "studio/toastr";
|
import toastr from "studio/toastr";
|
||||||
class UploadDataStore {
|
class UploadDataStore {
|
||||||
formatsStore;
|
|
||||||
treeFoldersStore;
|
treeFoldersStore;
|
||||||
selectedFolderStore;
|
selectedFolderStore;
|
||||||
filesStore;
|
filesStore;
|
||||||
@ -46,7 +45,6 @@ class UploadDataStore {
|
|||||||
isUploadingAndConversion = false;
|
isUploadingAndConversion = false;
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
formatsStore,
|
|
||||||
treeFoldersStore,
|
treeFoldersStore,
|
||||||
selectedFolderStore,
|
selectedFolderStore,
|
||||||
filesStore,
|
filesStore,
|
||||||
@ -56,7 +54,6 @@ class UploadDataStore {
|
|||||||
settingsStore
|
settingsStore
|
||||||
) {
|
) {
|
||||||
makeAutoObservable(this);
|
makeAutoObservable(this);
|
||||||
this.formatsStore = formatsStore;
|
|
||||||
this.treeFoldersStore = treeFoldersStore;
|
this.treeFoldersStore = treeFoldersStore;
|
||||||
this.selectedFolderStore = selectedFolderStore;
|
this.selectedFolderStore = selectedFolderStore;
|
||||||
this.filesStore = filesStore;
|
this.filesStore = filesStore;
|
||||||
@ -440,7 +437,7 @@ class UploadDataStore {
|
|||||||
};
|
};
|
||||||
|
|
||||||
startUpload = (uploadFiles, folderId, t) => {
|
startUpload = (uploadFiles, folderId, t) => {
|
||||||
const { canConvert } = this.formatsStore.docserviceStore;
|
const { canConvert } = this.settingsStore;
|
||||||
|
|
||||||
const toFolderId = folderId ? folderId : this.selectedFolderStore.id;
|
const toFolderId = folderId ? folderId : this.selectedFolderStore.id;
|
||||||
|
|
||||||
|
@ -5,10 +5,6 @@ import TreeFoldersStore from "./TreeFoldersStore";
|
|||||||
import thirdPartyStore from "./ThirdPartyStore";
|
import thirdPartyStore from "./ThirdPartyStore";
|
||||||
import SettingsStore from "./SettingsStore";
|
import SettingsStore from "./SettingsStore";
|
||||||
import FilesActionsStore from "./FilesActionsStore";
|
import FilesActionsStore from "./FilesActionsStore";
|
||||||
import FormatsStore from "./FormatsStore";
|
|
||||||
import iconFormatsStore from "./IconFormatsStore";
|
|
||||||
import mediaViewersFormatsStore from "./MediaViewersFormatsStore";
|
|
||||||
import docserviceStore from "./DocserviceStore";
|
|
||||||
import MediaViewerDataStore from "./MediaViewerDataStore";
|
import MediaViewerDataStore from "./MediaViewerDataStore";
|
||||||
import UploadDataStore from "./UploadDataStore";
|
import UploadDataStore from "./UploadDataStore";
|
||||||
import SecondaryProgressDataStore from "./SecondaryProgressDataStore";
|
import SecondaryProgressDataStore from "./SecondaryProgressDataStore";
|
||||||
@ -19,12 +15,6 @@ import DialogsStore from "./DialogsStore";
|
|||||||
import selectedFilesStore from "./SelectedFilesStore";
|
import selectedFilesStore from "./SelectedFilesStore";
|
||||||
import store from "studio/store";
|
import store from "studio/store";
|
||||||
|
|
||||||
const formatsStore = new FormatsStore(
|
|
||||||
iconFormatsStore,
|
|
||||||
mediaViewersFormatsStore,
|
|
||||||
docserviceStore
|
|
||||||
);
|
|
||||||
|
|
||||||
const selectedFolderStore = new SelectedFolderStore(store.auth.settingsStore);
|
const selectedFolderStore = new SelectedFolderStore(store.auth.settingsStore);
|
||||||
|
|
||||||
const treeFoldersStore = new TreeFoldersStore(selectedFolderStore);
|
const treeFoldersStore = new TreeFoldersStore(selectedFolderStore);
|
||||||
@ -38,11 +28,13 @@ const filesStore = new FilesStore(
|
|||||||
fileActionStore,
|
fileActionStore,
|
||||||
selectedFolderStore,
|
selectedFolderStore,
|
||||||
treeFoldersStore,
|
treeFoldersStore,
|
||||||
formatsStore,
|
|
||||||
settingsStore,
|
settingsStore,
|
||||||
selectedFilesStore
|
selectedFilesStore
|
||||||
);
|
);
|
||||||
const mediaViewerDataStore = new MediaViewerDataStore(filesStore, formatsStore);
|
const mediaViewerDataStore = new MediaViewerDataStore(
|
||||||
|
filesStore,
|
||||||
|
settingsStore
|
||||||
|
);
|
||||||
|
|
||||||
const secondaryProgressDataStore = new SecondaryProgressDataStore();
|
const secondaryProgressDataStore = new SecondaryProgressDataStore();
|
||||||
const primaryProgressDataStore = new PrimaryProgressDataStore();
|
const primaryProgressDataStore = new PrimaryProgressDataStore();
|
||||||
@ -54,7 +46,6 @@ const dialogsStore = new DialogsStore(
|
|||||||
selectedFolderStore
|
selectedFolderStore
|
||||||
);
|
);
|
||||||
const uploadDataStore = new UploadDataStore(
|
const uploadDataStore = new UploadDataStore(
|
||||||
formatsStore,
|
|
||||||
treeFoldersStore,
|
treeFoldersStore,
|
||||||
selectedFolderStore,
|
selectedFolderStore,
|
||||||
filesStore,
|
filesStore,
|
||||||
@ -82,7 +73,6 @@ const stores = {
|
|||||||
filesStore,
|
filesStore,
|
||||||
settingsStore,
|
settingsStore,
|
||||||
mediaViewerDataStore,
|
mediaViewerDataStore,
|
||||||
formatsStore,
|
|
||||||
versionHistoryStore,
|
versionHistoryStore,
|
||||||
uploadDataStore,
|
uploadDataStore,
|
||||||
dialogsStore,
|
dialogsStore,
|
||||||
|
Loading…
Reference in New Issue
Block a user