Web: Files: Store/HOC: Added make form action

This commit is contained in:
Ilya Oleshko 2021-11-26 17:37:38 +03:00
parent 22efc180de
commit 084677dfcd
2 changed files with 46 additions and 16 deletions

View File

@ -20,6 +20,19 @@ export default function withContextOptions(WrappedComponent) {
return this.gotoDocEditor(false);
};
onClickMakeForm = () => {
const { convertFile, item } = this.props;
const convertItem = {
fileId: item.id,
toFolderId: item.folderId,
action: "convert",
fileInfo: item,
};
convertFile(convertItem);
};
onOpenLocation = () => {
const { item, openLocationAction } = this.props;
const { parentId, folderId, fileExst } = item;
@ -376,6 +389,14 @@ export default function withContextOptions(WrappedComponent) {
onClick: this.onClickLinkFillForm,
disabled: false,
};
case "make-form":
return {
key: option,
label: t("Common:MakeForm"),
icon: "/static/images/form.plus.react.svg",
onClick: this.onClickMakeForm,
disabled: false,
};
case "edit":
return {
key: option,
@ -533,45 +554,47 @@ export default function withContextOptions(WrappedComponent) {
return inject(
(
{
filesStore,
filesActionsStore,
auth,
versionHistoryStore,
mediaViewerDataStore,
dialogsStore,
filesActionsStore,
filesStore,
mediaViewerDataStore,
treeFoldersStore,
uploadDataStore,
versionHistoryStore,
},
{ item }
) => {
const { openDocEditor, fileActionStore } = filesStore;
const {
openLocationAction,
finalizeVersionAction,
setFavoriteAction,
lockFileAction,
deleteItemAction,
downloadAction,
duplicateAction,
setThirdpartyInfo,
onSelectItem,
deleteItemAction,
finalizeVersionAction,
lockFileAction,
markAsRead,
onSelectItem,
openLocationAction,
setFavoriteAction,
setThirdpartyInfo,
unsubscribeAction,
} = filesActionsStore;
const {
setChangeOwnerPanelVisible,
setMoveToPanelVisible,
setCopyPanelVisible,
setDownloadDialogVisible,
setRemoveItem,
setDeleteThirdPartyDialogVisible,
setSharingPanelVisible,
setDeleteDialogVisible,
setDeleteThirdPartyDialogVisible,
setDownloadDialogVisible,
setMoveToPanelVisible,
setRemoveItem,
setSharingPanelVisible,
setUnsubscribe,
} = dialogsStore;
const { isTabletView, isDesktopClient } = auth.settingsStore;
const { setIsVerHistoryPanel, fetchFileVersions } = versionHistoryStore;
const { setAction, type, extension, id } = fileActionStore;
const { setMediaViewerData } = mediaViewerDataStore;
const { convertFile } = uploadDataStore;
const { isRecycleBinFolder, isShare } = treeFoldersStore;
const isShareFolder = isShare(item.rootFolderType);
@ -610,6 +633,7 @@ export default function withContextOptions(WrappedComponent) {
setDeleteDialogVisible,
setUnsubscribe,
isDesktop: isDesktopClient,
convertFile,
};
}
)(observer(WithContextOptions));

View File

@ -489,12 +489,15 @@ class FilesStore {
const shouldFillForm = canFormFillingDocs(item.fileExst);
const shouldEdit = !shouldFillForm && canWebEdit(item.fileExst);
const shouldView = canViewedDocs(item.fileExst);
const isForm = item.fileExst === ".docxf";
let fileOptions = [
//"open",
"fill-form",
"edit",
"preview",
"view",
"make-form",
"separator0",
"sharing-settings",
"external-link",
@ -525,6 +528,8 @@ class FilesStore {
"delete",
];
if (!isForm) fileOptions = this.removeOptions(fileOptions, ["make-form"]);
if (!shouldFillForm)
fileOptions = this.removeOptions(fileOptions, ["fill-form"]);
@ -637,6 +642,7 @@ class FilesStore {
"view",
"preview",
"edit",
"make-form",
"link-for-portal-users",
"sharing-settings",
"external-link",