@topconsultnpm/sdkui-react 6.19.0-test.1 → 6.19.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/assets/IconsS4t/add.svg +12 -12
- package/lib/assets/IconsS4t/aggiorna.svg +18 -18
- package/lib/assets/IconsS4t/bookmark.svg +42 -42
- package/lib/assets/IconsS4t/cancella.svg +15 -15
- package/lib/assets/IconsS4t/check-box.svg +19 -19
- package/lib/assets/IconsS4t/down-arrow-signBook.svg +40 -40
- package/lib/assets/IconsS4t/down.svg +28 -28
- package/lib/assets/IconsS4t/edit-file.svg +19 -19
- package/lib/assets/IconsS4t/edita.svg +32 -32
- package/lib/assets/IconsS4t/firma.svg +19 -19
- package/lib/assets/IconsS4t/icona_download.svg +16 -16
- package/lib/assets/IconsS4t/info.svg +51 -51
- package/lib/assets/IconsS4t/left.svg +20 -20
- package/lib/assets/IconsS4t/line.svg +40 -40
- package/lib/assets/IconsS4t/more.svg +19 -19
- package/lib/assets/IconsS4t/plus.svg +23 -23
- package/lib/assets/IconsS4t/printer.svg +49 -49
- package/lib/assets/IconsS4t/radio-on-button.svg +25 -25
- package/lib/assets/IconsS4t/rectangle.svg +41 -41
- package/lib/assets/IconsS4t/redo.svg +19 -19
- package/lib/assets/IconsS4t/right-arrow-signBook-finish.svg +40 -40
- package/lib/assets/IconsS4t/right-arrow-signBook.svg +40 -40
- package/lib/assets/IconsS4t/right.svg +22 -22
- package/lib/assets/IconsS4t/searchbar.svg +21 -21
- package/lib/assets/IconsS4t/text-box.svg +36 -36
- package/lib/assets/IconsS4t/tick.svg +8 -8
- package/lib/assets/IconsS4t/trash-white.svg +10 -10
- package/lib/assets/IconsS4t/undo.svg +19 -19
- package/lib/assets/IconsS4t/up.svg +32 -32
- package/lib/assets/IconsS4t/video-streaming.svg +2 -2
- package/lib/assets/IconsS4t/zoom-in.svg +58 -58
- package/lib/assets/IconsS4t/zoom-out.svg +56 -56
- package/lib/assets/icomoon.svg +96 -96
- package/lib/assets/italy.svg +16 -16
- package/lib/assets/six.svg +3 -3
- package/lib/assets/thumbnails/index.ts +39 -39
- package/lib/assets/topmedia-six.svg +65 -65
- package/lib/assets/topmeida-six-bianco.svg +65 -65
- package/lib/components/base/Styled.js +302 -302
- package/lib/components/base/TMAccordion.js +43 -43
- package/lib/components/base/TMAccordionNew.d.ts +28 -0
- package/lib/components/base/TMAccordionNew.js +326 -0
- package/lib/components/base/TMAreaManager.js +23 -23
- package/lib/components/base/TMButton.d.ts +1 -0
- package/lib/components/base/TMButton.js +136 -136
- package/lib/components/base/TMClosableList.js +46 -46
- package/lib/components/base/TMConfirm.js +20 -20
- package/lib/components/base/TMContextMenu.js +4 -4
- package/lib/components/base/TMContextMenuOLD.js +25 -25
- package/lib/components/base/TMCounterBar.js +32 -32
- package/lib/components/base/TMCounterContainer.js +30 -30
- package/lib/components/base/TMCustomButton.d.ts +1 -1
- package/lib/components/base/TMCustomButton.js +90 -35
- package/lib/components/base/TMDataGridExportForm.d.ts +1 -1
- package/lib/components/base/TMDataGridExportForm.js +9 -3
- package/lib/components/base/TMDropDownMenu.js +24 -24
- package/lib/components/base/TMFileManager.js +12 -3
- package/lib/components/base/TMFileManagerDataGridView.d.ts +2 -0
- package/lib/components/base/TMFileManagerDataGridView.js +12 -3
- package/lib/components/base/TMFileManagerThumbnailItems.d.ts +2 -0
- package/lib/components/base/TMFileManagerThumbnailItems.js +12 -2
- package/lib/components/base/TMFileManagerThumbnailsView.d.ts +2 -0
- package/lib/components/base/TMFileManagerThumbnailsView.js +2 -2
- package/lib/components/base/TMFileManagerUtils.js +19 -19
- package/lib/components/base/TMFloatingToolbar.js +34 -34
- package/lib/components/base/TMLayout.js +44 -44
- package/lib/components/base/TMList.js +34 -34
- package/lib/components/base/TMModal.d.ts +2 -0
- package/lib/components/base/TMModal.js +79 -34
- package/lib/components/base/TMPanel.js +57 -57
- package/lib/components/base/TMPopUp.js +186 -117
- package/lib/components/base/TMProgressBar.js +20 -20
- package/lib/components/base/TMResizableMenu.js +28 -28
- package/lib/components/base/TMRightSidebar.js +40 -40
- package/lib/components/base/TMSpinner.js +121 -121
- package/lib/components/base/TMTab.js +11 -11
- package/lib/components/base/TMToggleButton.js +36 -36
- package/lib/components/base/TMToolbarCard.js +35 -35
- package/lib/components/base/TMTooltip.d.ts +1 -1
- package/lib/components/base/TMTooltip.js +1 -1
- package/lib/components/base/TMTreeView.js +16 -16
- package/lib/components/base/TMUserAvatar.js +7 -7
- package/lib/components/base/TMWaitPanel.js +30 -24
- package/lib/components/choosers/TMCultureIDPicker.js +35 -35
- package/lib/components/choosers/TMDataListItemChooser.js +1 -1
- package/lib/components/choosers/TMDataListItemPicker.js +54 -54
- package/lib/components/choosers/TMDcmtTypeChooser.js +2 -2
- package/lib/components/choosers/TMDynDataListItemChooser.js +5 -4
- package/lib/components/choosers/TMMetadataChooser.d.ts +4 -1
- package/lib/components/choosers/TMMetadataChooser.js +31 -8
- package/lib/components/choosers/TMUserChooser.d.ts +4 -0
- package/lib/components/choosers/TMUserChooser.js +21 -5
- package/lib/components/editors/TMCheckBox.js +24 -24
- package/lib/components/editors/TMDateBox.d.ts +1 -1
- package/lib/components/editors/TMDropDown.js +43 -43
- package/lib/components/editors/TMEditorStyled.js +71 -71
- package/lib/components/editors/TMHtmlContentDisplay.js +16 -16
- package/lib/components/editors/TMLocalizedTextBox.js +31 -31
- package/lib/components/editors/TMMetadataValues.js +71 -22
- package/lib/components/editors/TMRadioButton.js +39 -39
- package/lib/components/editors/TMSummary.js +39 -39
- package/lib/components/editors/TMTextArea.d.ts +1 -0
- package/lib/components/editors/TMTextArea.js +56 -22
- package/lib/components/editors/TMTextBox.js +53 -23
- package/lib/components/editors/TMTextExpression.js +36 -28
- package/lib/components/features/assistant/ToppyDraggableHelpCenter.d.ts +30 -0
- package/lib/components/features/assistant/ToppyDraggableHelpCenter.js +482 -0
- package/lib/components/features/assistant/ToppySpeechBubble.d.ts +9 -0
- package/lib/components/features/assistant/ToppySpeechBubble.js +117 -0
- package/lib/components/features/blog/TMBlogCommentForm.d.ts +2 -0
- package/lib/components/features/blog/TMBlogCommentForm.js +21 -9
- package/lib/components/features/documents/TMDcmtBlog.js +1 -1
- package/lib/components/features/documents/TMDcmtForm.d.ts +1 -0
- package/lib/components/features/documents/TMDcmtForm.js +331 -65
- package/lib/components/features/documents/TMDcmtIcon.js +17 -12
- package/lib/components/features/documents/TMDcmtPreview.js +75 -38
- package/lib/components/features/documents/TMFileUploader.js +21 -21
- package/lib/components/features/documents/TMRelationViewer.js +56 -23
- package/lib/components/features/search/TMSavedQuerySelector.js +53 -53
- package/lib/components/features/search/TMSearch.js +2 -2
- package/lib/components/features/search/TMSearchQueryEditor.js +14 -14
- package/lib/components/features/search/TMSearchQueryPanel.js +41 -59
- package/lib/components/features/search/TMSearchResult.js +256 -51
- package/lib/components/features/search/TMSearchResultCheckoutInfoForm.d.ts +8 -0
- package/lib/components/features/search/TMSearchResultCheckoutInfoForm.js +134 -0
- package/lib/components/features/search/TMSearchResultsMenuItems.d.ts +3 -2
- package/lib/components/features/search/TMSearchResultsMenuItems.js +94 -59
- package/lib/components/features/search/TMSignSettingsForm.d.ts +9 -0
- package/lib/components/features/search/TMSignSettingsForm.js +621 -0
- package/lib/components/features/search/TMTreeSelector.js +67 -67
- package/lib/components/features/search/TMViewHistoryDcmtForm.d.ts +18 -0
- package/lib/components/features/search/TMViewHistoryDcmtForm.js +215 -0
- package/lib/components/features/tasks/TMTaskForm.js +42 -36
- package/lib/components/features/tasks/TMTasksAgenda.js +4 -4
- package/lib/components/features/tasks/TMTasksCalendar.js +2 -2
- package/lib/components/features/tasks/TMTasksHeader.js +1 -1
- package/lib/components/features/tasks/TMTasksUtils.d.ts +2 -1
- package/lib/components/features/tasks/TMTasksUtils.js +18 -3
- package/lib/components/features/tasks/TMTasksUtilsView.js +26 -4
- package/lib/components/features/tasks/TMTasksView.js +12 -6
- package/lib/components/features/wg/TMWGsCopyMoveForm.js +9 -9
- package/lib/components/features/workflow/TMWorkflowPopup.js +44 -44
- package/lib/components/features/workflow/diagram/ConnectionComponent.js +29 -29
- package/lib/components/features/workflow/diagram/ConnectionForm.js +10 -10
- package/lib/components/features/workflow/diagram/DiagramItemComponent.js +57 -57
- package/lib/components/features/workflow/diagram/DiagramItemForm.js +40 -35
- package/lib/components/features/workflow/diagram/DiagramItemSvgContent.js +12 -12
- package/lib/components/features/workflow/diagram/RecipientList.js +39 -39
- package/lib/components/features/workflow/diagram/WFDiagram.js +317 -285
- package/lib/components/features/workflow/diagram/WorkitemRecipientsEditor.js +4 -4
- package/lib/components/forms/Login/Chooser.js +35 -35
- package/lib/components/forms/Login/Menu.js +22 -22
- package/lib/components/forms/Login/SelectBox.js +46 -46
- package/lib/components/forms/Login/TMLoginForm.js +14 -14
- package/lib/components/forms/Login/TextBox.js +57 -57
- package/lib/components/forms/TMResultDialog.js +8 -2
- package/lib/components/forms/TMSaveForm.js +3 -11
- package/lib/components/grids/TMBlogAttachments.d.ts +0 -14
- package/lib/components/grids/TMBlogAttachments.js +10 -5
- package/lib/components/grids/TMBlogsPost.d.ts +8 -3
- package/lib/components/grids/TMBlogsPost.js +100 -39
- package/lib/components/grids/TMBlogsPostUtils.d.ts +1 -0
- package/lib/components/grids/TMBlogsPostUtils.js +32 -11
- package/lib/components/grids/TMRecentsManager.js +52 -52
- package/lib/components/grids/TMValidationItemsList.js +48 -48
- package/lib/components/index.d.ts +2 -1
- package/lib/components/index.js +2 -1
- package/lib/components/layout/panelManager/TMPanelManagerContainer.d.ts +1 -0
- package/lib/components/layout/panelManager/TMPanelManagerContainer.js +14 -14
- package/lib/components/layout/panelManager/TMPanelManagerContext.js +0 -1
- package/lib/components/layout/panelManager/TMPanelManagerToolbar.js +36 -35
- package/lib/components/layout/panelManager/types.d.ts +1 -0
- package/lib/components/pages/TMPage.js +1 -1
- package/lib/components/query/TMQueryEditor.js +17 -17
- package/lib/components/query/TMQuerySummary.d.ts +1 -0
- package/lib/components/query/TMQuerySummary.js +15 -15
- package/lib/components/settings/SettingsAppearance.js +9 -1
- package/lib/components/sidebar/TMCommandsPanel.js +10 -10
- package/lib/components/sidebar/TMHeader.js +307 -307
- package/lib/components/sidebar/TMSidebar.js +24 -24
- package/lib/components/sidebar/TMSidebarItem.js +21 -21
- package/lib/components/viewers/TMDataListItemViewer.d.ts +1 -1
- package/lib/components/viewers/TMMidViewer.d.ts +1 -1
- package/lib/components/viewers/TMTidViewer.d.ts +1 -1
- package/lib/components/wizard/TMStepIndicator.js +102 -102
- package/lib/components/wizard/TMWizard.js +29 -29
- package/lib/helper/GlobalStyles.d.ts +2 -0
- package/lib/helper/GlobalStyles.js +10 -0
- package/lib/helper/Globalization.d.ts +1 -0
- package/lib/helper/Globalization.js +30 -0
- package/lib/helper/SDKUI_Globals.d.ts +9 -0
- package/lib/helper/SDKUI_Globals.js +10 -1
- package/lib/helper/SDKUI_Localizator.d.ts +59 -2
- package/lib/helper/SDKUI_Localizator.js +617 -22
- package/lib/helper/TMCustomSearchBar.js +1 -1
- package/lib/helper/TMIcons.d.ts +6 -1
- package/lib/helper/TMIcons.js +22 -2
- package/lib/helper/TMToppyMessage.d.ts +1 -0
- package/lib/helper/TMToppyMessage.js +33 -32
- package/lib/helper/TMUtils.d.ts +42 -4
- package/lib/helper/TMUtils.js +227 -60
- package/lib/helper/cicoHelper.d.ts +31 -0
- package/lib/helper/cicoHelper.js +155 -0
- package/lib/helper/dcmtsHelper.d.ts +2 -1
- package/lib/helper/dcmtsHelper.js +56 -17
- package/lib/helper/helpers.d.ts +8 -1
- package/lib/helper/helpers.js +43 -21
- package/lib/helper/index.d.ts +1 -0
- package/lib/helper/index.js +1 -0
- package/lib/hooks/useDcmtOperations.d.ts +1 -1
- package/lib/hooks/useDcmtOperations.js +10 -6
- package/lib/hooks/useRelatedDocuments.js +35 -26
- package/lib/ts/types.d.ts +3 -1
- package/package.json +54 -54
- package/lib/components/features/assistant/ToppyHelpCenter.d.ts +0 -12
- package/lib/components/features/assistant/ToppyHelpCenter.js +0 -173
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useEffect, useState } from "react";
|
|
3
|
+
import TMSaveForm from "../../forms/TMSaveForm";
|
|
4
|
+
import { IconBxInfo, IconFileDots, IconFolder, SDKUI_Globals, SDKUI_Localizator } from "../../../helper";
|
|
5
|
+
import { FormModes } from "../../../ts";
|
|
6
|
+
import { ResultTypes, ValidationItem } from "@topconsultnpm/sdk-ts";
|
|
7
|
+
import { SaveFormOptions, useSaveForm } from "../../../hooks/useForm";
|
|
8
|
+
import { getCicoDownloadFileName, updateDcmtCheckoutItem } from "../../../helper/cicoHelper";
|
|
9
|
+
import { TMColors } from "../../../utils/theme";
|
|
10
|
+
import TMLayoutContainer, { TMLayoutItem } from "../../base/TMLayout";
|
|
11
|
+
import TMTooltip from "../../base/TMTooltip";
|
|
12
|
+
import TMTextBox from "../../editors/TMTextBox";
|
|
13
|
+
import ShowAlert from "../../base/TMAlert";
|
|
14
|
+
import { TMExceptionBoxManager } from "../../base/TMPopUp";
|
|
15
|
+
const TMSearchResultCheckoutInfoForm = (props) => {
|
|
16
|
+
const { dtdName, selectedDcmtOrFocused, onClose } = props;
|
|
17
|
+
const [initialDcmtCheckoutFolder, setInitialDcmtCheckoutFolder] = useState("");
|
|
18
|
+
const [initialDcmtCheckoutName, setInitialDcmtCheckoutName] = useState("");
|
|
19
|
+
const validator = async (params) => {
|
|
20
|
+
const validations = [];
|
|
21
|
+
if (!params.checkoutName?.trim()) {
|
|
22
|
+
validations.push(new ValidationItem(ResultTypes.ERROR, SDKUI_Localizator.Name, SDKUI_Localizator.RequiredField));
|
|
23
|
+
}
|
|
24
|
+
return validations;
|
|
25
|
+
};
|
|
26
|
+
const { formData, setFormData, validationItems, exception } = useSaveForm(FormModes.Create, 0, new SaveFormOptions(), validator);
|
|
27
|
+
const isDisabled = !formData || !formData.checkoutName?.trim() || (formData.checkoutFolder === initialDcmtCheckoutFolder && formData.checkoutName === initialDcmtCheckoutName);
|
|
28
|
+
useEffect(() => {
|
|
29
|
+
if (!selectedDcmtOrFocused.TID || !selectedDcmtOrFocused.DID)
|
|
30
|
+
return;
|
|
31
|
+
const dcmtCheckoutInfoCurrentItems = [...SDKUI_Globals.userSettings.dcmtCheckoutInfo];
|
|
32
|
+
const existingItem = dcmtCheckoutInfoCurrentItems.find((item) => item.TID === selectedDcmtOrFocused.TID.toString() && item.DID === selectedDcmtOrFocused.DID.toString());
|
|
33
|
+
const folder = existingItem?.checkoutFolder ?? "";
|
|
34
|
+
const name = existingItem?.checkoutName ?? getCicoDownloadFileName(dtdName ?? SDKUI_Localizator.SearchResult, selectedDcmtOrFocused, true, false);
|
|
35
|
+
// Set form data
|
|
36
|
+
setFormData({
|
|
37
|
+
...formData,
|
|
38
|
+
checkoutFolder: folder,
|
|
39
|
+
checkoutName: name,
|
|
40
|
+
});
|
|
41
|
+
// Save initial values
|
|
42
|
+
setInitialDcmtCheckoutFolder(folder);
|
|
43
|
+
setInitialDcmtCheckoutName(name);
|
|
44
|
+
}, []);
|
|
45
|
+
const calcIsModifiedWrapper = (formData) => {
|
|
46
|
+
if (!formData)
|
|
47
|
+
return false;
|
|
48
|
+
if (formData.checkoutFolder !== initialDcmtCheckoutFolder || formData.checkoutName !== initialDcmtCheckoutName) {
|
|
49
|
+
return true;
|
|
50
|
+
}
|
|
51
|
+
return false;
|
|
52
|
+
};
|
|
53
|
+
const onSaveAsync = () => {
|
|
54
|
+
try {
|
|
55
|
+
if (isDisabled)
|
|
56
|
+
return;
|
|
57
|
+
// Check: formData must exist, selectedDcmtOrFocused.TID and selectedDcmtOrFocused.DID must exist, and at least one of checkoutFolder or checkoutName must be filled
|
|
58
|
+
if (formData && selectedDcmtOrFocused.TID && selectedDcmtOrFocused.DID) {
|
|
59
|
+
// Create a new draft checkout item with TID, DID, and folder/name values
|
|
60
|
+
const newItem = {
|
|
61
|
+
TID: selectedDcmtOrFocused.TID.toString(),
|
|
62
|
+
DID: selectedDcmtOrFocused.DID.toString(),
|
|
63
|
+
checkoutFolder: formData.checkoutFolder ?? "",
|
|
64
|
+
checkoutName: formData.checkoutName ?? ""
|
|
65
|
+
};
|
|
66
|
+
updateDcmtCheckoutItem(newItem, "addOrUpdate");
|
|
67
|
+
onClose();
|
|
68
|
+
ShowAlert({ mode: 'success', title: SDKUI_Localizator.CheckoutInfo, message: SDKUI_Localizator.OperationSuccess, duration: 3000 });
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
catch (error) {
|
|
72
|
+
console.error('Error in onSaveAsync:', error);
|
|
73
|
+
TMExceptionBoxManager.show({ title: SDKUI_Localizator.Error, exception: error });
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
return _jsx(TMSaveForm, { title: dtdName + " \u2014 " + SDKUI_Localizator.CheckoutInfo, showTitleFormMode: false, isModal: true, width: "470px", height: "240px", showBackButton: false, showErrorCount: false, showSaveButton: false, showUndoButton: false, showToolbar: false, hasNavigation: false, formMode: FormModes.Create, validationItems: validationItems, exception: exception, isModified: calcIsModifiedWrapper(formData), onClose: onClose, children: _jsx("div", { style: { margin: "0px 10px" }, children: _jsx(TMLayoutContainer, { direction: 'vertical', children: _jsx(TMLayoutContainer, { gap: 5, children: _jsxs(TMLayoutItem, { height: 'max-content', children: [_jsxs("div", { style: { display: "flex", alignItems: "center", gap: "10px", marginTop: "5px", marginBottom: "5px" }, children: [_jsx(TMTooltip, { content: SDKUI_Localizator.CheckInOutSettingsNotice, children: _jsx(IconBxInfo, {}) }), _jsxs("span", { children: [SDKUI_Localizator.DefaultFolder, ":", " ", _jsx("i", { children: SDKUI_Globals.userSettings.defaultCheckInOutFolder !== ""
|
|
77
|
+
? SDKUI_Globals.userSettings.defaultCheckInOutFolder
|
|
78
|
+
: SDKUI_Localizator.UndefinedText })] })] }), _jsx(TMTextBox, { icon: _jsx(IconFolder, {}), label: SDKUI_Localizator.Folder, value: formData?.checkoutFolder ?? '', isModifiedWhen: formData?.checkoutFolder !== initialDcmtCheckoutFolder, onValueChanged: (e) => {
|
|
79
|
+
const newValue = e.target.value;
|
|
80
|
+
setFormData(prev => ({
|
|
81
|
+
...prev,
|
|
82
|
+
checkoutFolder: newValue,
|
|
83
|
+
checkoutName: prev?.checkoutName ?? "",
|
|
84
|
+
}));
|
|
85
|
+
}, validationItems: validationItems?.filter(o => o.PropertyName === SDKUI_Localizator.Folder), autoFocus: true, fromModal: true }), _jsx(TMTextBox, { icon: _jsx(IconFileDots, {}), label: SDKUI_Localizator.Name, value: formData?.checkoutName ?? '', isModifiedWhen: formData?.checkoutName !== initialDcmtCheckoutName, onValueChanged: (e) => {
|
|
86
|
+
const newValue = e.target.value;
|
|
87
|
+
setFormData(prev => ({
|
|
88
|
+
...prev,
|
|
89
|
+
checkoutFolder: prev?.checkoutFolder ?? "",
|
|
90
|
+
checkoutName: newValue,
|
|
91
|
+
}));
|
|
92
|
+
}, validationItems: validationItems?.filter(o => o.PropertyName === SDKUI_Localizator.Name) }), _jsxs("div", { style: {
|
|
93
|
+
width: "100%",
|
|
94
|
+
height: '50px',
|
|
95
|
+
marginTop: "10px",
|
|
96
|
+
display: 'flex',
|
|
97
|
+
justifyContent: 'flex-end',
|
|
98
|
+
alignItems: 'center',
|
|
99
|
+
gap: '10px'
|
|
100
|
+
}, children: [_jsx("button", { onClick: () => onSaveAsync(), disabled: false, style: {
|
|
101
|
+
background: 'none',
|
|
102
|
+
border: 'none',
|
|
103
|
+
color: isDisabled ? '#a0a0a0' : TMColors.primary,
|
|
104
|
+
cursor: isDisabled ? 'not-allowed' : 'pointer',
|
|
105
|
+
padding: '6px 14px',
|
|
106
|
+
borderRadius: '6px',
|
|
107
|
+
transition: 'background-color 0.3s, color 0.3s',
|
|
108
|
+
}, onMouseEnter: e => {
|
|
109
|
+
if (!isDisabled) {
|
|
110
|
+
e.currentTarget.style.backgroundColor = '#e6f0ff';
|
|
111
|
+
e.currentTarget.style.color = '#004a99';
|
|
112
|
+
}
|
|
113
|
+
}, onMouseLeave: e => {
|
|
114
|
+
if (!isDisabled) {
|
|
115
|
+
e.currentTarget.style.backgroundColor = 'transparent';
|
|
116
|
+
e.currentTarget.style.color = TMColors.primary;
|
|
117
|
+
}
|
|
118
|
+
}, children: SDKUI_Localizator.Save }), _jsx("button", { onClick: () => onClose(), style: {
|
|
119
|
+
background: 'none',
|
|
120
|
+
border: 'none',
|
|
121
|
+
color: TMColors.primary,
|
|
122
|
+
cursor: 'pointer',
|
|
123
|
+
padding: '6px 14px',
|
|
124
|
+
borderRadius: '6px',
|
|
125
|
+
transition: 'background-color 0.3s, color 0.3s',
|
|
126
|
+
}, onMouseEnter: e => {
|
|
127
|
+
e.currentTarget.style.backgroundColor = '#e6f0ff';
|
|
128
|
+
e.currentTarget.style.color = '#004a99';
|
|
129
|
+
}, onMouseLeave: e => {
|
|
130
|
+
e.currentTarget.style.backgroundColor = 'transparent';
|
|
131
|
+
e.currentTarget.style.color = TMColors.primary;
|
|
132
|
+
}, children: SDKUI_Localizator.Cancel })] })] }) }) }) }) });
|
|
133
|
+
};
|
|
134
|
+
export default TMSearchResultCheckoutInfoForm;
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { DcmtTypeDescriptor, FileDescriptor, FileFormats, LayoutModes, WorkingGroupDescriptor } from '@topconsultnpm/sdk-ts';
|
|
2
|
+
import { DcmtTypeDescriptor, FileDescriptor, FileFormats, LayoutModes, WorkingGroupDescriptor, UserDescriptor } from '@topconsultnpm/sdk-ts';
|
|
3
3
|
import { TMDataGridContextMenuItem } from '../../base/TMDataGrid';
|
|
4
4
|
import { DcmtInfo, DcmtOperationTypes, DownloadModes, DownloadTypes, SearchResultContext } from '../../../ts';
|
|
5
5
|
export declare const getSelectedDcmtsOrFocused: (selectedItems: Array<any>, focusedItem: any, fileFormat?: FileFormats) => DcmtInfo[];
|
|
6
|
+
export declare const getAllFieldSelectedDcmtsOrFocused: (selectedItems: Array<any>, focusedItem: any, fileFormat?: FileFormats) => any[];
|
|
6
7
|
export declare const signatureInformationCallback: (isMobile: boolean, inputDcmts: DcmtInfo[] | undefined) => Promise<void>;
|
|
7
|
-
export declare const getCommandsMenuItems: (isMobile: boolean, dtd: DcmtTypeDescriptor | undefined, selectedItems: Array<any>, focusedItem: any, context: SearchResultContext, showFloatingBar: boolean, workingGroupContext: WorkingGroupDescriptor | undefined, showSearch: boolean, setShowFloatingBar: React.Dispatch<React.SetStateAction<boolean>>, openFormHandler: (layoutMode: LayoutModes) => void, openSharedArchiveHandler: () => Promise<void>, showSharedDcmtsHandler: () => Promise<void>, downloadDcmtsAsync: (inputDcmts: DcmtInfo[] | undefined, downloadType: DownloadTypes, downloadMode: DownloadModes, onFileDownloaded?: (dcmtFile: File | undefined) => void, confirmAttachments?: (list: FileDescriptor[]) => Promise<string[] | undefined
|
|
8
|
+
export declare const getCommandsMenuItems: (isMobile: boolean, dtd: DcmtTypeDescriptor | undefined, allUsers: Array<UserDescriptor>, selectedItems: Array<any>, focusedItem: any, context: SearchResultContext, showFloatingBar: boolean, workingGroupContext: WorkingGroupDescriptor | undefined, showSearch: boolean, setShowFloatingBar: React.Dispatch<React.SetStateAction<boolean>>, openFormHandler: (layoutMode: LayoutModes) => void, openSharedArchiveHandler: () => Promise<void>, showSharedDcmtsHandler: () => Promise<void>, downloadDcmtsAsync: (inputDcmts: DcmtInfo[] | undefined, downloadType: DownloadTypes, downloadMode: DownloadModes, onFileDownloaded?: (dcmtFile: File | undefined) => void, confirmAttachments?: (list: FileDescriptor[]) => Promise<string[] | undefined>, skipConfirmation?: boolean) => Promise<void>, runOperationAsync: (inputDcmts: DcmtInfo[] | undefined, dcmtOperationType: DcmtOperationTypes, actionAfterOperationAsync?: () => Promise<void>) => Promise<void>, onRefreshSearchAsync: (() => Promise<void>) | undefined, onRefreshDataRowsAsync: (() => Promise<void>) | undefined, onRefreshAfterAddDcmtToFavs: (() => void) | undefined, confirmFormat: () => Promise<FileFormats>, confirmAttachments: (list: FileDescriptor[]) => Promise<string[] | undefined>, openTaskFormHandler: () => void, openDetailDcmtsFormHandler: (value: boolean) => void, openMasterDcmtsFormHandler: (value: boolean) => void, openBatchUpdateFormHandler: (value: boolean) => void, openExportForm: () => void, handleToggleSearch: () => void, handleSignApprove: () => void, openSignSettingsForm: () => void, handleCheckOutOperationCallback: (checkout: boolean) => Promise<void>, showCheckoutInformationFormCallback: () => void, viewHistoryCallback: () => void, openWGsCopyMoveForm?: ((mode: "copyToWgDraft" | "copyToWgArchivedDoc", dcmtTypeDescriptor: DcmtTypeDescriptor, documents: Array<DcmtInfo>) => void), openCommentFormCallback?: ((documents: Array<DcmtInfo>) => void), openEditPdf?: ((documents: Array<DcmtInfo>) => void), openAddDocumentForm?: () => void, passToArchiveCallback?: (outputMids: Array<{
|
|
8
9
|
mid: number;
|
|
9
10
|
value: string;
|
|
10
11
|
}>, tid?: number) => void, archiveMasterDocuments?: (tid: number | undefined) => Promise<void>, archiveDetailDocuments?: (tid: number | undefined) => Promise<void>, hasMasterRelation?: boolean, hasDetailRelation?: boolean, canArchiveMasterRelation?: boolean, canArchiveDetailRelation?: boolean, pairManyToManyDocuments?: (isPairing: boolean) => Promise<void>, hasManyToManyRelation?: boolean) => Array<TMDataGridContextMenuItem>;
|
|
@@ -1,31 +1,49 @@
|
|
|
1
1
|
import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { AccessLevels, AccessLevelsEx, AppModules, FileFormats, LayoutModes, SDK_Globals, DcmtTypeListCacheService, LicenseModuleStatus } from '@topconsultnpm/sdk-ts';
|
|
3
|
-
import { IconActivity, IconArchiveDoc, IconBatchUpdate, IconCheckFile, IconCheckIn, IconCircleInfo, IconCloseCircle, IconConvertFilePdf, IconDelete, IconDotsVerticalCircleOutline, IconDownload, IconEdit, IconExportTo, IconFileDots, IconHide, IconInfo, IconMenuCAArchive, IconPlatform, IconPreview, IconRelation, IconSearch, IconShow, IconStar, IconSubstFile, IconUndo, IconUserGroupOutline, SDKUI_Localizator, svgToString, searchResultToMetadataValues, IconSignaturePencil, IconArchiveMaster, IconArchiveDetail, IconDetailDcmts, isPdfEditorEnabled, IconPair, IconUnpair, IconSharedDcmt } from '../../../helper';
|
|
3
|
+
import { IconActivity, IconArchiveDoc, IconBatchUpdate, IconCheckFile, IconCheckIn, IconCircleInfo, IconCloseCircle, IconConvertFilePdf, IconDelete, IconDotsVerticalCircleOutline, IconDownload, IconEdit, IconExportTo, IconFileDots, IconHide, IconInfo, IconMenuCAArchive, IconPlatform, IconPreview, IconRelation, IconSearch, IconShow, IconStar, IconSubstFile, IconUndo, IconUserGroupOutline, SDKUI_Localizator, svgToString, searchResultToMetadataValues, IconSignaturePencil, IconArchiveMaster, IconArchiveDetail, IconDetailDcmts, isPdfEditorEnabled, IconPair, IconUnpair, IconSharedDcmt, IconShare, IconCopy, IconMoveToFolder } from '../../../helper';
|
|
4
4
|
import ShowAlert from '../../base/TMAlert';
|
|
5
5
|
import { TMMessageBoxManager, ButtonNames, TMExceptionBoxManager } from '../../base/TMPopUp';
|
|
6
6
|
import TMSpinner from '../../base/TMSpinner';
|
|
7
7
|
import { DcmtOperationTypes, DownloadTypes, SearchResultContext } from '../../../ts';
|
|
8
8
|
import { isXMLFileExt } from '../../../helper/dcmtsHelper';
|
|
9
|
+
import { cicoIsEnabled } from '../../../helper/cicoHelper';
|
|
9
10
|
const disabledForSingleRow = (selectedItems, focusedItem) => {
|
|
10
|
-
|
|
11
|
+
// Disabilita se ci sono più item selezionati o se focusedItem non ha TID/DID validi
|
|
12
|
+
return selectedItems.length > 1 || focusedItem === undefined || focusedItem.TID === undefined || focusedItem.DID === undefined;
|
|
11
13
|
};
|
|
12
14
|
const disabledForMultiRow = (selectedItems, focusedItem) => {
|
|
13
|
-
|
|
15
|
+
// Disabilita se non ci sono selectedItems e focusedItem non ha TID/DID validi
|
|
16
|
+
return selectedItems.length === 0 && (focusedItem === undefined || focusedItem.TID === undefined || focusedItem.DID === undefined);
|
|
14
17
|
};
|
|
15
18
|
const MAX_DCMTS_FOR_SELECTION_REFRESH = 100;
|
|
16
19
|
export const getSelectedDcmtsOrFocused = (selectedItems, focusedItem, fileFormat) => {
|
|
17
20
|
if (selectedItems.length <= 0 && !focusedItem)
|
|
18
21
|
return [];
|
|
19
22
|
if (selectedItems.length > 0) {
|
|
20
|
-
|
|
23
|
+
// Filtra solo gli item che hanno TID e DID validi
|
|
24
|
+
return selectedItems
|
|
25
|
+
.filter((item) => item.TID !== undefined && item.DID !== undefined)
|
|
26
|
+
.map((item) => { return { TID: item.TID, DID: item.DID, FILEEXT: item.FILEEXT, ISSIGNED: Number(item.ISSIGNED ?? 0), fileFormat: fileFormat, rowIndex: item.rowIndex }; });
|
|
21
27
|
}
|
|
22
|
-
else if (focusedItem !== undefined) {
|
|
28
|
+
else if (focusedItem !== undefined && focusedItem.TID !== undefined && focusedItem.DID !== undefined) {
|
|
23
29
|
return [{ TID: focusedItem.TID, DID: focusedItem.DID, FILEEXT: focusedItem.FILEEXT, ISSIGNED: Number(focusedItem.ISSIGNED ?? 0), fileFormat: fileFormat, rowIndex: focusedItem.rowIndex }];
|
|
24
30
|
}
|
|
25
31
|
return [];
|
|
26
32
|
};
|
|
33
|
+
export const getAllFieldSelectedDcmtsOrFocused = (selectedItems, focusedItem, fileFormat) => {
|
|
34
|
+
if (selectedItems.length <= 0 && !focusedItem)
|
|
35
|
+
return [];
|
|
36
|
+
if (selectedItems.length > 0) {
|
|
37
|
+
return selectedItems;
|
|
38
|
+
}
|
|
39
|
+
else if (focusedItem !== undefined) {
|
|
40
|
+
return [focusedItem];
|
|
41
|
+
}
|
|
42
|
+
return [];
|
|
43
|
+
};
|
|
27
44
|
export const signatureInformationCallback = async (isMobile, inputDcmts) => {
|
|
28
45
|
try {
|
|
46
|
+
TMSpinner.show({ description: SDKUI_Localizator.Loading });
|
|
29
47
|
if (!inputDcmts || inputDcmts.length === 0) {
|
|
30
48
|
ShowAlert({
|
|
31
49
|
message: SDKUI_Localizator.NoDcmtSelected,
|
|
@@ -74,8 +92,11 @@ export const signatureInformationCallback = async (isMobile, inputDcmts) => {
|
|
|
74
92
|
console.error(error);
|
|
75
93
|
TMExceptionBoxManager.show({ exception: error });
|
|
76
94
|
}
|
|
95
|
+
finally {
|
|
96
|
+
TMSpinner.hide();
|
|
97
|
+
}
|
|
77
98
|
};
|
|
78
|
-
export const getCommandsMenuItems = (isMobile, dtd, selectedItems, focusedItem, context, showFloatingBar, workingGroupContext, showSearch, setShowFloatingBar, openFormHandler, openSharedArchiveHandler, showSharedDcmtsHandler, downloadDcmtsAsync, runOperationAsync, onRefreshSearchAsync, onRefreshDataRowsAsync, onRefreshAfterAddDcmtToFavs, confirmFormat, confirmAttachments, openTaskFormHandler, openDetailDcmtsFormHandler, openMasterDcmtsFormHandler, openBatchUpdateFormHandler, openExportForm, handleToggleSearch, handleSignApprove, openWGsCopyMoveForm, openCommentFormCallback, openEditPdf, openAddDocumentForm, passToArchiveCallback, archiveMasterDocuments, archiveDetailDocuments, hasMasterRelation, hasDetailRelation, canArchiveMasterRelation, canArchiveDetailRelation, pairManyToManyDocuments, hasManyToManyRelation) => {
|
|
99
|
+
export const getCommandsMenuItems = (isMobile, dtd, allUsers, selectedItems, focusedItem, context, showFloatingBar, workingGroupContext, showSearch, setShowFloatingBar, openFormHandler, openSharedArchiveHandler, showSharedDcmtsHandler, downloadDcmtsAsync, runOperationAsync, onRefreshSearchAsync, onRefreshDataRowsAsync, onRefreshAfterAddDcmtToFavs, confirmFormat, confirmAttachments, openTaskFormHandler, openDetailDcmtsFormHandler, openMasterDcmtsFormHandler, openBatchUpdateFormHandler, openExportForm, handleToggleSearch, handleSignApprove, openSignSettingsForm, handleCheckOutOperationCallback, showCheckoutInformationFormCallback, viewHistoryCallback, openWGsCopyMoveForm, openCommentFormCallback, openEditPdf, openAddDocumentForm, passToArchiveCallback, archiveMasterDocuments, archiveDetailDocuments, hasMasterRelation, hasDetailRelation, canArchiveMasterRelation, canArchiveDetailRelation, pairManyToManyDocuments, hasManyToManyRelation) => {
|
|
79
100
|
const isPdfEditorLicensed = SDK_Globals?.license?.dcmtArchiveLicenses?.[0]?.siX_60007?.status === LicenseModuleStatus.Licensed;
|
|
80
101
|
let pdfEditorAvailable = false;
|
|
81
102
|
if (dtd && dtd.widgets && dtd.widgets.length > 0) {
|
|
@@ -184,7 +205,7 @@ export const getCommandsMenuItems = (isMobile, dtd, selectedItems, focusedItem,
|
|
|
184
205
|
icon: svgToString(_jsx(IconDownload, {})),
|
|
185
206
|
operationType: 'multiRow',
|
|
186
207
|
disabled: dtd?.perm?.canRetrieveFile !== AccessLevels.Yes ? true : disabledForMultiRow(selectedItems, focusedItem),
|
|
187
|
-
text: SDKUI_Localizator.DownloadFile, onClick: () => downloadDcmtsAsync(getSelectedDcmtsOrFocused(selectedItems, focusedItem), DownloadTypes.Dcmt, "download")
|
|
208
|
+
text: SDKUI_Localizator.DownloadFile, onClick: () => downloadDcmtsAsync(getSelectedDcmtsOrFocused(selectedItems, focusedItem), DownloadTypes.Dcmt, "download", undefined, undefined, true)
|
|
188
209
|
};
|
|
189
210
|
};
|
|
190
211
|
const downloadXMLAttachmentsMenuItem = () => {
|
|
@@ -192,7 +213,7 @@ export const getCommandsMenuItems = (isMobile, dtd, selectedItems, focusedItem,
|
|
|
192
213
|
icon: svgToString(_jsx(IconDownload, {})),
|
|
193
214
|
operationType: 'singleRow',
|
|
194
215
|
disabled: !isXMLFileExt(getSelectedDcmtsOrFocused(selectedItems, focusedItem)?.[0]?.FILEEXT) ? true : disabledForSingleRow(selectedItems, focusedItem),
|
|
195
|
-
text: SDKUI_Localizator.DownloadXMLAttachments, onClick: () => downloadDcmtsAsync(getSelectedDcmtsOrFocused(selectedItems, focusedItem), DownloadTypes.Attachment, "download", undefined, confirmAttachments)
|
|
216
|
+
text: SDKUI_Localizator.DownloadXMLAttachments, onClick: () => downloadDcmtsAsync(getSelectedDcmtsOrFocused(selectedItems, focusedItem), DownloadTypes.Attachment, "download", undefined, confirmAttachments, true)
|
|
196
217
|
};
|
|
197
218
|
};
|
|
198
219
|
const duplicateDocumentMenuItem = () => {
|
|
@@ -271,6 +292,20 @@ export const getCommandsMenuItems = (isMobile, dtd, selectedItems, focusedItem,
|
|
|
271
292
|
text: SDKUI_Localizator.Signature,
|
|
272
293
|
disabled: disabledForSingleRow(selectedItems, focusedItem) && disabledForMultiRow(selectedItems, focusedItem),
|
|
273
294
|
items: [
|
|
295
|
+
{
|
|
296
|
+
icon: svgToString(_jsx(IconSignaturePencil, {})),
|
|
297
|
+
operationType: 'singleRow',
|
|
298
|
+
disabled: disabledForSingleRow(selectedItems, focusedItem),
|
|
299
|
+
text: SDKUI_Localizator.Signature,
|
|
300
|
+
onClick: handleSignApprove
|
|
301
|
+
},
|
|
302
|
+
/* {
|
|
303
|
+
icon: svgToString(<IconSettings />),
|
|
304
|
+
operationType: 'singleRow',
|
|
305
|
+
disabled: disabledForSingleRow(selectedItems, focusedItem),
|
|
306
|
+
text: SDKUI_Localizator.SignatureSettings,
|
|
307
|
+
onClick: openSignSettingsForm
|
|
308
|
+
}, */
|
|
274
309
|
{
|
|
275
310
|
icon: svgToString(_jsx(IconCircleInfo, {})),
|
|
276
311
|
text: SDKUI_Localizator.SignatureInformation,
|
|
@@ -285,59 +320,59 @@ export const getCommandsMenuItems = (isMobile, dtd, selectedItems, focusedItem,
|
|
|
285
320
|
disabled: disabledForMultiRow(selectedItems, focusedItem),
|
|
286
321
|
onClick: async () => { await runOperationAsync(getSelectedDcmtsOrFocused(selectedItems, focusedItem), DcmtOperationTypes.VerifySign); }
|
|
287
322
|
},
|
|
288
|
-
{
|
|
289
|
-
icon: svgToString(_jsx(IconSignaturePencil, {})),
|
|
290
|
-
operationType: 'singleRow',
|
|
291
|
-
disabled: disabledForSingleRow(selectedItems, focusedItem),
|
|
292
|
-
text: SDKUI_Localizator.Signature,
|
|
293
|
-
onClick: handleSignApprove
|
|
294
|
-
},
|
|
295
323
|
]
|
|
296
324
|
};
|
|
297
325
|
};
|
|
298
|
-
|
|
326
|
+
const checkinMenuItem = () => {
|
|
327
|
+
// Get the currently selected or focused documents
|
|
328
|
+
const selectedDocs = getAllFieldSelectedDcmtsOrFocused(selectedItems, focusedItem);
|
|
329
|
+
// Take the first document (used for validation checks)
|
|
330
|
+
const firstDoc = selectedDocs?.[0];
|
|
331
|
+
const { cicoEnabled, checkoutStatus } = cicoIsEnabled(firstDoc, allUsers, dtd);
|
|
299
332
|
return {
|
|
300
|
-
icon: svgToString(
|
|
301
|
-
text: "Check in",
|
|
302
|
-
disabled:
|
|
333
|
+
icon: svgToString(_jsx(IconFileDots, {})),
|
|
334
|
+
text: "Check in/Check out",
|
|
335
|
+
disabled: firstDoc === undefined || disabledForSingleRow(selectedItems, focusedItem),
|
|
303
336
|
items: [
|
|
304
337
|
{
|
|
305
|
-
icon:
|
|
306
|
-
|
|
307
|
-
disabled:
|
|
308
|
-
|
|
309
|
-
},
|
|
310
|
-
{
|
|
311
|
-
icon: svgToString(<IconCheckIn />),
|
|
312
|
-
text: "Modifica file",
|
|
313
|
-
operationType: 'singleRow',
|
|
314
|
-
disabled: fromDatagrid ? false : disabledForSingleRow(selectedItems, focusedItem),
|
|
315
|
-
onClick: () => ShowAlert({ message: "TODO Modifica file", mode: 'info', title: `${"TODO"}`, duration: 3000 })
|
|
338
|
+
icon: "edit",
|
|
339
|
+
text: 'Check out',
|
|
340
|
+
disabled: !cicoEnabled || checkoutStatus.isCheckedOut || disabledForSingleRow(selectedItems, focusedItem),
|
|
341
|
+
onClick: () => handleCheckOutOperationCallback(true),
|
|
316
342
|
},
|
|
343
|
+
/* {
|
|
344
|
+
icon: "unlock",
|
|
345
|
+
text: 'Check in',
|
|
346
|
+
// onClick: () => handleCheckInOperationCallback(),
|
|
347
|
+
disabled: !cicoEnabled || !checkoutStatus.isCheckedOut || checkoutStatus.mode === 'lockMode' || disabledForSingleRow(selectedItems, focusedItem)
|
|
348
|
+
}, */
|
|
317
349
|
{
|
|
318
|
-
icon:
|
|
319
|
-
text:
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
onClick: () => ShowAlert({ message: "TODO Annulla check out", mode: 'info', title: `${"TODO"}`, duration: 3000 })
|
|
350
|
+
icon: "remove",
|
|
351
|
+
text: SDKUI_Localizator.CancelCheckOut,
|
|
352
|
+
disabled: !cicoEnabled || !checkoutStatus.isCheckedOut || checkoutStatus.mode === 'lockMode' || disabledForSingleRow(selectedItems, focusedItem),
|
|
353
|
+
onClick: () => handleCheckOutOperationCallback(false),
|
|
323
354
|
},
|
|
324
355
|
{
|
|
325
|
-
icon:
|
|
326
|
-
text:
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
onClick: () => ShowAlert({ message: "TODO Check in", mode: 'info', title: `${"TODO"}`, duration: 3000 })
|
|
356
|
+
icon: "clock",
|
|
357
|
+
text: SDKUI_Localizator.History,
|
|
358
|
+
disabled: checkoutStatus.version === 1 || disabledForSingleRow(selectedItems, focusedItem),
|
|
359
|
+
onClick: viewHistoryCallback,
|
|
330
360
|
},
|
|
331
361
|
{
|
|
332
|
-
icon:
|
|
333
|
-
text:
|
|
334
|
-
|
|
335
|
-
disabled:
|
|
336
|
-
onClick: () => ShowAlert({ message: "TODO Cronologia", mode: 'info', title: `${"TODO"}`, duration: 3000 })
|
|
362
|
+
icon: "info",
|
|
363
|
+
text: SDKUI_Localizator.CheckoutInfo,
|
|
364
|
+
onClick: showCheckoutInformationFormCallback,
|
|
365
|
+
disabled: !checkoutStatus.isCheckedOut || disabledForSingleRow(selectedItems, focusedItem)
|
|
337
366
|
},
|
|
367
|
+
/* {
|
|
368
|
+
icon: "copy",
|
|
369
|
+
text: SDKUI_Localizator.CopyCheckoutPath,
|
|
370
|
+
// onClick: infoCheckCopyToClipboard,
|
|
371
|
+
disabled: !checkoutStatus.isCheckedOut || disabledForSingleRow(selectedItems, focusedItem)
|
|
372
|
+
}, */
|
|
338
373
|
]
|
|
339
|
-
}
|
|
340
|
-
}
|
|
374
|
+
};
|
|
375
|
+
};
|
|
341
376
|
const relationsMenuItem = () => {
|
|
342
377
|
return {
|
|
343
378
|
icon: svgToString(_jsx(IconRelation, {})),
|
|
@@ -347,21 +382,21 @@ export const getCommandsMenuItems = (isMobile, dtd, selectedItems, focusedItem,
|
|
|
347
382
|
items: [
|
|
348
383
|
{
|
|
349
384
|
icon: svgToString(_jsx(IconPair, {})),
|
|
350
|
-
text:
|
|
385
|
+
text: SDKUI_Localizator.MatchManyDocumentsManyToMany,
|
|
351
386
|
operationType: 'multiRow',
|
|
352
387
|
disabled: !hasManyToManyRelation || disabledForMultiRow(selectedItems, focusedItem),
|
|
353
388
|
onClick: async () => await pairManyToManyDocuments?.(true)
|
|
354
389
|
},
|
|
355
390
|
{
|
|
356
391
|
icon: svgToString(_jsx(IconUnpair, {})),
|
|
357
|
-
text:
|
|
392
|
+
text: SDKUI_Localizator.UnmatchManyDocumentsManyToMany,
|
|
358
393
|
operationType: 'multiRow',
|
|
359
394
|
disabled: !hasManyToManyRelation || disabledForMultiRow(selectedItems, focusedItem),
|
|
360
395
|
onClick: async () => await pairManyToManyDocuments?.(false)
|
|
361
396
|
},
|
|
362
397
|
{
|
|
363
398
|
icon: svgToString(_jsx(IconArchiveMaster, {})),
|
|
364
|
-
text:
|
|
399
|
+
text: SDKUI_Localizator.ArchiveMasterDocument,
|
|
365
400
|
operationType: 'multiRow',
|
|
366
401
|
beginGroup: true,
|
|
367
402
|
disabled: canArchiveMasterRelation !== true,
|
|
@@ -369,7 +404,7 @@ export const getCommandsMenuItems = (isMobile, dtd, selectedItems, focusedItem,
|
|
|
369
404
|
},
|
|
370
405
|
{
|
|
371
406
|
icon: svgToString(_jsx(IconArchiveDetail, {})),
|
|
372
|
-
text:
|
|
407
|
+
text: SDKUI_Localizator.ArchiveDetailDocument,
|
|
373
408
|
operationType: 'multiRow',
|
|
374
409
|
disabled: canArchiveDetailRelation !== true,
|
|
375
410
|
onClick: async () => await archiveDetailDocuments?.(focusedItem?.TID)
|
|
@@ -397,22 +432,22 @@ export const getCommandsMenuItems = (isMobile, dtd, selectedItems, focusedItem,
|
|
|
397
432
|
const sharedDcmtsMenuItem = () => {
|
|
398
433
|
return {
|
|
399
434
|
icon: svgToString(_jsx(IconSharedDcmt, {})),
|
|
400
|
-
text:
|
|
435
|
+
text: SDKUI_Localizator.SharedDocuments,
|
|
401
436
|
operationType: 'multiRow',
|
|
402
437
|
disabled: disabledForMultiRow(selectedItems, focusedItem),
|
|
403
438
|
items: [
|
|
404
439
|
{
|
|
405
440
|
icon: svgToString(_jsx(IconSharedDcmt, {})),
|
|
406
|
-
text:
|
|
441
|
+
text: SDKUI_Localizator.SharedArchiving,
|
|
407
442
|
operationType: 'singleRow',
|
|
408
443
|
disabled: disabledForSingleRow(selectedItems, focusedItem),
|
|
409
444
|
onClick: async () => { await openSharedArchiveHandler(); }
|
|
410
445
|
},
|
|
411
446
|
{
|
|
412
447
|
icon: svgToString(_jsx(IconSharedDcmt, {})),
|
|
413
|
-
text:
|
|
448
|
+
text: SDKUI_Localizator.ShowSharedDocuments,
|
|
414
449
|
operationType: 'multiRow',
|
|
415
|
-
disabled:
|
|
450
|
+
disabled: disabledForSingleRow(selectedItems, focusedItem),
|
|
416
451
|
onClick: async () => { await showSharedDcmtsHandler(); }
|
|
417
452
|
}
|
|
418
453
|
]
|
|
@@ -555,7 +590,7 @@ export const getCommandsMenuItems = (isMobile, dtd, selectedItems, focusedItem,
|
|
|
555
590
|
};
|
|
556
591
|
const shareFromWgMenuItem = () => {
|
|
557
592
|
return {
|
|
558
|
-
icon:
|
|
593
|
+
icon: svgToString(_jsx(IconShare, {})),
|
|
559
594
|
text: SDKUI_Localizator.Share,
|
|
560
595
|
visible: workingGroupContext !== undefined && openAddDocumentForm !== undefined,
|
|
561
596
|
disabled: workingGroupContext === undefined,
|
|
@@ -564,7 +599,7 @@ export const getCommandsMenuItems = (isMobile, dtd, selectedItems, focusedItem,
|
|
|
564
599
|
};
|
|
565
600
|
const copyFromWgMenuItem = () => {
|
|
566
601
|
return {
|
|
567
|
-
icon:
|
|
602
|
+
icon: svgToString(_jsx(IconCopy, {})),
|
|
568
603
|
text: SDKUI_Localizator.CopyToDrafts,
|
|
569
604
|
operationType: 'multiRow',
|
|
570
605
|
visible: openWGsCopyMoveForm !== undefined,
|
|
@@ -574,7 +609,7 @@ export const getCommandsMenuItems = (isMobile, dtd, selectedItems, focusedItem,
|
|
|
574
609
|
};
|
|
575
610
|
const movetofolderFromWgMenuItem = () => {
|
|
576
611
|
return {
|
|
577
|
-
icon:
|
|
612
|
+
icon: svgToString(_jsx(IconMoveToFolder, {})),
|
|
578
613
|
text: !isMobile ? SDKUI_Localizator.CopyToArchivedDocuments : SDKUI_Localizator.CopyToArchived,
|
|
579
614
|
operationType: 'multiRow',
|
|
580
615
|
visible: openWGsCopyMoveForm !== undefined,
|
|
@@ -649,7 +684,7 @@ export const getCommandsMenuItems = (isMobile, dtd, selectedItems, focusedItem,
|
|
|
649
684
|
]
|
|
650
685
|
},
|
|
651
686
|
signatureMenuItem(),
|
|
652
|
-
// checkinMenuItem()
|
|
687
|
+
// checkinMenuItem(),
|
|
653
688
|
relationsMenuItem(),
|
|
654
689
|
sharedDcmtsMenuItem(),
|
|
655
690
|
// shareMenuItem(),
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { DcmtTypeDescriptor, SearchResultDescriptor } from "@topconsultnpm/sdk-ts";
|
|
2
|
+
interface TMSignSettingsFormProps {
|
|
3
|
+
fromDTD: DcmtTypeDescriptor;
|
|
4
|
+
inputDcmts: any[];
|
|
5
|
+
onCloseSignSettingsForm: () => void;
|
|
6
|
+
onSavedAsyncCallback: ((tid: number | undefined, did: number | undefined, metadataResult?: SearchResultDescriptor | null) => Promise<void>);
|
|
7
|
+
}
|
|
8
|
+
declare const TMSignSettingsForm: (props: TMSignSettingsFormProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
9
|
+
export default TMSignSettingsForm;
|