@topconsultnpm/sdkui-react 6.22.0-dev4.2 → 6.22.0-dev4.21
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/components/NewComponents/ContextMenu/styles.d.ts +43 -45
- package/lib/components/NewComponents/FloatingMenuBar/styles.d.ts +60 -67
- package/lib/components/base/Styled.d.ts +77 -93
- package/lib/components/base/TMAlert.d.ts +2 -1
- package/lib/components/base/TMAlert.js +7 -6
- package/lib/components/base/TMCounterBar.d.ts +2 -2
- package/lib/components/base/TMCounterContainer.d.ts +4 -3
- package/lib/components/base/TMCounterContainer.js +16 -1
- package/lib/components/base/TMCustomButton.d.ts +1 -1
- package/lib/components/base/TMDataGrid.js +24 -4
- package/lib/components/base/TMDataGridExportForm.d.ts +1 -2
- package/lib/components/base/TMFileManager.d.ts +1 -2
- package/lib/components/base/TMFileManagerDataGridView.d.ts +1 -2
- package/lib/components/base/TMFileManagerThumbnailItems.d.ts +1 -1
- package/lib/components/base/TMFileManagerThumbnailsView.d.ts +1 -1
- package/lib/components/base/TMFileManagerUtils.d.ts +6 -4
- package/lib/components/base/TMLayout.d.ts +4 -4
- package/lib/components/base/TMList.d.ts +1 -2
- package/lib/components/base/TMListView.d.ts +1 -1
- package/lib/components/base/TMSpinner.d.ts +2 -3
- package/lib/components/base/TMTab.d.ts +3 -4
- package/lib/components/base/TMTabControl.js +208 -208
- package/lib/components/base/TMTooltip.d.ts +1 -1
- package/lib/components/base/TMTreeView.d.ts +8 -14
- package/lib/components/base/TMUserAvatar.d.ts +1 -2
- package/lib/components/base/TMVilViewer.d.ts +1 -2
- package/lib/components/base/TMWaitPanel.d.ts +2 -3
- package/lib/components/base/waitPanel/TMWaitPanelManager.d.ts +16 -6
- package/lib/components/base/waitPanel/TMWaitPanelManager.js +55 -2
- package/lib/components/base/waitPanel/TMWaitPanelView.d.ts +6 -2
- package/lib/components/base/waitPanel/TMWaitPanelView.js +75 -3
- package/lib/components/choosers/TMDistinctValues.js +3 -3
- package/lib/components/choosers/TMDynDataListItemChooser.d.ts +1 -1
- package/lib/components/choosers/TMInvoiceRetrieveFormats.d.ts +1 -2
- package/lib/components/choosers/TMOrderRetrieveFormats.d.ts +1 -2
- package/lib/components/choosers/TMQuickSearchInfo.d.ts +1 -2
- package/lib/components/choosers/TMRelationChooser.d.ts +3 -3
- package/lib/components/choosers/TMUserChooser.d.ts +3 -2
- package/lib/components/choosers/TMUserChooser.js +3 -3
- package/lib/components/editors/TMEditorStyled.d.ts +42 -20
- package/lib/components/editors/TMFormulaEditor.d.ts +1 -1
- package/lib/components/editors/TMHtmlContentDisplay.d.ts +1 -2
- package/lib/components/editors/TMHtmlEditor.d.ts +1 -2
- package/lib/components/editors/TMTreeDropDown.d.ts +1 -1
- package/lib/components/features/assistant/TMHelpOnLineChat.d.ts +0 -1
- package/lib/components/features/assistant/TMHelpOnLineChat.js +8 -161
- package/lib/components/features/assistant/TMToppyDraggableHelpCenter.d.ts +1 -1
- package/lib/components/features/blog/TMBlogCommentForm.d.ts +1 -2
- package/lib/components/features/documents/TMDcmtForm.d.ts +6 -1
- package/lib/components/features/documents/TMDcmtForm.js +42 -7
- package/lib/components/features/documents/TMDcmtFormActionButtons.d.ts +1 -1
- package/lib/components/features/documents/TMDcmtFormActionButtons.js +5 -2
- package/lib/components/features/documents/TMDcmtIcon.d.ts +1 -2
- package/lib/components/features/documents/TMDcmtPreview.d.ts +8 -8
- package/lib/components/features/documents/TMDcmtPreview.js +16 -7
- package/lib/components/features/documents/TMDcmtTasks.d.ts +1 -2
- package/lib/components/features/documents/TMDragDropOverlay.d.ts +1 -1
- package/lib/components/features/documents/TMFileUploader.js +21 -21
- package/lib/components/features/documents/TMMasterDetailDcmts.d.ts +2 -0
- package/lib/components/features/documents/TMMasterDetailDcmts.js +13 -5
- package/lib/components/features/documents/TMMasterInfoFields.d.ts +1 -2
- package/lib/components/features/documents/TMMergeToPdfForm.d.ts +1 -2
- package/lib/components/features/documents/TMMergeToPdfForm.js +5 -4
- package/lib/components/features/documents/TMMultiMasterDetailDcmtsForm.d.ts +1 -2
- package/lib/components/features/documents/TMMultiMasterDetailDcmtsUtils.d.ts +4 -4
- package/lib/components/features/search/TMDcmtCheckoutInfoForm.d.ts +1 -2
- package/lib/components/features/search/TMMetadataOutputForm.d.ts +1 -2
- package/lib/components/features/search/TMMetadataSorterForm.d.ts +1 -2
- package/lib/components/features/search/TMSavedQuerySelector.d.ts +2 -2
- package/lib/components/features/search/TMSearch.d.ts +1 -2
- package/lib/components/features/search/TMSearchQueryPanel.d.ts +3 -9
- package/lib/components/features/search/TMSearchResult.js +121 -91
- package/lib/components/features/search/TMSearchResultFloatingActionButton.d.ts +1 -1
- package/lib/components/features/search/TMSignatureInfoContent.d.ts +1 -2
- package/lib/components/features/search/TMViewHistoryDcmt.d.ts +1 -2
- package/lib/components/features/search/TMViewHistoryDcmt.js +1 -1
- package/lib/components/features/tasks/TMTaskForm.d.ts +1 -1
- package/lib/components/features/tasks/TMTaskFormUtils.d.ts +10 -10
- package/lib/components/features/tasks/TMTasksAgenda.d.ts +1 -1
- package/lib/components/features/tasks/TMTasksCalendar.d.ts +1 -1
- package/lib/components/features/tasks/TMTasksHeader.d.ts +1 -1
- package/lib/components/features/tasks/TMTasksPanelContent.d.ts +1 -1
- package/lib/components/features/tasks/TMTasksUtilsView.d.ts +5 -5
- package/lib/components/features/tasks/TMTasksView.d.ts +1 -1
- package/lib/components/features/tasks/TMTasksView.js +15 -9
- package/lib/components/features/wg/TMWGsCopyMoveForm.d.ts +2 -3
- package/lib/components/features/wg/TMWGsCopyMoveForm.js +8 -4
- package/lib/components/features/workflow/TMWorkflowPopup.d.ts +7 -8
- package/lib/components/features/workflow/TMWorkflowPopup.js +1 -1
- package/lib/components/features/workflow/diagram/WorkitemRecipientsEditor.d.ts +1 -3
- package/lib/components/forms/Login/ChangePasswordInputs.d.ts +1 -3
- package/lib/components/forms/Login/Chooser.d.ts +2 -2
- package/lib/components/forms/TMChooserForm.d.ts +1 -2
- package/lib/components/forms/TMSaveForm.d.ts +4 -4
- package/lib/components/grids/TMBlogAttachments.d.ts +1 -2
- package/lib/components/grids/TMBlogHeader.d.ts +1 -1
- package/lib/components/grids/TMBlogsPost.d.ts +1 -1
- package/lib/components/grids/TMBlogsPost.js +1 -1
- package/lib/components/grids/TMBlogsPostUtils.d.ts +9 -9
- package/lib/components/grids/TMValidationItemsList.d.ts +1 -2
- package/lib/components/layout/panelManager/TMPanelManagerContainer.d.ts +1 -2
- package/lib/components/layout/panelManager/TMPanelManagerContainer.js +12 -12
- package/lib/components/layout/panelManager/TMPanelManagerContext.d.ts +2 -2
- package/lib/components/layout/panelManager/TMPanelManagerLoader.d.ts +1 -2
- package/lib/components/layout/panelManager/TMPanelManagerToolbar.d.ts +6 -5
- package/lib/components/layout/panelManager/TMPanelManagerWithPersistenceProvider.d.ts +2 -2
- package/lib/components/layout/panelManager/TMPanelWrapper.d.ts +2 -2
- package/lib/components/pages/TMPage.d.ts +1 -1
- package/lib/components/pages/TMPage.js +13 -5
- package/lib/components/query/TMQueryEditor.d.ts +10 -14
- package/lib/components/settings/SettingsAppearance.d.ts +1 -2
- package/lib/components/sidebar/TMAboutApp.d.ts +1 -2
- package/lib/components/sidebar/TMCommandsPanel.d.ts +4 -4
- package/lib/components/sidebar/TMHeader.d.ts +3 -3
- package/lib/components/viewers/TMDataListItemViewer.d.ts +2 -3
- package/lib/components/viewers/TMDataUserIdItemViewer.d.ts +2 -3
- package/lib/components/viewers/TMMidViewer.d.ts +2 -2
- package/lib/components/viewers/TMTidViewer.d.ts +2 -2
- package/lib/helper/SDKUI_Globals.d.ts +7 -4
- package/lib/helper/SDKUI_Globals.js +7 -4
- package/lib/helper/SDKUI_Localizator.d.ts +13 -6
- package/lib/helper/SDKUI_Localizator.js +121 -51
- package/lib/helper/TMAppUpdatedModal.d.ts +1 -2
- package/lib/helper/TMAppUpdatedModal.js +93 -93
- package/lib/helper/TMCommandsContextMenu.d.ts +1 -1
- package/lib/helper/TMIcons.d.ts +282 -281
- package/lib/helper/TMIcons.js +4 -1
- package/lib/helper/TMPdfViewer.d.ts +1 -2
- package/lib/helper/TMToppyMessage.d.ts +2 -2
- package/lib/helper/TMUtils.d.ts +4 -10
- package/lib/helper/checkinCheckoutManager.js +2 -3
- package/lib/helper/helpers.d.ts +1 -1
- package/lib/helper/queryHelper.d.ts +15 -2
- package/lib/helper/queryHelper.js +52 -1
- package/lib/hooks/useCaseFlowApprove.js +31 -6
- package/lib/hooks/useCheckInOutOperations.js +2 -3
- package/lib/hooks/useDcmtOperations.js +24 -16
- package/lib/hooks/useDocumentOperations.d.ts +2 -0
- package/lib/hooks/useDocumentOperations.js +7 -7
- package/lib/hooks/useInputDialog.d.ts +1 -2
- package/lib/hooks/useMultiMasterDetailDcmts.js +10 -6
- package/lib/services/caseflow/CaseFlowService.d.ts +33 -3
- package/lib/services/caseflow/CaseFlowService.js +71 -44
- package/lib/services/caseflow/caseFlowNameCache.d.ts +5 -0
- package/lib/services/caseflow/caseFlowNameCache.js +19 -0
- package/lib/services/platform_services.d.ts +2 -3
- package/package.json +69 -69
- package/lib/components/features/assistant/dataset/Designer-Suggested-Questions.json +0 -102
- package/lib/components/features/assistant/dataset/Login-Suggested-Questions.json +0 -32
- package/lib/components/features/assistant/dataset/Surfer-Suggested-Questions.json +0 -102
package/lib/helper/TMIcons.js
CHANGED
|
@@ -234,6 +234,9 @@ function IconEdit(props) {
|
|
|
234
234
|
function IconWarning(props) {
|
|
235
235
|
return (_jsxs("svg", { fontSize: props.fontSize ? props.fontSize : FONTSIZE, viewBox: "0 0 1024 1024", fill: "currentColor", height: "1em", width: "1em", ...props, children: [" ", _jsx("path", { d: "M955.7 856l-416-720c-6.2-10.7-16.9-16-27.7-16s-21.6 5.3-27.7 16l-416 720C56 877.4 71.4 904 96 904h832c24.6 0 40-26.6 27.7-48zM480 416c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v184c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V416zm32 352a48.01 48.01 0 010-96 48.01 48.01 0 010 96z" }), " "] }));
|
|
236
236
|
}
|
|
237
|
+
function IconWarningCircle(props) {
|
|
238
|
+
return (_jsxs("svg", { fontSize: props.fontSize ? props.fontSize : FONTSIZE, viewBox: "0 0 1024 1024", fill: "currentColor", height: "1em", width: "1em", ...props, children: [" ", _jsx("path", { d: "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm-32 232c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v272c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V296zm32 440a48.01 48.01 0 010-96 48.01 48.01 0 010 96z" }), " "] }));
|
|
239
|
+
}
|
|
237
240
|
function IconInfo(props) {
|
|
238
241
|
return (_jsxs("svg", { fontSize: props.fontSize ? props.fontSize : FONTSIZE, viewBox: "0 0 1024 1024", fill: "currentColor", height: "1em", width: "1em", ...props, children: [" ", _jsx("path", { d: "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm32 664c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V456c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v272zm-32-344a48.01 48.01 0 010-96 48.01 48.01 0 010 96z" }), " "] }));
|
|
239
242
|
}
|
|
@@ -704,4 +707,4 @@ export function IconCache(props) {
|
|
|
704
707
|
function IconScanner(props) {
|
|
705
708
|
return (_jsxs("svg", { fontSize: props.fontSize ? props.fontSize : FONTSIZE, viewBox: "0 0 24 24", fill: "currentColor", height: "1em", width: "1em", ...props, children: [_jsx("path", { d: "M4 3.5 L20 3.5 L21 9 L3 9 Z", opacity: "0.5" }), _jsx("rect", { x: "2", y: "10", width: "20", height: "7", rx: "1.5" }), _jsx("rect", { x: "4", y: "11.5", width: "16", height: "4", rx: "0.5", opacity: "0.25", fill: "white" }), _jsx("rect", { x: "4", y: "13", width: "16", height: "0.8", fill: "white", opacity: "0.7" }), _jsx("rect", { x: "4", y: "18", width: "16", height: "1.5", rx: "0.5" }), _jsx("circle", { cx: "5", cy: "9.5", r: "0.7" }), _jsx("circle", { cx: "19", cy: "9.5", r: "0.7" })] }));
|
|
706
709
|
}
|
|
707
|
-
export { Icon123, IconABC, IconAccessPoint, IconAddressBook, IconSignCert, IconServerService, IconActivity, IconActivityLog, IconAdd, IconAddCircleOutline, IconAll, IconApply, IconApplyAndClose, IconArchive, IconArchiveDoc, IconArrowDown, IconArrowLeft, IconArrowRight, IconArrowUp, IconAtSign, IconAttachment, IconAutoConfig, IconBackward, IconBasket, IconBoard, IconBoxArchiveIn, IconBxInfo, IconBxLock, IconCalendar, IconCloseCircle, IconCloseOutline, IconCloud, IconCircleInfo, IconClear, IconColumns, IconCommand, IconCopy, IconCount, IconCrown, IconDashboard, IconDcmtType, IconDcmtTypeOnlyMetadata, IconDcmtTypeSys, IconDelete, IconDetails, IconDown, IconDownload, IconDotsVerticalCircleOutline, IconDuplicate, IconEdit, IconEqual, IconEqualNot, IconEraser, IconExpandRight, IconExport, IconFastBackward, IconFoldeAdd, IconFolderSearch, IconFolderZip, IconFastForward, IconFastSearch, IconFileDots, IconFilter, IconForceStop, IconForward, IconFreeze, IconFreeSearch, IconGreaterThan, IconGreaterThanOrEqual, IconHistory, IconImport, IconTag, IconInfo, IconInsertAbove, IconInsertBelow, IconHeart, IconHide, IconLanguage, IconLeft, IconLessThan, IconLessThanOrEqual, IconLock, IconLockClosed, IconLogin, IconLink, IconLogout, IconMail, IconMapping, IconMic, IconMenuHorizontal, IconMenuKebab, IconMenuVertical, IconMetadata, IconMetadata_Computed, IconMetadata_DataList, IconMetadata_Date, IconMetadata_DynamicDataList, IconMetadata_Numerator, IconMetadata_Numeric, IconMetadata_Special, IconMetadata_Text, IconMetadata_User, IconMonitor, IconOpenInNew, IconNotification, IconPassword, IconPencil, IconPlatform, IconPlay, IconPreview, IconPrinter, IconPrintOutline, IconProcess, IconProgressAbortRequested, IconProgressCompleted, IconProgressNotCompleted, IconProgressReady, IconProgressRunning, IconProgressStarted, IconRefresh, IconReset, IconRecentlyViewed, IconRight, IconSave, IconSearch, IconSelected, IconSettings, IconShow, IconSort, IconStop, IconStopwatch, IconSuccess, IconAlarmPlus, IconHourglass, IconNone, IconNotStarted, IconProgress, IconSuccessCirlce, IconSuitcase, IconSupport, IconUndo, IconUnFreeze, IconUp, IconUpdate, IconUpload, IconUser, IconUserProfile, IconVisible, IconWarning, IconWeb, IconWifi, IconWindowMaximize, IconWindowMinimize, IconWorkflow, IconWorkspace, IconUserGroup, IconUserGroupOutline, IconUserLevelMember, IconUserLevelAdministrator, IconUserLevelSystemAdministrator, IconUserLevelAutonomousAdministrator, IconDraggabledots, IconRelation, IconEasy, IconSum, IconDisk, IconDataList, IconPalette, IconFormatPageSplit, IconPaste, IconFileSearch, IconStar, IconStarRemove, IconSearchCheck, IconLightningFill, IconArrowUnsorted, IconArrowSortedUp, IconArrowSortedDown, IconConvertFilePdf, IconExportTo, IconSharedDcmt, IconShare, IconBatchUpdate, IconCheckFile, IconStatistics, IconSubstFile, IconAdvanced, IconSync, IconSavedQuery, IconSignature, IconSignaturePencil, IconRecursiveOps, IconCheckIn, IconTree, IconGrid, IconList, IconFolder, IconFolderOpen, IconFactory, IconTest, IconCheck, IconUncheck, IconSortAsc, IconSortDesc, IconRoundFileUpload, IconSortAscLetters, IconSortDescLetters, IconRotate, IconSortAscNumbers, IconSortDescNumbers, IconSortAscClock, IconSortDescClock, IconLayerGroup, IconBell, IconBellCheck, IconBellOutline, IconBellCheckOutline, IconEnvelopeOpenText, IconChangeUser, IconUserCheck, IconRelationManyToMany, IconRelationOneToMany, IconUserExpired, IconKey, IconZoomInLinear, IconZoomOutLinear, IconMenuCAWorkingGroups, IconCADossier, IconMenuCACaseflow, IconMenuDashboard, IconMenuCAAreas, IconMenuTask, IconMenuSearch, IconMenuFullTextSearch, IconMenuFavourite, IconSAPLogin, IconSAPLogin2, IconView, IconNewSignature, IconScanner };
|
|
710
|
+
export { Icon123, IconABC, IconAccessPoint, IconAddressBook, IconSignCert, IconServerService, IconActivity, IconActivityLog, IconAdd, IconAddCircleOutline, IconAll, IconApply, IconApplyAndClose, IconArchive, IconArchiveDoc, IconArrowDown, IconArrowLeft, IconArrowRight, IconArrowUp, IconAtSign, IconAttachment, IconAutoConfig, IconBackward, IconBasket, IconBoard, IconBoxArchiveIn, IconBxInfo, IconBxLock, IconCalendar, IconCloseCircle, IconCloseOutline, IconCloud, IconCircleInfo, IconClear, IconColumns, IconCommand, IconCopy, IconCount, IconCrown, IconDashboard, IconDcmtType, IconDcmtTypeOnlyMetadata, IconDcmtTypeSys, IconDelete, IconDetails, IconDown, IconDownload, IconDotsVerticalCircleOutline, IconDuplicate, IconEdit, IconEqual, IconEqualNot, IconEraser, IconExpandRight, IconExport, IconFastBackward, IconFoldeAdd, IconFolderSearch, IconFolderZip, IconFastForward, IconFastSearch, IconFileDots, IconFilter, IconForceStop, IconForward, IconFreeze, IconFreeSearch, IconGreaterThan, IconGreaterThanOrEqual, IconHistory, IconImport, IconTag, IconInfo, IconInsertAbove, IconInsertBelow, IconHeart, IconHide, IconLanguage, IconLeft, IconLessThan, IconLessThanOrEqual, IconLock, IconLockClosed, IconLogin, IconLink, IconLogout, IconMail, IconMapping, IconMic, IconMenuHorizontal, IconMenuKebab, IconMenuVertical, IconMetadata, IconMetadata_Computed, IconMetadata_DataList, IconMetadata_Date, IconMetadata_DynamicDataList, IconMetadata_Numerator, IconMetadata_Numeric, IconMetadata_Special, IconMetadata_Text, IconMetadata_User, IconMonitor, IconOpenInNew, IconNotification, IconPassword, IconPencil, IconPlatform, IconPlay, IconPreview, IconPrinter, IconPrintOutline, IconProcess, IconProgressAbortRequested, IconProgressCompleted, IconProgressNotCompleted, IconProgressReady, IconProgressRunning, IconProgressStarted, IconRefresh, IconReset, IconRecentlyViewed, IconRight, IconSave, IconSearch, IconSelected, IconSettings, IconShow, IconSort, IconStop, IconStopwatch, IconSuccess, IconAlarmPlus, IconHourglass, IconNone, IconNotStarted, IconProgress, IconSuccessCirlce, IconSuitcase, IconSupport, IconUndo, IconUnFreeze, IconUp, IconUpdate, IconUpload, IconUser, IconUserProfile, IconVisible, IconWarning, IconWarningCircle, IconWeb, IconWifi, IconWindowMaximize, IconWindowMinimize, IconWorkflow, IconWorkspace, IconUserGroup, IconUserGroupOutline, IconUserLevelMember, IconUserLevelAdministrator, IconUserLevelSystemAdministrator, IconUserLevelAutonomousAdministrator, IconDraggabledots, IconRelation, IconEasy, IconSum, IconDisk, IconDataList, IconPalette, IconFormatPageSplit, IconPaste, IconFileSearch, IconStar, IconStarRemove, IconSearchCheck, IconLightningFill, IconArrowUnsorted, IconArrowSortedUp, IconArrowSortedDown, IconConvertFilePdf, IconExportTo, IconSharedDcmt, IconShare, IconBatchUpdate, IconCheckFile, IconStatistics, IconSubstFile, IconAdvanced, IconSync, IconSavedQuery, IconSignature, IconSignaturePencil, IconRecursiveOps, IconCheckIn, IconTree, IconGrid, IconList, IconFolder, IconFolderOpen, IconFactory, IconTest, IconCheck, IconUncheck, IconSortAsc, IconSortDesc, IconRoundFileUpload, IconSortAscLetters, IconSortDescLetters, IconRotate, IconSortAscNumbers, IconSortDescNumbers, IconSortAscClock, IconSortDescClock, IconLayerGroup, IconBell, IconBellCheck, IconBellOutline, IconBellCheckOutline, IconEnvelopeOpenText, IconChangeUser, IconUserCheck, IconRelationManyToMany, IconRelationOneToMany, IconUserExpired, IconKey, IconZoomInLinear, IconZoomOutLinear, IconMenuCAWorkingGroups, IconCADossier, IconMenuCACaseflow, IconMenuDashboard, IconMenuCAAreas, IconMenuTask, IconMenuSearch, IconMenuFullTextSearch, IconMenuFavourite, IconSAPLogin, IconSAPLogin2, IconView, IconNewSignature, IconScanner };
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import React from "react";
|
|
2
1
|
interface TMPdfViewerProps {
|
|
3
2
|
pdfBlob: Blob;
|
|
4
3
|
title?: string;
|
|
5
4
|
isResizingActive?: boolean;
|
|
6
5
|
enableFitToWidth?: boolean;
|
|
7
6
|
}
|
|
8
|
-
declare const TMPdfViewer: (props: TMPdfViewerProps) =>
|
|
7
|
+
declare const TMPdfViewer: (props: TMPdfViewerProps) => import("react/jsx-runtime").JSX.Element;
|
|
9
8
|
export default TMPdfViewer;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
2
|
interface TMToppyMessageProps {
|
|
3
3
|
message: ReactNode;
|
|
4
4
|
titleTooltip?: string;
|
|
5
5
|
maxWidth?: string;
|
|
6
6
|
}
|
|
7
|
-
declare const TMToppyMessage: (props: TMToppyMessageProps) =>
|
|
7
|
+
declare const TMToppyMessage: (props: TMToppyMessageProps) => import("react/jsx-runtime").JSX.Element;
|
|
8
8
|
export default TMToppyMessage;
|
package/lib/helper/TMUtils.d.ts
CHANGED
|
@@ -24,7 +24,7 @@ export declare const getFullFileExtension: (fileName: string, depth?: number) =>
|
|
|
24
24
|
* Es: pdf.p7m.tsd → pdf, pdf.p7m → pdf, pdf → pdf
|
|
25
25
|
*/
|
|
26
26
|
export declare const getBaseExtension: (ext: string) => string;
|
|
27
|
-
export declare const getFileIcon: (fileExtension: string | undefined, fileCount: number | undefined, tooltipContent?: JSX.Element | string) =>
|
|
27
|
+
export declare const getFileIcon: (fileExtension: string | undefined, fileCount: number | undefined, tooltipContent?: JSX.Element | string) => import("react/jsx-runtime").JSX.Element;
|
|
28
28
|
export declare function formatBytes(bytes: number | undefined, decimalPlaces?: number): string;
|
|
29
29
|
export interface RowData {
|
|
30
30
|
[key: string]: string | number | null;
|
|
@@ -52,15 +52,9 @@ interface TabItemProps {
|
|
|
52
52
|
$isSelected: boolean;
|
|
53
53
|
$activeGradient?: string;
|
|
54
54
|
}
|
|
55
|
-
export declare const StyledTabItem: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
export declare const StyledTabIcon: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Merged<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>, HTMLElement>, "style"> & {
|
|
59
|
-
style?: React.CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
|
|
60
|
-
}, TabItemProps>> & string;
|
|
61
|
-
export declare const TMCountBadge: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "style"> & {
|
|
62
|
-
style?: React.CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
|
|
63
|
-
}> & string;
|
|
55
|
+
export declare const StyledTabItem: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof TabItemProps> & TabItemProps, never> & Partial<Pick<import("styled-components").FastOmit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, keyof TabItemProps> & TabItemProps, never>>> & string;
|
|
56
|
+
export declare const StyledTabIcon: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>, HTMLElement>, keyof TabItemProps> & TabItemProps, never> & Partial<Pick<import("styled-components").FastOmit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>, HTMLElement>, keyof TabItemProps> & TabItemProps, never>>> & string;
|
|
57
|
+
export declare const TMCountBadge: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never> & Partial<Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>>> & string;
|
|
64
58
|
export declare const PDGS_COLORS: {
|
|
65
59
|
DOSSIER: string;
|
|
66
60
|
DOCUMENT: string;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { AccessLevels, CICO_MetadataNames, SDK_Globals, SystemMIDsAsNumber } from "@topconsultnpm/sdk-ts";
|
|
3
3
|
import TMTooltip from "../components/base/TMTooltip";
|
|
4
|
-
import {
|
|
4
|
+
import { Globalization, removeDcmtsFileCache, SDKUI_Globals, SDKUI_Localizator } from "./index";
|
|
5
5
|
import { getBaseExtension, getFullFileExtension } from "./TMUtils";
|
|
6
6
|
import { DownloadTypes } from "../ts/types";
|
|
7
7
|
const findCheckOutUserName = (users, checkoutUserId) => {
|
|
@@ -69,8 +69,7 @@ export const cicoDownloadFilesCallback = async (sources, checkout, downloadDcmts
|
|
|
69
69
|
updateCicoCheckoutStorageItem(newItem, source.type, "addOrUpdate");
|
|
70
70
|
}
|
|
71
71
|
const cacheKey = `${tid}-${did}`;
|
|
72
|
-
|
|
73
|
-
removeDcmtsFileCache(cacheKey);
|
|
72
|
+
removeDcmtsFileCache(cacheKey);
|
|
74
73
|
files.push({ TID: tid, DID: did, FILEEXT: ext, fileName });
|
|
75
74
|
}
|
|
76
75
|
});
|
package/lib/helper/helpers.d.ts
CHANGED
|
@@ -77,7 +77,7 @@ export { openApps, calcResponsiveDirection, calcResponsiveSizes, taskModalSizes,
|
|
|
77
77
|
export declare function moduleVersion(module: moduleTypes): string;
|
|
78
78
|
export declare function buildtype(module: moduleTypes): string;
|
|
79
79
|
export declare const highlightText: (text: string, searchValue: string) => JSX.Element;
|
|
80
|
-
export declare const renderHighlightedText: (text: string, searchText: string, isSelected: boolean) => string | (string |
|
|
80
|
+
export declare const renderHighlightedText: (text: string, searchText: string, isSelected: boolean) => string | (string | import("react/jsx-runtime").JSX.Element)[];
|
|
81
81
|
export declare function versionAndBuildtypeInfo(module: moduleTypes): string;
|
|
82
82
|
export declare const getListMaxItems: (deviceType: DeviceType | undefined) => number;
|
|
83
83
|
export declare const svgToString: (icon: React.ReactElement) => string;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { MetadataDescriptor, MetadataDataDomains, SystemMIDsAsNumber, MetadataDataTypes, QueryDescriptor, SelectItem, DataTableDescriptor, LayoutModes, QueryOperators, SavedQueryDescriptor } from '@topconsultnpm/sdk-ts';
|
|
1
|
+
import { MetadataDescriptor, MetadataDataDomains, SystemMIDsAsNumber, MetadataDataTypes, QueryDescriptor, SelectItem, DataTableDescriptor, LayoutModes, QueryOperators, SavedQueryDescriptor, DcmtTypeDescriptor, SearchResultDescriptor } from '@topconsultnpm/sdk-ts';
|
|
2
2
|
import { MetadataValueDescriptorEx } from '../ts';
|
|
3
3
|
export type TID_Alias = {
|
|
4
4
|
tid: number;
|
|
@@ -8,7 +8,7 @@ export declare const getTIDsByQd: (qd: QueryDescriptor | undefined) => TID_Alias
|
|
|
8
8
|
/** Restituisce i tipi documento (con metadati) referenziati da qd.
|
|
9
9
|
* Con refreshCache = true i descrittori vengono riletti dal server, così la lista dei metadati
|
|
10
10
|
* recepisce quelli aggiunti o rimossi dopo il popolamento della cache. */
|
|
11
|
-
export declare const getDcmtTypesByQdAsync: (qd: QueryDescriptor, refreshCache?: boolean) => Promise<
|
|
11
|
+
export declare const getDcmtTypesByQdAsync: (qd: QueryDescriptor, refreshCache?: boolean) => Promise<DcmtTypeDescriptor[]>;
|
|
12
12
|
export declare const displayMetadataValue: (md: MetadataDescriptor | undefined, value: string | undefined, valueEmptyDescription?: string) => string;
|
|
13
13
|
export declare const IsParametricQuery: (qd: QueryDescriptor | undefined) => boolean;
|
|
14
14
|
export declare const addHiddenSelectItem: (select: SelectItem[], tid: number | undefined, mid: SystemMIDsAsNumber) => void;
|
|
@@ -20,5 +20,18 @@ export declare const getWorkItemSetIDAsync: (vid: number, did: number) => Promis
|
|
|
20
20
|
/** Id assegnato alla ricerca di sistema con tutti i documenti: non è in cache, va ricostruita a runtime con getSysAllDcmtsSQD */
|
|
21
21
|
export declare const SYS_ALL_DCMTS_SQD_ID = 1;
|
|
22
22
|
export declare const getSysAllDcmtsSQD: (tid: number | undefined, easyOr: boolean) => Promise<SavedQueryDescriptor>;
|
|
23
|
+
/** MID dei metadati con tracciatura "Mostra file" del tipo documento */
|
|
24
|
+
export declare const getTraceShowFileMids: (dtd: DcmtTypeDescriptor | undefined) => number[];
|
|
25
|
+
/**
|
|
26
|
+
* Legge solo i metadati indicati del documento con una ricerca mirata.
|
|
27
|
+
* Se la ricerca fallisce o non li restituisce tutti (es. permessi), ripiega sulla GetMetadata completa.
|
|
28
|
+
* Restituisce null se il documento non rientra più nel tipo documento (es. vista filtrata sui metadati aggiornati).
|
|
29
|
+
*/
|
|
30
|
+
export declare const getDcmtMetadataValuesAsync: (tid: number, did: number, mids: number[]) => Promise<SearchResultDescriptor | null | undefined>;
|
|
31
|
+
/** Testo dell'avviso quando i metadati "Mostra file" non si aggiornano: con più metadati i nomi vanno nel tooltip */
|
|
32
|
+
export declare const getTraceShowFileNotUpdatedMessage: (dtd: DcmtTypeDescriptor | undefined) => {
|
|
33
|
+
message: string;
|
|
34
|
+
tooltip: string;
|
|
35
|
+
};
|
|
23
36
|
export declare const searchResultToMetadataValues: (tid: number | undefined, dtd: DataTableDescriptor | undefined, rows: string[], mids: number[], metadata: MetadataDescriptor[], layoutMode: LayoutModes, isReadOnlyOrigin?: boolean) => MetadataValueDescriptorEx[];
|
|
24
37
|
export declare const handleArchiveVisibility: (md: MetadataDescriptor) => boolean;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AccessLevels, MetadataDataDomains, DcmtTypeListCacheService, SystemMIDsAsNumber, MetadataDataTypes, QueryDescriptor, QueryFunctions, SelectItem, SelectItemVisibilities, FromItem, LayoutModes, QueryOperators, SavedQueryDescriptor, SearchEngine, WhereItem, OrderByItem, SDK_Globals, AppModules, SystemTIDs, WorkItemMetadataNames, PlatformObjectValidator } from '@topconsultnpm/sdk-ts';
|
|
1
|
+
import { AccessLevels, MetadataDataDomains, DcmtTypeListCacheService, SystemMIDsAsNumber, MetadataDataTypes, QueryDescriptor, QueryFunctions, SelectItem, SelectItemVisibilities, FromItem, LayoutModes, QueryOperators, SavedQueryDescriptor, SearchEngine, WhereItem, OrderByItem, SDK_Globals, AppModules, SystemTIDs, WorkItemMetadataNames, PlatformObjectValidator, MetadataSpecials } from '@topconsultnpm/sdk-ts';
|
|
2
2
|
import { DateDisplayTypes, Globalization } from './Globalization';
|
|
3
3
|
import { ChronologyMIDs, DraftsMIDs, MetadataValueDescriptorEx } from '../ts';
|
|
4
4
|
import { SDKUI_Localizator } from './SDKUI_Localizator';
|
|
@@ -265,6 +265,57 @@ export const getSysAllDcmtsSQD = async (tid, easyOr) => {
|
|
|
265
265
|
sqd.qd = await getQD(tid, easyOr, SDKUI_Globals.userSettings.searchSettings?.maxDcmtsToBeReturned ?? 1000);
|
|
266
266
|
return sqd;
|
|
267
267
|
};
|
|
268
|
+
/** MID dei metadati con tracciatura "Mostra file" del tipo documento */
|
|
269
|
+
export const getTraceShowFileMids = (dtd) => dtd?.metadata?.filter(md => md.special === MetadataSpecials.Trace_ShowFile && md.id !== undefined).map(md => md.id) ?? [];
|
|
270
|
+
/**
|
|
271
|
+
* Legge solo i metadati indicati del documento con una ricerca mirata.
|
|
272
|
+
* Se la ricerca fallisce o non li restituisce tutti (es. permessi), ripiega sulla GetMetadata completa.
|
|
273
|
+
* Restituisce null se il documento non rientra più nel tipo documento (es. vista filtrata sui metadati aggiornati).
|
|
274
|
+
*/
|
|
275
|
+
export const getDcmtMetadataValuesAsync = async (tid, did, mids) => {
|
|
276
|
+
const searchEngine = SDK_Globals.tmSession?.NewSearchEngine();
|
|
277
|
+
try {
|
|
278
|
+
let qd = SearchEngine.NewQueryDescriptor();
|
|
279
|
+
if (qd.from) {
|
|
280
|
+
qd.from.tid = tid;
|
|
281
|
+
qd.select = mids.map(mid => {
|
|
282
|
+
let si = new SelectItem();
|
|
283
|
+
si.tid = tid;
|
|
284
|
+
si.mid = mid;
|
|
285
|
+
si.visibility = SelectItemVisibilities.Visible;
|
|
286
|
+
return si;
|
|
287
|
+
});
|
|
288
|
+
let wiDID = new WhereItem();
|
|
289
|
+
wiDID.tid = tid;
|
|
290
|
+
wiDID.mid = SystemMIDsAsNumber.DID;
|
|
291
|
+
wiDID.operator = QueryOperators.Equal;
|
|
292
|
+
wiDID.value1 = did.toString();
|
|
293
|
+
wiDID.or = false;
|
|
294
|
+
wiDID.leftBrackets = '(';
|
|
295
|
+
wiDID.rightBrackets = ')';
|
|
296
|
+
qd.where = [wiDID];
|
|
297
|
+
const result = await searchEngine?.SearchByIDAsync(qd);
|
|
298
|
+
if (result && mids.every(mid => result.selectMIDs?.includes(mid))) {
|
|
299
|
+
// Ricerca riuscita ma senza righe: il documento è uscito dalla vista, GetMetadata andrebbe in errore
|
|
300
|
+
return result.dtdResult?.rows?.[0] ? result : null;
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
catch (e) {
|
|
305
|
+
console.warn('Ricerca mirata dei metadati non riuscita, uso GetMetadata:', e);
|
|
306
|
+
}
|
|
307
|
+
return await searchEngine?.GetMetadataAsync(tid, did, true);
|
|
308
|
+
};
|
|
309
|
+
/** Testo dell'avviso quando i metadati "Mostra file" non si aggiornano: con più metadati i nomi vanno nel tooltip */
|
|
310
|
+
export const getTraceShowFileNotUpdatedMessage = (dtd) => {
|
|
311
|
+
const names = (dtd?.metadata ?? [])
|
|
312
|
+
.filter(md => md.special === MetadataSpecials.Trace_ShowFile && md.id !== undefined)
|
|
313
|
+
.map(md => ((SDK_Globals.useLocalizedName ? md.nameLoc : md.name) ?? md.name ?? md.nameLoc ?? '').toString());
|
|
314
|
+
const message = names.length === 1
|
|
315
|
+
? SDKUI_Localizator.DcmtNoLongerAvailable_MetadataNotUpdated.replace('{{0}}', names[0])
|
|
316
|
+
: SDKUI_Localizator.DcmtNoLongerAvailable_MetadataNotUpdatedMulti.replace('{{0}}', String(names.length));
|
|
317
|
+
return { message, tooltip: names.length === 1 ? message : names.join('\n') };
|
|
318
|
+
};
|
|
268
319
|
export const searchResultToMetadataValues = (tid, dtd, rows, mids, metadata, layoutMode, isReadOnlyOrigin = false) => {
|
|
269
320
|
if (!metadata || metadata.length === 0) {
|
|
270
321
|
return [];
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { useCallback, useEffect, useState } from 'react';
|
|
2
|
-
import { SDK_Globals } from '@topconsultnpm/sdk-ts';
|
|
2
|
+
import { CF_WorkItemCategories, SDK_Globals } from '@topconsultnpm/sdk-ts';
|
|
3
3
|
import { CaseFlowService } from '../services/caseflow/CaseFlowService';
|
|
4
|
-
import { getWorkItemTargetDoc,
|
|
4
|
+
import { getWorkItemTargetDoc, isSignatureWorkItem } from '../services/caseflow/caseFlowWorkItemUtils';
|
|
5
|
+
import { isFinalActionSync } from '../services/caseflow/caseFlowNameCache';
|
|
5
6
|
const CASEFLOW_APPROVE_CHANGED_EVENT = 'onCaseFlowApproveChange';
|
|
6
7
|
let cache = [];
|
|
7
8
|
let inFlight;
|
|
@@ -16,10 +17,27 @@ const notifyChanged = () => {
|
|
|
16
17
|
return;
|
|
17
18
|
window.dispatchEvent(new CustomEvent(CASEFLOW_APPROVE_CHANGED_EVENT));
|
|
18
19
|
};
|
|
20
|
+
/**
|
|
21
|
+
* Categorie che si completano DAL DOCUMENTO: firmarlo, approvarlo, prenderne
|
|
22
|
+
* visione. Le altre si completano nella pratica, perché il Toppy del form offre
|
|
23
|
+
* solo Approva/Rifiuta e non saprebbe fare il resto:
|
|
24
|
+
* - Caricamento manuale (Upload): il commento è obbligatorio (TMC-2822);
|
|
25
|
+
* - Generica / caricamento automatico: si chiude da sola quando il documento
|
|
26
|
+
* viene agganciato;
|
|
27
|
+
* - Completamento dati: vanno inseriti i valori dei metadati;
|
|
28
|
+
* - Verifica bloccante: sblocca o interrompe la pratica;
|
|
29
|
+
* - Richiesta informazioni: ha una risposta, non un esito.
|
|
30
|
+
*/
|
|
31
|
+
const DOCUMENT_CATEGORIES = new Set([
|
|
32
|
+
CF_WorkItemCategories.Approval,
|
|
33
|
+
CF_WorkItemCategories.Signature,
|
|
34
|
+
CF_WorkItemCategories.Acknowledgment,
|
|
35
|
+
]);
|
|
19
36
|
/**
|
|
20
37
|
* Ricarica la cache: i workitem pendenti dell'utente, risolti sul documento su
|
|
21
|
-
* cui lavorano.
|
|
22
|
-
*
|
|
38
|
+
* cui lavorano. Restano fuori le categorie che non si completano dal documento
|
|
39
|
+
* (vedi DOCUMENT_CATEGORIES), le azioni che chiudono la pratica e i workitem
|
|
40
|
+
* senza documento.
|
|
23
41
|
*/
|
|
24
42
|
const reload = async () => {
|
|
25
43
|
const userId = SDK_Globals.tmSession?.SessionDescr?.userID;
|
|
@@ -30,8 +48,7 @@ const reload = async () => {
|
|
|
30
48
|
const groups = await CaseFlowService.getMyPendingWorkItems(userId);
|
|
31
49
|
const resolved = [];
|
|
32
50
|
for (const { caseflow, workItems } of groups) {
|
|
33
|
-
|
|
34
|
-
const relevant = workItems.filter(wi => !isMoreInfoWorkItem(wi));
|
|
51
|
+
const relevant = workItems.filter(wi => DOCUMENT_CATEGORIES.has(wi.workItemCategory));
|
|
35
52
|
if (relevant.length === 0)
|
|
36
53
|
continue;
|
|
37
54
|
// Il TID dell'azione è autorato sul TEMPLATE e non materializzato
|
|
@@ -47,6 +64,14 @@ const reload = async () => {
|
|
|
47
64
|
instance = (await CaseFlowService.getCaseflow(instance.id, instance.cftid)) ?? instance;
|
|
48
65
|
}
|
|
49
66
|
for (const wi of relevant) {
|
|
67
|
+
// Un'azione che chiude la pratica richiede il motivo, che il Toppy del
|
|
68
|
+
// documento non chiede: si completa nella pratica. Il template è già
|
|
69
|
+
// risolto qui sopra, quindi `isFinal` è noto.
|
|
70
|
+
// La Firma resta: firmare si può solo da qui (l'ospite non ha altra
|
|
71
|
+
// strada). Fallirà il solo completamento automatico, che l'utente fa
|
|
72
|
+
// poi nella pratica scrivendo il motivo, con la firma già apposta.
|
|
73
|
+
if (!isSignatureWorkItem(wi) && isFinalActionSync(caseflow.cftid, wi.actionID))
|
|
74
|
+
continue;
|
|
50
75
|
const target = getWorkItemTargetDoc(instance, wi);
|
|
51
76
|
if (!target)
|
|
52
77
|
continue;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { useCallback, useMemo, useState } from 'react';
|
|
2
|
-
import { cicoDownloadFilesCallback,
|
|
2
|
+
import { cicoDownloadFilesCallback, getCicoDownloadFileName, getExceptionMessage, removeDcmtsFileCache, renderCicoCheckInContent, SDKUI_Globals, SDKUI_Localizator, updateCicoCheckoutStorageItem, validateCicoFileName } from '../helper';
|
|
3
3
|
import { ButtonNames, DeviceType, ShowAlert, TMMessageBoxManager, TMResultManager, TMWaitPanelManager, useDeviceType } from '../components';
|
|
4
4
|
import { ResultTypes, SDK_Globals } from '@topconsultnpm/sdk-ts';
|
|
5
5
|
let abortController = new AbortController();
|
|
@@ -166,8 +166,7 @@ export const useCheckInOutOperations = (props) => {
|
|
|
166
166
|
await onRefreshAsync?.(dcmt.TID, dcmt.DID, true);
|
|
167
167
|
// remove file from preview cache to force refresh with the new checked-in file
|
|
168
168
|
const cacheKey = `${dcmt.TID}-${dcmt.DID}`;
|
|
169
|
-
|
|
170
|
-
removeDcmtsFileCache(cacheKey);
|
|
169
|
+
removeDcmtsFileCache(cacheKey);
|
|
171
170
|
await onRefreshPreview();
|
|
172
171
|
triggerCommentOnFileAdd([dcmt.DID]);
|
|
173
172
|
}
|
|
@@ -121,6 +121,8 @@ export const useDcmtOperations = () => {
|
|
|
121
121
|
if (waitPanelRef.current === panel)
|
|
122
122
|
waitPanelRef.current = null;
|
|
123
123
|
};
|
|
124
|
+
/** Messaggio per il popover delle pill del pannello: il DID dice a quale documento si riferisce. */
|
|
125
|
+
const panelMessage = (dcmt, message) => `DID ${dcmt.DID}: ${message}`;
|
|
124
126
|
// Il pannello vive fuori dall'albero del chiamante: allo smontaggio va chiuso a mano.
|
|
125
127
|
useEffect(() => () => { waitPanelRef.current?.close(); waitPanelRef.current = null; }, []);
|
|
126
128
|
const { OpenFileDialog } = useFileDialog();
|
|
@@ -362,8 +364,9 @@ export const useDcmtOperations = () => {
|
|
|
362
364
|
// continuare a scaricare dietro al dialogo.
|
|
363
365
|
await panel.waitWhilePaused();
|
|
364
366
|
if (abortController.signal.aborted) {
|
|
365
|
-
|
|
366
|
-
|
|
367
|
+
const description = SDKUI_Localizator.OperationDcmtsInterrupted.replaceParams(completed);
|
|
368
|
+
results.push({ rowIndex: i, id1: dcmts[i].TID, id2: dcmts[i].DID, resultType: ResultTypes.WARNING, description });
|
|
369
|
+
panel.warning(1, description);
|
|
367
370
|
break;
|
|
368
371
|
}
|
|
369
372
|
try {
|
|
@@ -371,8 +374,9 @@ export const useDcmtOperations = () => {
|
|
|
371
374
|
panel.ok();
|
|
372
375
|
}
|
|
373
376
|
catch (ex) {
|
|
374
|
-
|
|
375
|
-
|
|
377
|
+
const description = getExceptionMessage(ex);
|
|
378
|
+
results.push({ rowIndex: i, id1: dcmts[i].TID, id2: dcmts[i].DID, resultType: ResultTypes.ERROR, description });
|
|
379
|
+
panel.error(1, panelMessage(dcmts[i], description));
|
|
376
380
|
const err = ex;
|
|
377
381
|
if (err.name === 'CanceledError') {
|
|
378
382
|
ShowAlert({ message: err.message, mode: 'warning', duration: 3000, title: 'Abort' });
|
|
@@ -421,7 +425,7 @@ export const useDcmtOperations = () => {
|
|
|
421
425
|
// Download the selected files
|
|
422
426
|
for (let i = 0; i < selectedFiles.length; i++) {
|
|
423
427
|
if (abortController.signal.aborted) {
|
|
424
|
-
result.push({ rowIndex: i, id1: inputDcmts[i].TID, id2: inputDcmts[i].DID, resultType: ResultTypes.WARNING, description:
|
|
428
|
+
result.push({ rowIndex: i, id1: inputDcmts[i].TID, id2: inputDcmts[i].DID, resultType: ResultTypes.WARNING, description: SDKUI_Localizator.OperationItemsInterrupted.replaceParams(i) });
|
|
425
429
|
break;
|
|
426
430
|
}
|
|
427
431
|
let fd = files.find(f => f.name === selectedFiles[i]);
|
|
@@ -538,16 +542,16 @@ export const useDcmtOperations = () => {
|
|
|
538
542
|
for (let i = 0; i < inputDcmts.length; i++) {
|
|
539
543
|
await panel.waitWhilePaused();
|
|
540
544
|
if (abortController.signal.aborted) {
|
|
541
|
-
|
|
542
|
-
|
|
545
|
+
const description = SDKUI_Localizator.OperationDcmtsInterrupted.replaceParams(i);
|
|
546
|
+
result.push({ rowIndex: i, id1: inputDcmts[i].TID, id2: inputDcmts[i].DID, resultType: ResultTypes.WARNING, description });
|
|
547
|
+
panel.warning(1, description);
|
|
543
548
|
break;
|
|
544
549
|
}
|
|
545
550
|
try {
|
|
546
551
|
if (isBatch)
|
|
547
552
|
panel.setSubtitle(`${SDKUI_Localizator.FileUpload} ${i + 1} di ${inputDcmts.length}`);
|
|
548
553
|
const cacheKey = `${inputDcmts[i].TID}-${inputDcmts[i].DID}`;
|
|
549
|
-
|
|
550
|
-
removeDcmtsFileCache(cacheKey);
|
|
554
|
+
removeDcmtsFileCache(cacheKey);
|
|
551
555
|
let ue = SDK_Globals.tmSession?.NewUpdateEngineByID();
|
|
552
556
|
if (ue) {
|
|
553
557
|
ue.TID = inputDcmts[i].TID;
|
|
@@ -566,8 +570,9 @@ export const useDcmtOperations = () => {
|
|
|
566
570
|
panel.ok();
|
|
567
571
|
}
|
|
568
572
|
catch (ex) {
|
|
569
|
-
|
|
570
|
-
|
|
573
|
+
const description = getExceptionMessage(ex);
|
|
574
|
+
result.push({ rowIndex: i, id1: inputDcmts[i].TID, id2: inputDcmts[i].DID, resultType: ResultTypes.ERROR, description });
|
|
575
|
+
panel.error(1, panelMessage(inputDcmts[i], description));
|
|
571
576
|
const err = ex;
|
|
572
577
|
if (err.name === 'CanceledError') {
|
|
573
578
|
ShowAlert({ message: err.message, mode: 'warning', duration: 3000, title: 'Abort' });
|
|
@@ -684,8 +689,9 @@ export const useDcmtOperations = () => {
|
|
|
684
689
|
for (let i = 0; i < inputDcmts.length; i++) {
|
|
685
690
|
await panel.waitWhilePaused();
|
|
686
691
|
if (abortController.signal.aborted) {
|
|
687
|
-
|
|
688
|
-
|
|
692
|
+
const description = SDKUI_Localizator.OperationDcmtsInterrupted.replaceParams(i);
|
|
693
|
+
result.push({ rowIndex: i, id1: inputDcmts[i].TID, id2: inputDcmts[i].DID, resultType: ResultTypes.WARNING, description });
|
|
694
|
+
panel.warning(1, description);
|
|
689
695
|
break;
|
|
690
696
|
}
|
|
691
697
|
panel.setSubtitle(`Documento ${i + 1} di ${inputDcmts.length}`);
|
|
@@ -793,6 +799,7 @@ export const useDcmtOperations = () => {
|
|
|
793
799
|
const importWarnings = await importCertificatesAsync(inputDcmts[i], i, fetchRemoteCertificates, abortController.signal);
|
|
794
800
|
if (importWarnings) {
|
|
795
801
|
result.push(...importWarnings);
|
|
802
|
+
importWarnings.forEach(w => panel.warning(1, panelMessage(inputDcmts[i], w.description ?? '')));
|
|
796
803
|
}
|
|
797
804
|
break;
|
|
798
805
|
}
|
|
@@ -803,12 +810,13 @@ export const useDcmtOperations = () => {
|
|
|
803
810
|
catch (ex) {
|
|
804
811
|
let msg = getExceptionMessage(ex);
|
|
805
812
|
if (msg.startsWith('WARNING#')) {
|
|
806
|
-
|
|
807
|
-
|
|
813
|
+
const description = msg.replace('WARNING#', '');
|
|
814
|
+
result.push({ rowIndex: i, id1: inputDcmts[i].TID, id2: inputDcmts[i].DID, resultType: ResultTypes.WARNING, description });
|
|
815
|
+
panel.warning(1, panelMessage(inputDcmts[i], description));
|
|
808
816
|
}
|
|
809
817
|
else {
|
|
810
818
|
result.push({ rowIndex: i, id1: inputDcmts[i].TID, id2: inputDcmts[i].DID, resultType: ResultTypes.ERROR, description: msg });
|
|
811
|
-
panel.error();
|
|
819
|
+
panel.error(1, panelMessage(inputDcmts[i], msg));
|
|
812
820
|
}
|
|
813
821
|
const err = ex;
|
|
814
822
|
if (err.name === 'CanceledError') {
|
|
@@ -3,6 +3,7 @@ import { DcmtTypeDescriptor, FileFormats, HomeBlogPost, LayoutDescriptor, Layout
|
|
|
3
3
|
import { IColumnProps } from "devextreme-react/cjs/data-grid";
|
|
4
4
|
import { TMContextMenuItemProps } from '../components/NewComponents/ContextMenu/types';
|
|
5
5
|
import { DcmtInfo, MetadataValueDescriptorEx, SearchResultContext, TaskContext, IGraphometricManagerProp } from "../ts";
|
|
6
|
+
import { TMSearchResultFloatingActionConfig } from "../components/features/search/TMSearchResultFloatingActionButton";
|
|
6
7
|
import { UseCheckInOutOperationsReturn } from "./useCheckInOutOperations";
|
|
7
8
|
import { UseDcmtOperationsReturn } from "./useDcmtOperations";
|
|
8
9
|
import { UseRelatedDocumentsReturn } from "./useRelatedDocuments";
|
|
@@ -64,6 +65,7 @@ export interface UIConfigProps {
|
|
|
64
65
|
inputDcmtFormLayoutMode?: LayoutModes;
|
|
65
66
|
graphometricManager?: IGraphometricManagerProp;
|
|
66
67
|
showSelector?: boolean;
|
|
68
|
+
floatingActionConfig?: TMSearchResultFloatingActionConfig;
|
|
67
69
|
}
|
|
68
70
|
export interface TasksProps {
|
|
69
71
|
allTasks?: Array<TaskDescriptor>;
|
|
@@ -21,7 +21,7 @@ import { useDcmtOperations } from "./useDcmtOperations";
|
|
|
21
21
|
import useFloatingBarPinnedItems from "./useFloatingBarPinnedItems";
|
|
22
22
|
import { useInputAttachmentsDialog, useInputCvtFormatDialog } from "./useInputDialog";
|
|
23
23
|
import { useRelatedDocuments } from "./useRelatedDocuments";
|
|
24
|
-
import { convertSearchResultDescriptorToFileItems,
|
|
24
|
+
import { convertSearchResultDescriptorToFileItems, getDcmtCicoStatus, getMoreInfoTasksForDocument, IconActivity, IconArchiveDetail, IconArchiveDoc, IconArchiveMaster, IconBatchUpdate, IconCheck, IconCheckFile, IconCheckIn, IconCircleInfo, IconCloseCircle, IconConvertFilePdf, IconCopy, IconCustom, IconDelete, IconDetailDcmts, IconDotsVerticalCircleOutline, IconDownload, IconEdit, IconExportTo, IconFileDots, IconHide, IconInfo, IconMenuCAArchive, IconMoveToFolder, IconPair, IconPin, IconPlatform, IconPreview, IconRelation, IconSearch, IconShare, IconSharedDcmt, IconShow, IconSignaturePencil, IconStar, IconSubstFile, IconUndo, IconUnpair, IconUserGroupOutline, isConvertibleToPdfExt, isPdfEditorAvailable, S4T_USER_REGISTRY_MASTER, SDKUI_Globals, SDKUI_Localizator, searchResultToMetadataValues, TMImageLibrary, IconCertificateBadge, IconArchiveMultipleDetailDocuments, isDraftsDTD } from '../helper';
|
|
25
25
|
import { isXMLFileExt } from "../helper/dcmtsHelper";
|
|
26
26
|
import TMCopyToFolderForm from "../components/features/documents/TMCopyToFolderForm";
|
|
27
27
|
import TMMergeToPdfForm from "../components/features/documents/TMMergeToPdfForm";
|
|
@@ -86,7 +86,7 @@ export const useDocumentOperations = (props) => {
|
|
|
86
86
|
const { dataColumns, dataSource, selectedRowKeys, } = exportData ?? {};
|
|
87
87
|
const { visibleItems = [], onRefreshSearchAsyncDatagrid, onRefreshDataRowsAsync, refreshFocusedDataRowAsync, onRefreshBlogDatagrid, onRefreshPreviewDatagrid, refreshOperationsTrigger = 0, onRefreshOperationsDatagrid, } = datagridUtility ?? {};
|
|
88
88
|
const { approvalVID, dcmtDataRowForCicoStatus, selectedDcmtSearchResultRelations, dcmtTIDHasDetailRelations = false, dcmtTIDHasMasterRelations = false, updateCurrentDcmt, onCloseDcmtForm, onRefreshBlogForm, onRefreshPreviewForm, taskFormDialogComponent, s4TViewerDialogComponent } = dcmtUtility ?? {};
|
|
89
|
-
const { floatingBarContainerRef, customButtonsLayout, workingGroupContext, openS4TViewer = false, openDcmtFormAsModal = false, showDcmtFormSidebar = true, allowFloatingBar = true, enablePinIcons = true, allowRelations = true, showTodoDcmtForm = false, showToppyDraggableHelpCenter = true, toppyHelpCenterUsePortal = false, editPdfForm = false, inputDcmtFormLayoutMode = LayoutModes.Update, graphometricManager, showSelector = false, } = uiConfig;
|
|
89
|
+
const { floatingBarContainerRef, customButtonsLayout, workingGroupContext, openS4TViewer = false, openDcmtFormAsModal = false, showDcmtFormSidebar = true, allowFloatingBar = true, enablePinIcons = true, allowRelations = true, showTodoDcmtForm = false, showToppyDraggableHelpCenter = true, toppyHelpCenterUsePortal = false, editPdfForm = false, inputDcmtFormLayoutMode = LayoutModes.Update, graphometricManager, showSelector = false, floatingActionConfig, } = uiConfig;
|
|
90
90
|
const { allTasks = [], getAllTasks, deleteTaskByIdsCallback, addTaskCallback, editTaskCallback } = tasks;
|
|
91
91
|
const {
|
|
92
92
|
// Refresh operations (data consistency)
|
|
@@ -464,9 +464,7 @@ export const useDocumentOperations = (props) => {
|
|
|
464
464
|
return;
|
|
465
465
|
const dcmts = selectedDcmtInfos.map(dcmt => {
|
|
466
466
|
const cacheKey = `${dcmt.TID}-${dcmt.DID}`;
|
|
467
|
-
|
|
468
|
-
removeDcmtsFileCache(cacheKey);
|
|
469
|
-
}
|
|
467
|
+
removeDcmtsFileCache(cacheKey);
|
|
470
468
|
return { ...dcmt, fileFormat: format };
|
|
471
469
|
});
|
|
472
470
|
const refreshFn = async () => {
|
|
@@ -1377,7 +1375,8 @@ export const useDocumentOperations = (props) => {
|
|
|
1377
1375
|
onTaskCreateRequest,
|
|
1378
1376
|
datagridUtility,
|
|
1379
1377
|
dcmtUtility,
|
|
1380
|
-
fetchRemoteCertificates
|
|
1378
|
+
fetchRemoteCertificates,
|
|
1379
|
+
floatingActionConfig
|
|
1381
1380
|
};
|
|
1382
1381
|
// Navigazione del master nell'archiviazione multipla dei dettagli: il modale prende il documento
|
|
1383
1382
|
// con il focus, quindi le frecce hanno senso solo senza selezione a checkbox, che ha la precedenza
|
|
@@ -1409,7 +1408,8 @@ export const useDocumentOperations = (props) => {
|
|
|
1409
1408
|
onTaskCreateRequest,
|
|
1410
1409
|
datagridUtility,
|
|
1411
1410
|
dcmtUtility,
|
|
1412
|
-
fetchRemoteCertificates
|
|
1411
|
+
fetchRemoteCertificates,
|
|
1412
|
+
floatingActionConfig
|
|
1413
1413
|
};
|
|
1414
1414
|
const renderDcmtOperations = (_jsxs(_Fragment, { children: [(showExportForm && searchResult && dataColumns && dataSource && selectedRowKeys) && (_jsx(TMDataGridExportForm, { dataColumns: dataColumns, dataSource: dataSource, selectedRowKeys: selectedRowKeys, onCloseExportForm: () => setShowExportForm(false), searchResult: searchResult })), _jsx(StyledMultiViewPanel, { $isVisible: isOpenDcmtForm && !isDcmtFormModal, children: ((isOpenDcmtForm && focusedItem?.TID !== undefined && focusedItem?.DID !== undefined) &&
|
|
1415
1415
|
_jsx(TMDcmtForm, { isModal: isDcmtFormModal, titleModal: dtd?.name ?? '', TID: focusedItem.TID, DID: focusedItem.DID, allowButtonsRefs: true, showTodoDcmtForm: showTodoDcmtForm, layoutMode: dcmtFormLayoutMode, count: visibleItems?.length, itemIndex: visibleItems ? visibleItems.findIndex(o => o.rowIndex === focusedItem?.rowIndex) + 1 : undefined, canNext: canNavigateHandler ? canNavigateHandler('next') : false, canPrev: canNavigateHandler ? canNavigateHandler('prev') : false, onNext: () => onNavigateHandler && onNavigateHandler('next'), onPrev: () => onNavigateHandler && onNavigateHandler('prev'), onClose: () => { (false); onDcmtFormOpenChange(false, LayoutModes.Update); }, onWFOperationCompleted: onWFOperationCompleted, onTaskCreateRequest: onTaskCreateRequest, onSavedAsyncCallback: onSavedAsyncCallback, openS4TViewer: openS4TViewer, onOpenS4TViewerRequest: onOpenS4TViewerRequest, editPdfForm: editPdfForm, onOpenPdfEditorRequest: onOpenPdfEditorRequest, openFileUploaderPdfEditor: openFileUploaderPdfEditor, onReferenceClick: onReferenceClick, allTasks: allTasks, getAllTasks: getAllTasks, deleteTaskByIdsCallback: deleteTaskByIdsCallback, addTaskCallback: addTaskCallback, editTaskCallback: editTaskCallback, handleNavigateToWGs: handleNavigateToWGs, handleNavigateToDossiers: handleNavigateToDossiers, moreInfoTasks: getMoreInfoTasksForDocument(allTasks, focusedItem?.TID, focusedItem?.DID), showDcmtFormSidebar: showDcmtFormSidebar, datagridUtility: {
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import React from "react";
|
|
2
1
|
import { FileDescriptor, FileFormats } from '@topconsultnpm/sdk-ts';
|
|
3
2
|
export declare const useInputCvtFormatDialog: () => [() => Promise<FileFormats>, () => JSX.Element];
|
|
4
3
|
export declare const useFileDialog: () => {
|
|
@@ -6,7 +5,7 @@ export declare const useFileDialog: () => {
|
|
|
6
5
|
};
|
|
7
6
|
export declare const useInputAttachmentsDialog: () => {
|
|
8
7
|
openConfirmAttachmentsDialog: (list: FileDescriptor[]) => Promise<string[] | undefined>;
|
|
9
|
-
ConfirmAttachmentsDialog: () =>
|
|
8
|
+
ConfirmAttachmentsDialog: () => import("react/jsx-runtime").JSX.Element | null;
|
|
10
9
|
};
|
|
11
10
|
export type FileSourceType = 'filesystem' | 'scanner-new' | 'scanner-edit' | undefined;
|
|
12
11
|
export declare const useFileSourceDialog: () => [(hasExistingFile?: boolean) => Promise<FileSourceType>, () => JSX.Element];
|
|
@@ -634,8 +634,9 @@ export const useMultiMasterDetailDcmts = ({ dtd, masterDcmt, onClose, canNavigat
|
|
|
634
634
|
// Con la conferma di interruzione aperta il loop resta in pausa qui
|
|
635
635
|
await waitPanel.waitWhilePaused();
|
|
636
636
|
if (waitPanel.aborted) {
|
|
637
|
-
|
|
638
|
-
|
|
637
|
+
const description = SDKUI_Localizator.OperationDcmtsInterrupted.replaceParams(i);
|
|
638
|
+
result.push({ rowIndex: i, id1: detailTID, id2: undefined, resultType: ResultTypes.WARNING, description });
|
|
639
|
+
waitPanel.warning(1, description);
|
|
639
640
|
break;
|
|
640
641
|
}
|
|
641
642
|
if (isBatch)
|
|
@@ -651,12 +652,15 @@ export const useMultiMasterDetailDcmts = ({ dtd, masterDcmt, onClose, canNavigat
|
|
|
651
652
|
const err = error;
|
|
652
653
|
// Annullamento richiesto dall'utente: interrompe senza mostrare l'errore
|
|
653
654
|
if (err?.name === 'CanceledError' || waitPanel.aborted) {
|
|
654
|
-
|
|
655
|
-
|
|
655
|
+
const description = SDKUI_Localizator.OperationDcmtsInterrupted.replaceParams(i);
|
|
656
|
+
result.push({ rowIndex: i, id1: detailTID, id2: undefined, resultType: ResultTypes.WARNING, description });
|
|
657
|
+
waitPanel.warning(1, description);
|
|
656
658
|
break;
|
|
657
659
|
}
|
|
658
|
-
|
|
659
|
-
|
|
660
|
+
const description = getExceptionMessage(error);
|
|
661
|
+
result.push({ rowIndex: i, id1: detailTID, id2: undefined, resultType: ResultTypes.ERROR, description });
|
|
662
|
+
// La riga non ha ancora un DID: la si indica con la sua posizione.
|
|
663
|
+
waitPanel.error(1, `${SDKUI_Localizator.RowNumber.replaceParams(i + 1)}: ${description}`);
|
|
660
664
|
if (stopOnFirstError)
|
|
661
665
|
break;
|
|
662
666
|
}
|
|
@@ -3,20 +3,42 @@ type PendingGroup = Array<{
|
|
|
3
3
|
caseflow: CaseFlowInstanceDescriptor;
|
|
4
4
|
workItems: CaseFlowWorkItem[];
|
|
5
5
|
}>;
|
|
6
|
+
/** Numero massimo di pratiche restituite da una ricerca, se non indicato. */
|
|
7
|
+
export declare const CASEFLOW_SEARCH_DEFAULT_MAX_RESULTS = 500;
|
|
8
|
+
/**
|
|
9
|
+
* Tetto di `maxResults`. Il server non restituisce mai più di 5000 pratiche e
|
|
10
|
+
* se ne chiede una in più per sapere se il risultato è troncato: oltre 4999
|
|
11
|
+
* il troncamento non sarebbe più riconoscibile.
|
|
12
|
+
*/
|
|
13
|
+
export declare const CASEFLOW_SEARCH_MAX_RESULTS = 4999;
|
|
6
14
|
/** Criteri di ricerca delle istanze (pannello Ricerca e Process Mining). */
|
|
7
15
|
export interface CaseFlowSearchCriteria {
|
|
8
16
|
templateId?: number;
|
|
17
|
+
/** Contenuto nel nome, senza distinzione fra maiuscole e minuscole. */
|
|
9
18
|
name?: string;
|
|
19
|
+
/** Contenuto nella descrizione, senza distinzione fra maiuscole e minuscole. */
|
|
10
20
|
description?: string;
|
|
11
21
|
state?: CF_States;
|
|
22
|
+
/** Creata dal giorno indicato, compreso (formato `YYYY-MM-DD`, come un `<input type="date">`). */
|
|
12
23
|
dateFrom?: string;
|
|
24
|
+
/** Creata fino al giorno indicato, compreso (formato `YYYY-MM-DD`). */
|
|
13
25
|
dateTo?: string;
|
|
26
|
+
/** Filtri per metadato di copertina ("contiene"), tutti da soddisfare. */
|
|
14
27
|
metadataFilters?: Array<{
|
|
15
28
|
mid: number;
|
|
16
29
|
value: string;
|
|
17
30
|
}>;
|
|
18
|
-
/** Ricerca libera:
|
|
31
|
+
/** Ricerca libera: nome, descrizione o un qualunque valore di copertina della pratica. */
|
|
19
32
|
freeTextMetadata?: string;
|
|
33
|
+
/** Massimo numero di pratiche (default {@link CASEFLOW_SEARCH_DEFAULT_MAX_RESULTS}, tetto {@link CASEFLOW_SEARCH_MAX_RESULTS}). */
|
|
34
|
+
maxResults?: number;
|
|
35
|
+
}
|
|
36
|
+
/** Esito di una ricerca di istanze. */
|
|
37
|
+
export interface CaseFlowSearchResult {
|
|
38
|
+
/** Pratiche trovate, dalla più recente; con `truncated` sono le prime `maxResults`. */
|
|
39
|
+
items: CaseFlowInstanceDescriptor[];
|
|
40
|
+
/** true se le pratiche che soddisfano i criteri sono più di `maxResults`. */
|
|
41
|
+
truncated: boolean;
|
|
20
42
|
}
|
|
21
43
|
/** Documento non cancellato durante l'eliminazione di un'istanza (orfano). */
|
|
22
44
|
export interface CaseFlowDeleteOrphan {
|
|
@@ -74,8 +96,16 @@ export declare class CaseFlowService {
|
|
|
74
96
|
static retrieveCaseflow(id: number, cftid?: number): Promise<CaseFlowInstanceDescriptor | undefined>;
|
|
75
97
|
/** Istanze di cui l'utente indicato è proprietario. */
|
|
76
98
|
static getMyCaseflows(userId: number): Promise<CaseFlowInstanceDescriptor[]>;
|
|
77
|
-
/**
|
|
78
|
-
|
|
99
|
+
/**
|
|
100
|
+
* Ricerca avanzata sulle istanze, eseguita dal server (`usp_Cfi_Search`):
|
|
101
|
+
* restituisce solo le pratiche visibili all'utente che soddisfano i
|
|
102
|
+
* criteri, già con la copertina. Tutti i confronti di testo sono
|
|
103
|
+
* "contiene", senza distinzione fra maiuscole e minuscole.
|
|
104
|
+
*
|
|
105
|
+
* Per riconoscere un risultato troncato si chiede al server una pratica
|
|
106
|
+
* in più di `maxResults`: se arriva, la si scarta e `truncated` vale true.
|
|
107
|
+
*/
|
|
108
|
+
static searchCaseflows(criteria: CaseFlowSearchCriteria): Promise<CaseFlowSearchResult>;
|
|
79
109
|
/** WorkItem pendenti assegnati all'utente, raggruppati per istanza. */
|
|
80
110
|
static getMyPendingWorkItems(userId: number): Promise<PendingGroup>;
|
|
81
111
|
/**
|