@topconsultnpm/sdkui-react 6.19.0-dev1.5 → 6.19.0-dev1.50
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/base/Styled.d.ts +1 -0
- package/lib/components/base/Styled.js +40 -0
- package/lib/components/base/TMFileManagerDataGridView.js +4 -1
- package/lib/components/base/TMTreeView.js +3 -2
- package/lib/components/editors/TMHtmlEditor.d.ts +5 -0
- package/lib/components/editors/TMHtmlEditor.js +72 -12
- package/lib/components/editors/TMMetadataValues.js +90 -40
- package/lib/components/features/archive/TMArchive.d.ts +2 -0
- package/lib/components/features/archive/TMArchive.js +56 -25
- package/lib/components/features/blog/TMBlogCommentForm.js +57 -41
- package/lib/components/features/documents/TMDcmtForm.d.ts +10 -3
- package/lib/components/features/documents/TMDcmtForm.js +134 -36
- package/lib/components/features/documents/TMDragDropOverlay.js +2 -1
- package/lib/components/features/documents/TMMasterDetailDcmts.js +1 -1
- package/lib/components/features/documents/TMRelationViewer.d.ts +53 -3
- package/lib/components/features/documents/TMRelationViewer.js +232 -85
- package/lib/components/features/search/TMSearch.d.ts +3 -1
- package/lib/components/features/search/TMSearch.js +13 -4
- package/lib/components/features/search/TMSearchQueryPanel.d.ts +1 -1
- package/lib/components/features/search/TMSearchQueryPanel.js +36 -7
- package/lib/components/features/search/TMSearchResult.d.ts +3 -1
- package/lib/components/features/search/TMSearchResult.js +102 -328
- package/lib/components/features/search/TMSearchResultsMenuItems.d.ts +2 -2
- package/lib/components/features/search/TMSearchResultsMenuItems.js +32 -15
- package/lib/components/features/workflow/TMWorkflowPopup.d.ts +3 -1
- package/lib/components/features/workflow/TMWorkflowPopup.js +17 -4
- package/lib/components/forms/TMChooserForm.d.ts +1 -1
- package/lib/components/forms/TMChooserForm.js +2 -2
- package/lib/components/grids/TMBlogsUtils.d.ts +1 -0
- package/lib/components/grids/TMBlogsUtils.js +40 -4
- package/lib/components/index.d.ts +3 -0
- package/lib/components/index.js +3 -0
- package/lib/components/viewers/TMTidViewer.js +29 -4
- package/lib/css/tm-sdkui.css +1 -1
- package/lib/helper/SDKUI_Globals.d.ts +2 -1
- package/lib/helper/SDKUI_Globals.js +1 -0
- package/lib/helper/SDKUI_Localizator.d.ts +4 -0
- package/lib/helper/SDKUI_Localizator.js +46 -0
- package/lib/helper/TMIcons.d.ts +2 -0
- package/lib/helper/TMIcons.js +6 -0
- package/lib/helper/TMToppyMessage.d.ts +7 -0
- package/lib/helper/TMToppyMessage.js +42 -0
- package/lib/helper/TMUtils.d.ts +7 -0
- package/lib/helper/TMUtils.js +16 -0
- package/lib/helper/index.d.ts +1 -0
- package/lib/helper/index.js +1 -0
- package/lib/hooks/useRelatedDocuments.d.ts +72 -0
- package/lib/hooks/useRelatedDocuments.js +655 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.js +1 -0
- package/lib/ts/types.d.ts +14 -0
- package/lib/ts/types.js +15 -0
- package/lib/utils/theme.d.ts +1 -0
- package/lib/utils/theme.js +1 -0
- package/package.json +2 -2
|
@@ -1,6 +1,6 @@
|
|
|
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 } 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 } 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';
|
|
@@ -75,15 +75,7 @@ export const signatureInformationCallback = async (isMobile, inputDcmts) => {
|
|
|
75
75
|
TMExceptionBoxManager.show({ exception: error });
|
|
76
76
|
}
|
|
77
77
|
};
|
|
78
|
-
const
|
|
79
|
-
const isWidgetEnabled = (widgetId, widgetsString) => {
|
|
80
|
-
const widgets = widgetsString.split(";").filter(Boolean);
|
|
81
|
-
return widgets.includes(widgetId);
|
|
82
|
-
};
|
|
83
|
-
const isPdfEditorEnabled = (widgetsString) => {
|
|
84
|
-
return isWidgetEnabled(PDF_EDITOR_ID, widgetsString);
|
|
85
|
-
};
|
|
86
|
-
export const getCommandsMenuItems = (isMobile, dtd, selectedItems, focusedItem, context, showFloatingBar, workingGroupContext, showSearch, setShowFloatingBar, openFormHandler, 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) => {
|
|
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) => {
|
|
87
79
|
const isPdfEditorLicensed = SDK_Globals?.license?.dcmtArchiveLicenses?.[0]?.siX_60007?.status === LicenseModuleStatus.Licensed;
|
|
88
80
|
let pdfEditorAvailable = false;
|
|
89
81
|
if (dtd && dtd.widgets && dtd.widgets.length > 0) {
|
|
@@ -243,7 +235,7 @@ export const getCommandsMenuItems = (isMobile, dtd, selectedItems, focusedItem,
|
|
|
243
235
|
?.filter(md => md.mid && md.mid > 100 && md.value && md.value.length > 0)
|
|
244
236
|
.map(md => ({ mid: md.mid, value: md.value })) || [];
|
|
245
237
|
TMSpinner.hide();
|
|
246
|
-
passToArchiveCallback?.(outputMids);
|
|
238
|
+
passToArchiveCallback?.(outputMids, item.TID);
|
|
247
239
|
}
|
|
248
240
|
catch (error) {
|
|
249
241
|
TMSpinner.hide();
|
|
@@ -354,17 +346,17 @@ export const getCommandsMenuItems = (isMobile, dtd, selectedItems, focusedItem,
|
|
|
354
346
|
disabled: disabledForMultiRow(selectedItems, focusedItem),
|
|
355
347
|
items: [
|
|
356
348
|
{
|
|
357
|
-
icon: svgToString(_jsx(
|
|
349
|
+
icon: svgToString(_jsx(IconPair, {})),
|
|
358
350
|
text: "Abbina documenti molti a molti",
|
|
359
351
|
operationType: 'multiRow',
|
|
360
|
-
disabled: disabledForMultiRow(selectedItems, focusedItem),
|
|
352
|
+
disabled: !hasManyToManyRelation || disabledForMultiRow(selectedItems, focusedItem),
|
|
361
353
|
onClick: async () => await pairManyToManyDocuments?.(true)
|
|
362
354
|
},
|
|
363
355
|
{
|
|
364
|
-
icon: svgToString(_jsx(
|
|
356
|
+
icon: svgToString(_jsx(IconUnpair, {})),
|
|
365
357
|
text: "Disabbina documenti molti a molti",
|
|
366
358
|
operationType: 'multiRow',
|
|
367
|
-
disabled: disabledForMultiRow(selectedItems, focusedItem),
|
|
359
|
+
disabled: !hasManyToManyRelation || disabledForMultiRow(selectedItems, focusedItem),
|
|
368
360
|
onClick: async () => await pairManyToManyDocuments?.(false)
|
|
369
361
|
},
|
|
370
362
|
{
|
|
@@ -402,6 +394,30 @@ export const getCommandsMenuItems = (isMobile, dtd, selectedItems, focusedItem,
|
|
|
402
394
|
]
|
|
403
395
|
};
|
|
404
396
|
};
|
|
397
|
+
const sharedDcmtsMenuItem = () => {
|
|
398
|
+
return {
|
|
399
|
+
icon: svgToString(_jsx(IconSharedDcmt, {})),
|
|
400
|
+
text: 'Documenti condivisi',
|
|
401
|
+
operationType: 'multiRow',
|
|
402
|
+
disabled: disabledForMultiRow(selectedItems, focusedItem),
|
|
403
|
+
items: [
|
|
404
|
+
{
|
|
405
|
+
icon: svgToString(_jsx(IconSharedDcmt, {})),
|
|
406
|
+
text: "Archiviazione condivisa",
|
|
407
|
+
operationType: 'singleRow',
|
|
408
|
+
disabled: disabledForSingleRow(selectedItems, focusedItem),
|
|
409
|
+
onClick: async () => { await openSharedArchiveHandler(); }
|
|
410
|
+
},
|
|
411
|
+
{
|
|
412
|
+
icon: svgToString(_jsx(IconSharedDcmt, {})),
|
|
413
|
+
text: "Mostra documenti condivisi",
|
|
414
|
+
operationType: 'multiRow',
|
|
415
|
+
disabled: disabledForMultiRow(selectedItems, focusedItem),
|
|
416
|
+
onClick: async () => { await showSharedDcmtsHandler(); }
|
|
417
|
+
}
|
|
418
|
+
]
|
|
419
|
+
};
|
|
420
|
+
};
|
|
405
421
|
/* const shareMenuItem = (): TMDataGridContextMenuItem => {
|
|
406
422
|
return {
|
|
407
423
|
icon: svgToString(<IconShare />),
|
|
@@ -635,6 +651,7 @@ export const getCommandsMenuItems = (isMobile, dtd, selectedItems, focusedItem,
|
|
|
635
651
|
signatureMenuItem(),
|
|
636
652
|
// checkinMenuItem(),
|
|
637
653
|
relationsMenuItem(),
|
|
654
|
+
sharedDcmtsMenuItem(),
|
|
638
655
|
// shareMenuItem(),
|
|
639
656
|
fullTextSearchMenuItem(),
|
|
640
657
|
otherMenuItem(),
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
+
import { DcmtTypeDescriptor } from '@topconsultnpm/sdk-ts';
|
|
1
2
|
import { DeviceType } from "../../base/TMDeviceProvider";
|
|
2
3
|
interface IWorkflowOperationButtonsProps {
|
|
4
|
+
dtd: DcmtTypeDescriptor | undefined;
|
|
3
5
|
approveDisable?: boolean;
|
|
4
6
|
signApproveDisable?: boolean;
|
|
5
7
|
rejectDisable?: boolean;
|
|
@@ -12,7 +14,7 @@ interface IWorkflowOperationButtonsProps {
|
|
|
12
14
|
onReAssign?: () => void;
|
|
13
15
|
onMoreInfo?: () => void;
|
|
14
16
|
}
|
|
15
|
-
export declare const WorkFlowOperationButtons: (
|
|
17
|
+
export declare const WorkFlowOperationButtons: (props: IWorkflowOperationButtonsProps) => import("react/jsx-runtime").JSX.Element;
|
|
16
18
|
export declare const WorkFlowApproveRejectPopUp: ({ TID, DID, deviceType, isReject, selectedItems, onClose, onCompleted }: {
|
|
17
19
|
TID?: number;
|
|
18
20
|
DID?: number;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useEffect, useState } from "react";
|
|
3
3
|
import { Priorities, ResultTypes, SDK_Globals, SDK_Localizator, TaskEngine, UserListCacheService, ValidationItem, WorkflowCacheService } from '@topconsultnpm/sdk-ts';
|
|
4
4
|
import styled from "styled-components";
|
|
5
|
-
import { SDKUI_Localizator, IconApply, IconCloseOutline, IconUser, IconInfo, DateDisplayTypes, TASK_MORE_INFO_PREFIX_NAME, IconSignaturePencil } from "../../../helper";
|
|
5
|
+
import { SDKUI_Localizator, IconApply, IconCloseOutline, IconUser, IconInfo, DateDisplayTypes, TASK_MORE_INFO_PREFIX_NAME, IconSignaturePencil, isSign4TopEnabled } from "../../../helper";
|
|
6
6
|
import { TMColors } from "../../../utils/theme";
|
|
7
7
|
import TMButton from "../../base/TMButton";
|
|
8
8
|
import { DeviceType } from "../../base/TMDeviceProvider";
|
|
@@ -65,9 +65,22 @@ const StyledHorizontalContainer = styled.div `
|
|
|
65
65
|
gap: 10px;
|
|
66
66
|
/* align-items: flex-end; */
|
|
67
67
|
`;
|
|
68
|
-
export const WorkFlowOperationButtons = (
|
|
68
|
+
export const WorkFlowOperationButtons = (props) => {
|
|
69
|
+
const { dtd = undefined, deviceType = DeviceType.DESKTOP, approveDisable = false, signApproveDisable = false, rejectDisable = false, reassignDisable = false, infoDisable = false, onApprove, onSignApprove, onReject, onReAssign, onMoreInfo } = props;
|
|
69
70
|
const isMobile = deviceType === DeviceType.MOBILE;
|
|
70
|
-
|
|
71
|
+
// Stato per distinguere workflow di firma vs approvazione
|
|
72
|
+
const [isSignWorkflow, setIsSignWorkflow] = useState(false);
|
|
73
|
+
useEffect(() => {
|
|
74
|
+
// Controlla se il documento ha dei widget definiti, se il documento ha il widget SIGN4_TOP abilitato, allora è un workflow di firma
|
|
75
|
+
if (dtd && dtd.widgets && dtd.widgets.length > 0) {
|
|
76
|
+
setIsSignWorkflow(isSign4TopEnabled(dtd.widgets));
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
// Se non ci sono widget o non è SIGN4_TOP, imposta il workflow di default (approvazione senza firma)
|
|
80
|
+
setIsSignWorkflow(false);
|
|
81
|
+
}
|
|
82
|
+
}, [dtd]);
|
|
83
|
+
return (_jsx(StyledWorkFlowOperationButtonsContainer, { "$isMobile": isMobile, children: isSignWorkflow ? (_jsxs(_Fragment, { children: [_jsx(TMButton, { btnStyle: isMobile ? 'toolbar' : 'advanced', showTooltip: isMobile, icon: _jsx(IconSignaturePencil, {}), caption: SDKUI_Localizator.SignatureAndApprove, width: "160px", disabled: signApproveDisable, onClick: () => !signApproveDisable && onSignApprove?.(), advancedColor: TMColors.success, color: "success" }), _jsx(TMButton, { btnStyle: isMobile ? 'toolbar' : 'advanced', showTooltip: isMobile, icon: _jsx(IconCloseOutline, {}), caption: SDKUI_Localizator.Reject, disabled: rejectDisable, onClick: () => !rejectDisable && onReject?.(), advancedColor: TMColors.error, color: "error" }), _jsx(TMButton, { btnStyle: isMobile ? 'toolbar' : 'advanced', showTooltip: isMobile, icon: _jsx(IconInfo, { fontSize: 16 }), caption: SDKUI_Localizator.MoreInformation, width: "180px", disabled: infoDisable, onClick: () => !infoDisable && onMoreInfo?.(), advancedColor: TMColors.info, color: "info" })] })) : (_jsxs(_Fragment, { children: [_jsx(TMButton, { btnStyle: isMobile ? 'toolbar' : 'advanced', showTooltip: isMobile, icon: _jsx(IconApply, {}), caption: SDKUI_Localizator.Approve, disabled: approveDisable, onClick: () => !approveDisable && onApprove?.(), advancedColor: TMColors.success, color: "success" }), _jsx(TMButton, { btnStyle: isMobile ? 'toolbar' : 'advanced', showTooltip: isMobile, icon: _jsx(IconCloseOutline, {}), caption: SDKUI_Localizator.Reject, disabled: rejectDisable, onClick: () => !rejectDisable && onReject?.(), advancedColor: TMColors.error, color: "error" }), _jsx(TMButton, { btnStyle: isMobile ? 'toolbar' : 'advanced', showTooltip: isMobile, icon: _jsx(IconUser, { fontSize: 16 }), caption: SDKUI_Localizator.Reassign, disabled: reassignDisable, onClick: () => !reassignDisable && onReAssign?.(), advancedColor: TMColors.tertiary, color: "tertiary" }), _jsx(TMButton, { btnStyle: isMobile ? 'toolbar' : 'advanced', showTooltip: isMobile, icon: _jsx(IconInfo, { fontSize: 16 }), caption: SDKUI_Localizator.MoreInformation, width: "180px", disabled: infoDisable, onClick: () => !infoDisable && onMoreInfo?.(), advancedColor: TMColors.info, color: "info" })] })) }));
|
|
71
84
|
};
|
|
72
85
|
export const WorkFlowApproveRejectPopUp = ({ TID = 0, DID = 0, deviceType = DeviceType.DESKTOP, isReject, selectedItems = [], onClose, onCompleted }) => {
|
|
73
86
|
const [commentValue, setCommentValue] = useState('');
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { ITMChooserFormProps } from '../../ts';
|
|
2
|
-
declare const TMChooserForm: <T>({ children, title, allowMultipleSelection, allowApplyWithZeroSelection, startWithShowOnlySelectedItems, hasShowOnlySelectedItems, allowGrouping, allowSorting, width, height, dataSource, selectedIDs, manageUseLocalizedName, hasShowId, hideRefresh, keyName, customButtons, showDefaultColumns, columns, summaryItems, convertID, customFilter, getItems, cellRenderIcon, cellRenderNameAndDesc, onChoose, onClose, onShowIdChanged }: ITMChooserFormProps<T>) => import("react/jsx-runtime").JSX.Element;
|
|
2
|
+
declare const TMChooserForm: <T>({ children, title, allowMultipleSelection, allowApplyWithZeroSelection, startWithShowOnlySelectedItems, hasShowOnlySelectedItems, allowGrouping, allowSorting, width, height, dataSource, selectedIDs, manageUseLocalizedName, hasShowId, hideRefresh, keyName, customButtons, showFilterPanel, showDefaultColumns, columns, summaryItems, convertID, customFilter, getItems, cellRenderIcon, cellRenderNameAndDesc, onChoose, onClose, onShowIdChanged }: ITMChooserFormProps<T>) => import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
export default TMChooserForm;
|
|
@@ -8,7 +8,7 @@ import TMModal from '../base/TMModal';
|
|
|
8
8
|
import TMLayoutContainer, { TMLayoutItem } from '../base/TMLayout';
|
|
9
9
|
import { TMColors } from '../../utils/theme';
|
|
10
10
|
import TMDataGrid from '../base/TMDataGrid';
|
|
11
|
-
const TMChooserForm = ({ children, title, allowMultipleSelection = false, allowApplyWithZeroSelection = false, startWithShowOnlySelectedItems = true, hasShowOnlySelectedItems = false, allowGrouping, allowSorting = true, width, height, dataSource, selectedIDs, manageUseLocalizedName = true, hasShowId = true, hideRefresh = false, keyName = "id", customButtons, showDefaultColumns = true, columns = [], summaryItems, convertID, customFilter, getItems, cellRenderIcon, cellRenderNameAndDesc, onChoose, onClose, onShowIdChanged }) => {
|
|
11
|
+
const TMChooserForm = ({ children, title, allowMultipleSelection = false, allowApplyWithZeroSelection = false, startWithShowOnlySelectedItems = true, hasShowOnlySelectedItems = false, allowGrouping, allowSorting = true, width, height, dataSource, selectedIDs, manageUseLocalizedName = true, hasShowId = true, hideRefresh = false, keyName = "id", customButtons, showFilterPanel = false, showDefaultColumns = true, columns = [], summaryItems, convertID, customFilter, getItems, cellRenderIcon, cellRenderNameAndDesc, onChoose, onClose, onShowIdChanged }) => {
|
|
12
12
|
const [showId, setShowId] = useState(false);
|
|
13
13
|
const [showOnlySelectedItems, setShowOnlySelectedItems] = useState(allowMultipleSelection && hasShowOnlySelectedItems && startWithShowOnlySelectedItems && selectedIDs != undefined && selectedIDs.length > 0);
|
|
14
14
|
const [allItems, setAllItems] = useState([]);
|
|
@@ -88,7 +88,7 @@ const TMChooserForm = ({ children, title, allowMultipleSelection = false, allowA
|
|
|
88
88
|
}, [manageUseLocalizedName, summaryItems]);
|
|
89
89
|
return (_jsx(TMModal, { title: renderTitle(), width: width ?? '550px', height: height ?? '600px', toolbar: _jsx(ToolbarButtons, {}), onClose: onClose, children: children ??
|
|
90
90
|
filteredItems.length > 0
|
|
91
|
-
? _jsx(TMDataGrid, { dataSource: filteredItems, keyExpr: keyName, dataColumns: dataColumns, focusedRowKey: focusedRowKey, selectedRowKeys: selectedRowKeys, searchPanelFocusStarting: true, headerFilter: { visible: true }, selection: { mode: allowMultipleSelection ? 'multiple' : 'single', showCheckBoxesMode: 'always', selectAllMode: 'allPages' }, grouping: allowGrouping ? { autoExpandAll: false, expandMode: 'rowClick' } : undefined, summary: customSummary, onFocusedRowChanged: handleFocusedRowChange, onSelectionChanged: handleSelectionChanged, onRowDblClick: handleRowDoubleClick })
|
|
91
|
+
? _jsx(TMDataGrid, { dataSource: filteredItems, keyExpr: keyName, dataColumns: dataColumns, focusedRowKey: focusedRowKey, selectedRowKeys: selectedRowKeys, searchPanelFocusStarting: true, headerFilter: { visible: true }, selection: { mode: allowMultipleSelection ? 'multiple' : 'single', showCheckBoxesMode: 'always', selectAllMode: 'allPages' }, grouping: allowGrouping ? { autoExpandAll: false, expandMode: 'rowClick' } : undefined, summary: customSummary, showFilterPanel: showFilterPanel, onFocusedRowChanged: handleFocusedRowChange, onSelectionChanged: handleSelectionChanged, onRowDblClick: handleRowDoubleClick })
|
|
92
92
|
: _jsx(TMLayoutContainer, { gap: 30, alignItems: 'center', justifyContent: 'center', children: _jsx(TMLayoutItem, { children: _jsx("p", { style: { height: "100%", color: TMColors.primaryColor, fontSize: "1.5rem", display: 'flex', alignItems: 'center', justifyContent: 'center' }, children: SDKUI_Localizator.NoDataToDisplay }) }) }) }));
|
|
93
93
|
};
|
|
94
94
|
export default TMChooserForm;
|
|
@@ -76,6 +76,7 @@ export declare const getAttachmentInfo: (attachment: BlogPostAttachment, treeFs:
|
|
|
76
76
|
draftExist: boolean;
|
|
77
77
|
archivedDocumentsExist: boolean;
|
|
78
78
|
};
|
|
79
|
+
export declare const findFileItemByTidDid: (tree: FileItem | undefined, tid: number | undefined, did: number | undefined) => FileItem | null;
|
|
79
80
|
export declare const AttachmentElement: (attachment: BlogPostAttachment, treeFs: FileItem | undefined, draftLatestInfoMap: Map<number, {
|
|
80
81
|
latestVersion: number;
|
|
81
82
|
folderId: number;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import styled from "styled-components";
|
|
3
|
-
import { SDK_Globals } from "@topconsultnpm/sdk-ts";
|
|
3
|
+
import { SDK_Globals, SystemTIDs } from "@topconsultnpm/sdk-ts";
|
|
4
4
|
import { extractInitialsFromName, formatBytes, getAvatarColor, IconAttachment, IconCADossier, IconMenuCAWorkingGroups, SDKUI_Localizator } from "../../helper";
|
|
5
5
|
import TMTooltip from "../base/TMTooltip";
|
|
6
6
|
import { TMColors } from '../../utils/theme';
|
|
@@ -130,16 +130,50 @@ export const getAttachmentInfo = (attachment, treeFs, draftLatestInfoMap, archiv
|
|
|
130
130
|
}
|
|
131
131
|
}
|
|
132
132
|
if (descriptor) {
|
|
133
|
+
// Default name from descriptor
|
|
133
134
|
name = descriptor.name ?? "-";
|
|
135
|
+
// If descriptor is DSAttachs, try to find the actual archived file in treeFs by tid/did
|
|
136
|
+
if (descriptor.id === SystemTIDs.DSAttachs && treeFs && attachment.tid && attachment.did) {
|
|
137
|
+
const found = findFileItemByTidDid(treeFs, attachment.tid, attachment.did);
|
|
138
|
+
if (found) {
|
|
139
|
+
name = found.name ?? name;
|
|
140
|
+
fileExt = found.ext ?? (found.name && found.name.includes('.') ? found.name.substring(found.name.lastIndexOf('.') + 1) : fileExt);
|
|
141
|
+
archivedDocumentsExist = true;
|
|
142
|
+
}
|
|
143
|
+
}
|
|
134
144
|
const content = (_jsxs("div", { children: [archivedDocumentMap && (_jsxs("div", { children: [_jsx("span", { style: { fontWeight: 'bold' }, children: SDKUI_Localizator.Size }), ": ", fileSize] })), _jsx("hr", {}), _jsxs("div", { children: [_jsx("span", { style: { fontWeight: 'bold' }, children: SDKUI_Localizator.Path }), ": \"", SDKUI_Localizator.ArchivedDocuments, "\\", `${descriptor.name} (DID: ${attachment.did})`, "\""] })] }));
|
|
135
145
|
tooltipContent = getTooltipContent(descriptor.name, content);
|
|
136
|
-
nameElement = (_jsx("span", { children:
|
|
146
|
+
nameElement = (_jsx("span", { children: descriptor.id !== SystemTIDs.DSAttachs
|
|
147
|
+
? highlightText(`${name} (DID: ${attachment.did})`, searchText, isSelected)
|
|
148
|
+
: highlightText(`${name}`, searchText, isSelected) }));
|
|
137
149
|
}
|
|
138
150
|
}
|
|
139
151
|
return { name, nameElement, tooltipContent, folderId, fileExt, draftExist, archivedDocumentsExist };
|
|
140
152
|
};
|
|
153
|
+
// Helper: find a file item by tid and did inside the treeFs structure
|
|
154
|
+
export const findFileItemByTidDid = (tree, tid, did) => {
|
|
155
|
+
if (!tree || tid === undefined || did === undefined)
|
|
156
|
+
return null;
|
|
157
|
+
const stack = [tree];
|
|
158
|
+
while (stack.length > 0) {
|
|
159
|
+
const node = stack.pop();
|
|
160
|
+
if (!node)
|
|
161
|
+
continue;
|
|
162
|
+
if (!node.isDirectory) {
|
|
163
|
+
if ((node.tid === tid || node.tid === Number(tid)) && (node.did === did || node.did === Number(did))) {
|
|
164
|
+
return node;
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
if (node.items && node.items.length > 0) {
|
|
168
|
+
for (const child of node.items) {
|
|
169
|
+
stack.push(child);
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
return null;
|
|
174
|
+
};
|
|
141
175
|
export const AttachmentElement = (attachment, treeFs, draftLatestInfoMap, archivedDocumentMap, dcmtTypeDescriptors, isSelected, searchText, color, setShowDcmtForm, handleFocusedAttachment, setAnchorEl, contextMenuRef) => {
|
|
142
|
-
const { name, nameElement, tooltipContent,
|
|
176
|
+
const { name, nameElement, tooltipContent, fileExt, archivedDocumentsExist, draftExist } = getAttachmentInfo(attachment, treeFs, draftLatestInfoMap, archivedDocumentMap, dcmtTypeDescriptors, isSelected, searchText, color);
|
|
143
177
|
const onDoubleClick = (e) => {
|
|
144
178
|
e.preventDefault();
|
|
145
179
|
e.stopPropagation();
|
|
@@ -176,7 +210,9 @@ export const AttachmentElement = (attachment, treeFs, draftLatestInfoMap, archiv
|
|
|
176
210
|
}, onMouseLeave: (e) => {
|
|
177
211
|
e.currentTarget.style.boxShadow = '0 2px 4px rgba(0, 0, 0, 0.1)';
|
|
178
212
|
e.currentTarget.style.backgroundColor = isSelected ? color : colors.WHITE;
|
|
179
|
-
}, children: _jsxs("div", { style: { alignItems: 'center', display: 'flex' }, children: [
|
|
213
|
+
}, children: _jsxs("div", { style: { alignItems: 'center', display: 'flex' }, children: [(!archivedDocumentsExist && !draftExist) ?
|
|
214
|
+
_jsx(IconAttachment, { style: { marginRight: "5px" } }) :
|
|
215
|
+
_jsx("div", { style: { marginRight: "10px" }, children: _jsx(TMDcmtIcon, { tid: attachment.tid, did: attachment.did, fileExtension: fileExt, downloadMode: 'openInNewWindow', tooltipContent: tooltipContent }) }), _jsx("span", { children: nameElement })] }) }, attachment.did);
|
|
180
216
|
};
|
|
181
217
|
export const OwnerInitialsBadge = (blogPost) => {
|
|
182
218
|
return _jsx(TMTooltip, { content: blogPost.ownerName ?? '-', children: _jsx("div", { style: {
|
|
@@ -84,6 +84,9 @@ export * from "./viewers/TMDataListItemViewer";
|
|
|
84
84
|
export * from "./base/TMDeviceProvider";
|
|
85
85
|
export { default as TMDataGrid } from "./base/TMDataGrid";
|
|
86
86
|
export { default as TMFileManager } from "./base/TMFileManager";
|
|
87
|
+
export { default as TMFileManagerDataGridView } from "./base/TMFileManagerDataGridView";
|
|
88
|
+
export { default as TMFileManagerThumbnailsView } from "./base/TMFileManagerThumbnailsView";
|
|
89
|
+
export * from "./base/TMFileManagerUtils";
|
|
87
90
|
export * from "./base/TMFileManagerUtils";
|
|
88
91
|
export { default as TMCounterContainer } from "./base/TMCounterContainer";
|
|
89
92
|
export * from "./base/TMCounterContainer";
|
package/lib/components/index.js
CHANGED
|
@@ -102,6 +102,9 @@ export * from "./viewers/TMDataListItemViewer";
|
|
|
102
102
|
export * from "./base/TMDeviceProvider";
|
|
103
103
|
export { default as TMDataGrid } from "./base/TMDataGrid";
|
|
104
104
|
export { default as TMFileManager } from "./base/TMFileManager";
|
|
105
|
+
export { default as TMFileManagerDataGridView } from "./base/TMFileManagerDataGridView";
|
|
106
|
+
export { default as TMFileManagerThumbnailsView } from "./base/TMFileManagerThumbnailsView";
|
|
107
|
+
export * from "./base/TMFileManagerUtils";
|
|
105
108
|
export * from "./base/TMFileManagerUtils";
|
|
106
109
|
export { default as TMCounterContainer } from "./base/TMCounterContainer";
|
|
107
110
|
export * from "./base/TMCounterContainer";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { useEffect, useState } from 'react';
|
|
3
|
-
import { IconDcmtType, IconDcmtTypeOnlyMetadata, IconLocked, IconView, LocalizeArchiveConstraints, LocalizeParametricFilterTypes, SDKUI_Localizator, TMImageLibrary } from '../../helper';
|
|
4
|
-
import { ArchiveConstraints, DcmtTypeListCacheService, OwnershipLevels, ParametricFilterTypes, SDK_Globals, SDK_Localizator, TemplateTIDs } from '@topconsultnpm/sdk-ts';
|
|
3
|
+
import { IconDcmtType, IconDcmtTypeOnlyMetadata, IconLocked, IconView, isCreateCertificateEnabled, isPdfEditorEnabled, isSign4TopEnabled, LocalizeArchiveConstraints, LocalizeParametricFilterTypes, SDKUI_Localizator, TMImageLibrary } from '../../helper';
|
|
4
|
+
import { AccessLevels, AccessLevelsEx, ArchiveConstraints, DcmtTypeListCacheService, OwnershipLevels, ParametricFilterTypes, SDK_Globals, SDK_Localizator, TemplateTIDs } from '@topconsultnpm/sdk-ts';
|
|
5
5
|
import TMSpinner from '../base/TMSpinner';
|
|
6
6
|
import { StyledDivHorizontal, StyledTooltipContainer, StyledTooltipItem, StyledTooltipSeparatorItem } from '../base/Styled';
|
|
7
7
|
import TMTooltip from '../base/TMTooltip';
|
|
@@ -306,13 +306,38 @@ export const cellRenderTID = (data, noneSelectionText) => {
|
|
|
306
306
|
return (_jsx(TMTidViewer, { tid: data.value, noneSelectionText: noneSelectionText }));
|
|
307
307
|
};
|
|
308
308
|
export const renderDTDTooltipContent = (dtd) => {
|
|
309
|
+
const mapAccessLevelToLocalizedString = (level) => {
|
|
310
|
+
if (level === undefined || level === null)
|
|
311
|
+
return SDKUI_Localizator.No;
|
|
312
|
+
switch (level) {
|
|
313
|
+
case AccessLevelsEx.Yes || AccessLevels.Yes:
|
|
314
|
+
return SDKUI_Localizator.Yes;
|
|
315
|
+
case AccessLevelsEx.No || AccessLevels.No:
|
|
316
|
+
return SDKUI_Localizator.No;
|
|
317
|
+
case AccessLevelsEx.Deny || AccessLevels.Deny:
|
|
318
|
+
return SDKUI_Localizator.Deny;
|
|
319
|
+
case AccessLevelsEx.Mixed:
|
|
320
|
+
return SDKUI_Localizator.Mixed;
|
|
321
|
+
case AccessLevelsEx.None || AccessLevels.None:
|
|
322
|
+
return SDK_Localizator.None;
|
|
323
|
+
default:
|
|
324
|
+
return level.toString();
|
|
325
|
+
}
|
|
326
|
+
};
|
|
309
327
|
return (!dtd ? null
|
|
310
328
|
: _jsxs(StyledTooltipContainer, { children: [_jsx(StyledTooltipItem, { children: `${SDK_Globals.useLocalizedName ? dtd.nameLoc : dtd.name} (${dtd.isView ? 'VID' : 'TID'}: ${dtd.id}, RootTID: ${dtd.rootTID ?? 0})` }), dtd.description && _jsx(StyledTooltipItem, { children: dtd.description }), _jsx(StyledTooltipSeparatorItem, {}), dtd.customData2 === "NOTGRANTED"
|
|
311
329
|
? _jsx(StyledTooltipItem, { style: { fontWeight: 600 }, children: 'Tipo documento NON autorizzato' })
|
|
312
330
|
:
|
|
313
331
|
_jsxs(_Fragment, { children: [_jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.ArchiveConstraint}: ${LocalizeArchiveConstraints(dtd.archiveConstraint)}` }), dtd.isView && dtd.parametricFilterType != ParametricFilterTypes.None && _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.ParametricFilter}: ${LocalizeParametricFilterTypes(dtd.parametricFilterType)}` }), dtd.isView && dtd.withCheckOption && _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.ViewWithCheckOption}: ${SDKUI_Localizator.Yes}` }), dtd.isLexProt && dtd.isLexProt > 0 && _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.LexProt}: ${SDKUI_Localizator.Yes}` }), dtd.isFreeSearchable && _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.Search_Free}: ${SDKUI_Localizator.Yes}` }), dtd.templateTID && _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.Template}: ${dtd.templateTID}` }), dtd.traceTID && _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.Tracing}: ${SDKUI_Localizator.Yes} - ${dtd.templateTID == TemplateTIDs.Trace_DcmtType ? SDKUI_Localizator.Destination : SDKUI_Localizator.Source} ${dtd.traceTID < 0 ? SDKUI_Localizator.Disabled : ''}` }), dtd.wfAppr && _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.WorkflowApproval}: ${SDKUI_Localizator.Yes}` }), dtd.hasBlog && _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.BlogCase}: ${SDKUI_Localizator.Yes}` }), dtd.cico && _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.CheckIn}: ${SDKUI_Localizator.Yes}` }), dtd.perm ?
|
|
314
|
-
_jsxs(_Fragment, { children: [_jsx(StyledTooltipItem, { "$color": 'primary', "$marginTop": '5px', children: SDKUI_Localizator.Perms }), _jsx(StyledTooltipSeparatorItem, {}), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.Archive}: ${dtd.perm.canArchive}` }), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.View_Metadato}: ${dtd.perm.canView}` }), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.Search}: ${dtd.perm.canSearch}` }), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.Update}: ${dtd.perm.canUpdate}` }), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.RetrieveFile}: ${dtd.perm.canRetrieveFile}` }), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.AddOrSubstFile}: ${dtd.perm.canSubstFile}` }), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.LogDelete}: ${dtd.perm.canLogicalDelete}` }), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.PhysDelete}: ${dtd.perm.canPhysicalDelete}` }), dtd.hasBlog && _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.Blog_Read}: ${dtd.perm.canReadBlog}` }), dtd.hasBlog && _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.Blog_Write}: ${dtd.perm.canWriteBlog}` }), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.CheckIn}: ${dtd.perm.canCICO}` }), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.ChronologyDelete}: ${dtd.perm.canDelChron}` })] })
|
|
332
|
+
_jsxs(_Fragment, { children: [_jsx(StyledTooltipItem, { "$color": 'primary', "$marginTop": '5px', children: SDKUI_Localizator.Perms }), _jsx(StyledTooltipSeparatorItem, {}), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.Archive}: ${mapAccessLevelToLocalizedString(dtd.perm.canArchive)}` }), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.View_Metadato}: ${mapAccessLevelToLocalizedString(dtd.perm.canView)}` }), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.Search}: ${mapAccessLevelToLocalizedString(dtd.perm.canSearch)}` }), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.Update}: ${mapAccessLevelToLocalizedString(dtd.perm.canUpdate)}` }), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.RetrieveFile}: ${mapAccessLevelToLocalizedString(dtd.perm.canRetrieveFile)}` }), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.AddOrSubstFile}: ${mapAccessLevelToLocalizedString(dtd.perm.canSubstFile)}` }), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.LogDelete}: ${mapAccessLevelToLocalizedString(dtd.perm.canLogicalDelete)}` }), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.PhysDelete}: ${mapAccessLevelToLocalizedString(dtd.perm.canPhysicalDelete)}` }), dtd.hasBlog && _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.Blog_Read}: ${mapAccessLevelToLocalizedString(dtd.perm.canReadBlog)}` }), dtd.hasBlog && _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.Blog_Write}: ${mapAccessLevelToLocalizedString(dtd.perm.canWriteBlog)}` }), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.CheckIn}: ${mapAccessLevelToLocalizedString(dtd.perm.canCICO)}` }), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.ChronologyDelete}: ${mapAccessLevelToLocalizedString(dtd.perm.canDelChron)}` })] })
|
|
315
333
|
: dtd.ownershipLevel == OwnershipLevels.DirectOwner || dtd.ownershipLevel == OwnershipLevels.IndirectOwner ?
|
|
316
334
|
_jsxs(_Fragment, { children: [_jsx(StyledTooltipItem, { "$color": 'primary', "$marginTop": '5px', children: SDKUI_Localizator.Perms }), _jsx(StyledTooltipSeparatorItem, {}), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.Archive}: ${SDKUI_Localizator.Yes}` }), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.View_Metadato}: ${SDKUI_Localizator.Yes}` }), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.Search}: ${SDKUI_Localizator.Yes}` }), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.Update}: ${SDKUI_Localizator.Yes}` }), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.RetrieveFile}: ${SDKUI_Localizator.Yes}` }), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.AddOrSubstFile}: ${SDKUI_Localizator.Yes}` }), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.LogDelete}: ${SDKUI_Localizator.Yes}` }), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.PhysDelete}: ${SDKUI_Localizator.Yes}` }), dtd.hasBlog && _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.Blog_Read}: ${SDKUI_Localizator.Yes}` }), dtd.hasBlog && _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.Blog_Write}: ${SDKUI_Localizator.Yes}` }), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.CheckIn}: ${SDKUI_Localizator.Yes}` }), _jsx(StyledTooltipItem, { children: `${SDKUI_Localizator.ChronologyDelete}: ${SDKUI_Localizator.Yes}` })] })
|
|
317
|
-
: _jsx(_Fragment, {})
|
|
335
|
+
: _jsx(_Fragment, {}), (dtd.widgets && dtd.widgets.length > 0) ? (() => {
|
|
336
|
+
const enabledWidgets = [
|
|
337
|
+
isSign4TopEnabled(dtd.widgets) ? 'Sign4Top' : null,
|
|
338
|
+
isCreateCertificateEnabled(dtd.widgets) ? `Sign4Top - ${SDKUI_Localizator.Create} ${SDK_Localizator.SignCert.toLocaleLowerCase()}` : null,
|
|
339
|
+
isPdfEditorEnabled(dtd.widgets) ? 'PDFEditor' : null,
|
|
340
|
+
].filter(Boolean);
|
|
341
|
+
return (_jsxs(_Fragment, { children: [_jsx(StyledTooltipSeparatorItem, {}), enabledWidgets.length > 0 && (_jsxs(StyledTooltipItem, { children: ["Widgets: ", enabledWidgets.join(', ')] })), enabledWidgets.length === 0 && (_jsxs(StyledTooltipItem, { children: ["Widgets: ", SDKUI_Localizator.No] }))] }));
|
|
342
|
+
})() : (_jsxs(_Fragment, { children: [_jsx(StyledTooltipSeparatorItem, {}), _jsxs(StyledTooltipItem, { children: ["Widgets: ", SDKUI_Localizator.No] })] }))] })] }));
|
|
318
343
|
};
|
package/lib/css/tm-sdkui.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
@import"https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,300;1,400;1,500;1,600;1,700;1,800&display=swap";@import"https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,300;1,400;1,500;1,600;1,700;1,800&display=swap";*{margin:0;padding:0;box-sizing:border-box;font-family:"Open Sans",sans-serif}.tm-tooltip-container-base,.tm-tooltip-container-base-right,.tm-tooltip-container-base-bottom,.tm-tooltip-container-base-left,.tm-tooltip-container-base-top{position:absolute;width:max-content;height:max-content;border-radius:5px;user-select:none;z-index:20000070}.tm-tooltip-container-base-top{top:-0.8rem;left:0;transform:translateY(-100%)}.tm-tooltip-container-base-left{left:-0.8rem;top:0;transform:translateX(-100%)}.tm-tooltip-container-base-bottom{bottom:-0.8rem;left:0;transform:translateY(100%)}.tm-tooltip-container-base-right{right:-0.8rem;top:0;transform:translateX(100%)}.tm-tooltip-arrow,.tm-tooltip-arrow-right,.tm-tooltip-arrow-left,.tm-tooltip-arrow-top,.tm-tooltip-arrow-bottom{position:absolute;width:0;height:0;z-index:50000}.tm-tooltip-arrow-bottom{top:-8px;left:8px;border-bottom:9px solid #fff;border-left:9px solid rgba(0,0,0,0);border-right:9px solid rgba(0,0,0,0)}.tm-tooltip-arrow-top{bottom:-8px;left:8px;border-top:9px solid #fff;border-left:9px solid rgba(0,0,0,0);border-right:9px solid rgba(0,0,0,0)}.tm-tooltip-arrow-left{top:8px;right:-8px;border-left:9px solid #fff;border-top:9px solid rgba(0,0,0,0);border-bottom:9px solid rgba(0,0,0,0)}.tm-tooltip-arrow-right{top:8px;left:-8px;border-right:9px solid #fff;border-top:9px solid rgba(0,0,0,0);border-bottom:9px solid rgba(0,0,0,0)}#user-credentials-popup .dx-accordion-item-title::before{content:none !important}*{margin:0;padding:0;box-sizing:border-box;font-family:"Open Sans",sans-serif}.tm-tooltip-container-base,.tm-tooltip-container-base-top,.tm-tooltip-container-base-left,.tm-tooltip-container-base-bottom,.tm-tooltip-container-base-right{position:absolute;width:max-content;height:max-content;border-radius:5px;user-select:none;z-index:20000070}.tm-tooltip-container-base-top{top:-0.8rem;left:0;transform:translateY(-100%)}.tm-tooltip-container-base-left{left:-0.8rem;top:0;transform:translateX(-100%)}.tm-tooltip-container-base-bottom{bottom:-0.8rem;left:0;transform:translateY(100%)}.tm-tooltip-container-base-right{right:-0.8rem;top:0;transform:translateX(100%)}.tm-tooltip-arrow,.tm-tooltip-arrow-bottom,.tm-tooltip-arrow-top,.tm-tooltip-arrow-left,.tm-tooltip-arrow-right{position:absolute;width:0;height:0;z-index:50000}.tm-tooltip-arrow-bottom{top:-8px;left:8px;border-bottom:9px solid #fff;border-left:9px solid rgba(0,0,0,0);border-right:9px solid rgba(0,0,0,0)}.tm-tooltip-arrow-top{bottom:-8px;left:8px;border-top:9px solid #fff;border-left:9px solid rgba(0,0,0,0);border-right:9px solid rgba(0,0,0,0)}.tm-tooltip-arrow-left{top:8px;right:-8px;border-left:9px solid #fff;border-top:9px solid rgba(0,0,0,0);border-bottom:9px solid rgba(0,0,0,0)}.tm-tooltip-arrow-right{top:8px;left:-8px;border-right:9px solid #fff;border-top:9px solid rgba(0,0,0,0);border-bottom:9px solid rgba(0,0,0,0)}#user-credentials-popup .dx-accordion-item-title::before{content:none !important}@keyframes show-error{0%{display:none;opacity:0;z-index:20000999}5%{display:block;opacity:1;z-index:20000999}95%{display:block;opacity:1;z-index:20000999}100%{opacity:0;display:none;z-index:20000999}}.tm-alert-animation-style{animation:show-error both;animation-timing-function:linear;animation-iteration-count:none;z-index:20000999}.tm-alert-container{position:absolute;width:100%;height:100%;z-index:20000999}@keyframes loading{from{width:0}to{width:100%}}.tm-alert-loading{width:100%;height:5px;position:absolute;bottom:0;left:0;animation:loading;animation-duration:5000ms}.tm-alert-icon{position:absolute;width:22px;height:22px;background-color:#fff;top:"20px";left:"20px";border-radius:50%;display:flex;align-items:center;justify-content:center}.dx-context-menu.dx-overlay-content{height:auto !important;max-height:none !important}.dx-context-menu .dx-menu-items-container{max-height:none !important}
|
|
1
|
+
@import"https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,300;1,400;1,500;1,600;1,700;1,800&display=swap";@import"https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,300;1,400;1,500;1,600;1,700;1,800&display=swap";*{margin:0;padding:0;box-sizing:border-box;font-family:"Open Sans",sans-serif}.tm-tooltip-container-base,.tm-tooltip-container-base-right,.tm-tooltip-container-base-bottom,.tm-tooltip-container-base-left,.tm-tooltip-container-base-top{position:absolute;width:max-content;height:max-content;border-radius:5px;user-select:none;z-index:20000070}.tm-tooltip-container-base-top{top:-0.8rem;left:0;transform:translateY(-100%)}.tm-tooltip-container-base-left{left:-0.8rem;top:0;transform:translateX(-100%)}.tm-tooltip-container-base-bottom{bottom:-0.8rem;left:0;transform:translateY(100%)}.tm-tooltip-container-base-right{right:-0.8rem;top:0;transform:translateX(100%)}.tm-tooltip-arrow,.tm-tooltip-arrow-right,.tm-tooltip-arrow-left,.tm-tooltip-arrow-top,.tm-tooltip-arrow-bottom{position:absolute;width:0;height:0;z-index:50000}.tm-tooltip-arrow-bottom{top:-8px;left:8px;border-bottom:9px solid #fff;border-left:9px solid rgba(0,0,0,0);border-right:9px solid rgba(0,0,0,0)}.tm-tooltip-arrow-top{bottom:-8px;left:8px;border-top:9px solid #fff;border-left:9px solid rgba(0,0,0,0);border-right:9px solid rgba(0,0,0,0)}.tm-tooltip-arrow-left{top:8px;right:-8px;border-left:9px solid #fff;border-top:9px solid rgba(0,0,0,0);border-bottom:9px solid rgba(0,0,0,0)}.tm-tooltip-arrow-right{top:8px;left:-8px;border-right:9px solid #fff;border-top:9px solid rgba(0,0,0,0);border-bottom:9px solid rgba(0,0,0,0)}#user-credentials-popup .dx-accordion-item-title::before{content:none !important}*{margin:0;padding:0;box-sizing:border-box;font-family:"Open Sans",sans-serif}.tm-tooltip-container-base,.tm-tooltip-container-base-top,.tm-tooltip-container-base-left,.tm-tooltip-container-base-bottom,.tm-tooltip-container-base-right{position:absolute;width:max-content;height:max-content;border-radius:5px;user-select:none;z-index:20000070}.tm-tooltip-container-base-top{top:-0.8rem;left:0;transform:translateY(-100%)}.tm-tooltip-container-base-left{left:-0.8rem;top:0;transform:translateX(-100%)}.tm-tooltip-container-base-bottom{bottom:-0.8rem;left:0;transform:translateY(100%)}.tm-tooltip-container-base-right{right:-0.8rem;top:0;transform:translateX(100%)}.tm-tooltip-arrow,.tm-tooltip-arrow-bottom,.tm-tooltip-arrow-top,.tm-tooltip-arrow-left,.tm-tooltip-arrow-right{position:absolute;width:0;height:0;z-index:50000}.tm-tooltip-arrow-bottom{top:-8px;left:8px;border-bottom:9px solid #fff;border-left:9px solid rgba(0,0,0,0);border-right:9px solid rgba(0,0,0,0)}.tm-tooltip-arrow-top{bottom:-8px;left:8px;border-top:9px solid #fff;border-left:9px solid rgba(0,0,0,0);border-right:9px solid rgba(0,0,0,0)}.tm-tooltip-arrow-left{top:8px;right:-8px;border-left:9px solid #fff;border-top:9px solid rgba(0,0,0,0);border-bottom:9px solid rgba(0,0,0,0)}.tm-tooltip-arrow-right{top:8px;left:-8px;border-right:9px solid #fff;border-top:9px solid rgba(0,0,0,0);border-bottom:9px solid rgba(0,0,0,0)}#user-credentials-popup .dx-accordion-item-title::before{content:none !important}@keyframes show-error{0%{display:none;opacity:0;z-index:20000999}5%{display:block;opacity:1;z-index:20000999}95%{display:block;opacity:1;z-index:20000999}100%{opacity:0;display:none;z-index:20000999}}.tm-alert-animation-style{animation:show-error both;animation-timing-function:linear;animation-iteration-count:none;z-index:20000999}.tm-alert-container{position:absolute;width:100%;height:100%;z-index:20000999}@keyframes loading{from{width:0}to{width:100%}}.tm-alert-loading{width:100%;height:5px;position:absolute;bottom:0;left:0;animation:loading;animation-duration:5000ms}.tm-alert-icon{position:absolute;width:22px;height:22px;background-color:#fff;top:"20px";left:"20px";border-radius:50%;display:flex;align-items:center;justify-content:center}.dx-context-menu.dx-overlay-content{height:auto !important;max-height:none !important}.dx-context-menu .dx-menu-items-container{max-height:none !important}.custom-mentions-wrapper span.dx-mention span[contenteditable=false]>span:first-child{font-size:0;width:0;display:inline-block;overflow:hidden}.custom-mentions-wrapper span.dx-mention{color:#2559a5;font-weight:bold;background-color:rgba(0,0,0,0)}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { InvoiceRetrieveFormats, OrderRetrieveFormats } from "@topconsultnpm/sdk-ts";
|
|
1
|
+
import { InvoiceRetrieveFormats, ObjectClasses, OrderRetrieveFormats } from "@topconsultnpm/sdk-ts";
|
|
2
2
|
export declare const dcmtsFileCacheDownload: Map<string, File>;
|
|
3
3
|
export declare const dcmtsFileCachePreview: Map<string, File>;
|
|
4
4
|
export declare const CACHE_SIZE_LIMIT = 10;
|
|
@@ -44,6 +44,7 @@ export declare class ThemeSettings {
|
|
|
44
44
|
};
|
|
45
45
|
}
|
|
46
46
|
export declare class SearchSettings {
|
|
47
|
+
autoFindReferences: ObjectClasses[];
|
|
47
48
|
invoiceRetrieveFormat: InvoiceRetrieveFormats;
|
|
48
49
|
orderRetrieveFormat: OrderRetrieveFormats;
|
|
49
50
|
mruTIDs: number[];
|
|
@@ -87,6 +87,7 @@ export class ThemeSettings {
|
|
|
87
87
|
}
|
|
88
88
|
export class SearchSettings {
|
|
89
89
|
constructor() {
|
|
90
|
+
this.autoFindReferences = [];
|
|
90
91
|
this.invoiceRetrieveFormat = InvoiceRetrieveFormats.ASW_HTML;
|
|
91
92
|
this.orderRetrieveFormat = OrderRetrieveFormats.NSO_HTML;
|
|
92
93
|
this.mruTIDs = [];
|
|
@@ -130,7 +130,9 @@ export declare class SDKUI_Localizator {
|
|
|
130
130
|
static get DeletionCompletedSuccessfully(): "Löschung erfolgreich abgeschlossen" | "Deletion completed successfully" | "Eliminación completada con éxito" | "Suppression terminée avec succès" | "Exclusão concluída com sucesso" | "Eliminazione completata con successo";
|
|
131
131
|
static get Deleted(): "Gelöscht" | "Deleted" | "Eliminados" | "Supprimés" | "Excluídos" | "Eliminati";
|
|
132
132
|
static get DeletionOperationInterrupted(): "Löschvorgang abgebrochen" | "Deletion operation interrupted" | "Operación de eliminación interrumpida" | "Opération de suppression interrompue" | "Operação de exclusão interrompida" | "Operazione di eliminazione interrotta";
|
|
133
|
+
static get Deny(): "Ablehnen" | "Deny" | "Denegar" | "Refuser" | "Negar" | "Negato";
|
|
133
134
|
static get Description(): "Beschreibung" | "Description" | "Descripción" | "Descrição" | "Descrizione";
|
|
135
|
+
static get DescriptionLengthExceededMessage(): "Die Beschreibung ist zu lang: {{0}} Zeichen zu viel" | "Description is too long: {{0}} characters too many" | "La descripción es demasiado larga: {{0}} caracteres de más" | "La description est trop longue : {{0}} caractères en trop" | "A descrição é demasiado longa: {{0}} caracteres a mais" | "La descrizione è troppo lunga: {{0}} caratteri in più";
|
|
134
136
|
static get DescriptionTooLongMessage(): "Die Beschreibung ist zu lang: Maximal {{0}' Zeichen" | "Description is too long: Max {{0}} characters" | "La descripción es demasiado larga: Máximo {{0}} caracteres" | "La description est trop longue : Maximum {{0}} caractères" | "A descrição é demasiado longa: Máximo {{0}} caracteres" | "La descrizione è troppo lunga: Massimo {{0}} caratteri";
|
|
135
137
|
static get Design(): "Design" | "Diseño" | "Conception" | "Projeto" | "Progettazione";
|
|
136
138
|
static get Destination(): "Bestimmung" | "Destination" | "Destino" | "Destinazione";
|
|
@@ -170,6 +172,7 @@ export declare class SDKUI_Localizator {
|
|
|
170
172
|
static get DownloadXMLAttachments(): string;
|
|
171
173
|
static get Draft(): string;
|
|
172
174
|
static get Drafts(): string;
|
|
175
|
+
static get DropFileHere(): "Ziehen Sie Ihre Datei hierher" | "Drop your file here" | "Suelta tu archivo aquí" | "Déposez votre fichier ici" | "Solte seu arquivo aqui";
|
|
173
176
|
static get DropFileToShare(): string;
|
|
174
177
|
static get Duplicate(): "Duplikat" | "Duplicate" | "Duplicar" | "Dupliquer" | "Duplicado" | "Duplica";
|
|
175
178
|
static get Duplicate_ConfirmFor1(): "Möchten Sie '{{0}}' duplizieren?" | "Are you sure you want to duplicate '{{0}}'?" | "¿Estás seguro de que deseas duplicar '{{0}}'?" | "Êtes-vous sûr de vouloir dupliquer '{{0}}'?" | "Você tem certeza que deseja duplicar '{{0}}'?" | "Sei sicuro di voler duplicare '{{0}}'?";
|
|
@@ -323,6 +326,7 @@ export declare class SDKUI_Localizator {
|
|
|
323
326
|
static get Message(): "Nachricht" | "Message" | "Mensaje" | "Mensagem" | "Messaggio";
|
|
324
327
|
static get Min_Value(): "Der Minimalwert ist {{0}}" | "The minimum value is {{0}}" | "El valor mínimo es {{0}}" | "La valeur minimale est {{0}}" | "O valor mínimo é {{0}}" | "Il valore minimo è {{0}}";
|
|
325
328
|
static get Minimize(): "Minimieren" | "Minimize" | "Minimizar" | "Minimiser" | "Minimizza";
|
|
329
|
+
static get Mixed(): "Gemischt" | "Mixed" | "Mixto" | "Mixte" | "Misto";
|
|
326
330
|
static get More(): "andere" | "more" | "otros" | "autres" | "outros" | "altri";
|
|
327
331
|
static get MoreInformation(): "Mehr Informationen" | "More information" | "Más información" | "Plus d'informations" | "Mais informações" | "Maggiori informazioni";
|
|
328
332
|
static get MoreInfoCompleteRequestSentBy(): string;
|
|
@@ -1255,6 +1255,16 @@ export class SDKUI_Localizator {
|
|
|
1255
1255
|
default: return "Operazione di eliminazione interrotta";
|
|
1256
1256
|
}
|
|
1257
1257
|
}
|
|
1258
|
+
static get Deny() {
|
|
1259
|
+
switch (this._cultureID) {
|
|
1260
|
+
case CultureIDs.De_DE: return "Ablehnen";
|
|
1261
|
+
case CultureIDs.En_US: return "Deny";
|
|
1262
|
+
case CultureIDs.Es_ES: return "Denegar";
|
|
1263
|
+
case CultureIDs.Fr_FR: return "Refuser";
|
|
1264
|
+
case CultureIDs.Pt_PT: return "Negar";
|
|
1265
|
+
default: return "Negato";
|
|
1266
|
+
}
|
|
1267
|
+
}
|
|
1258
1268
|
static get Description() {
|
|
1259
1269
|
switch (this._cultureID) {
|
|
1260
1270
|
case CultureIDs.De_DE: return "Beschreibung";
|
|
@@ -1265,6 +1275,22 @@ export class SDKUI_Localizator {
|
|
|
1265
1275
|
default: return "Descrizione";
|
|
1266
1276
|
}
|
|
1267
1277
|
}
|
|
1278
|
+
static get DescriptionLengthExceededMessage() {
|
|
1279
|
+
switch (this._cultureID) {
|
|
1280
|
+
case CultureIDs.De_DE:
|
|
1281
|
+
return "Die Beschreibung ist zu lang: {{0}} Zeichen zu viel";
|
|
1282
|
+
case CultureIDs.En_US:
|
|
1283
|
+
return "Description is too long: {{0}} characters too many";
|
|
1284
|
+
case CultureIDs.Es_ES:
|
|
1285
|
+
return "La descripción es demasiado larga: {{0}} caracteres de más";
|
|
1286
|
+
case CultureIDs.Fr_FR:
|
|
1287
|
+
return "La description est trop longue : {{0}} caractères en trop";
|
|
1288
|
+
case CultureIDs.Pt_PT:
|
|
1289
|
+
return "A descrição é demasiado longa: {{0}} caracteres a mais";
|
|
1290
|
+
default:
|
|
1291
|
+
return "La descrizione è troppo lunga: {{0}} caratteri in più";
|
|
1292
|
+
}
|
|
1293
|
+
}
|
|
1268
1294
|
static get DescriptionTooLongMessage() {
|
|
1269
1295
|
switch (this._cultureID) {
|
|
1270
1296
|
case CultureIDs.De_DE: return "Die Beschreibung ist zu lang: Maximal {{0}' Zeichen";
|
|
@@ -1606,6 +1632,16 @@ export class SDKUI_Localizator {
|
|
|
1606
1632
|
default: return "Bozze";
|
|
1607
1633
|
}
|
|
1608
1634
|
}
|
|
1635
|
+
static get DropFileHere() {
|
|
1636
|
+
switch (this._cultureID) {
|
|
1637
|
+
case CultureIDs.De_DE: return "Ziehen Sie Ihre Datei hierher";
|
|
1638
|
+
case CultureIDs.En_US: return "Drop your file here";
|
|
1639
|
+
case CultureIDs.Es_ES: return "Suelta tu archivo aquí";
|
|
1640
|
+
case CultureIDs.Fr_FR: return "Déposez votre fichier ici";
|
|
1641
|
+
case CultureIDs.Pt_PT: return "Solte seu arquivo aqui";
|
|
1642
|
+
default: return "Drop your file here";
|
|
1643
|
+
}
|
|
1644
|
+
}
|
|
1609
1645
|
static get DropFileToShare() {
|
|
1610
1646
|
switch (this._cultureID) {
|
|
1611
1647
|
case CultureIDs.De_DE: return "Datei zum Teilen hier ablegen";
|
|
@@ -3138,6 +3174,16 @@ export class SDKUI_Localizator {
|
|
|
3138
3174
|
default: return "Minimizza";
|
|
3139
3175
|
}
|
|
3140
3176
|
}
|
|
3177
|
+
static get Mixed() {
|
|
3178
|
+
switch (this._cultureID) {
|
|
3179
|
+
case CultureIDs.De_DE: return "Gemischt";
|
|
3180
|
+
case CultureIDs.En_US: return "Mixed";
|
|
3181
|
+
case CultureIDs.Es_ES: return "Mixto";
|
|
3182
|
+
case CultureIDs.Fr_FR: return "Mixte";
|
|
3183
|
+
case CultureIDs.Pt_PT: return "Misto";
|
|
3184
|
+
default: return "Misto";
|
|
3185
|
+
}
|
|
3186
|
+
}
|
|
3141
3187
|
static get More() {
|
|
3142
3188
|
switch (this._cultureID) {
|
|
3143
3189
|
case CultureIDs.De_DE: return "andere";
|
package/lib/helper/TMIcons.d.ts
CHANGED
|
@@ -267,5 +267,7 @@ export declare function IconNew(props: React.SVGProps<SVGSVGElement>): import("r
|
|
|
267
267
|
export declare function IconFileOpenOutline(props: Readonly<React.SVGProps<SVGSVGElement>>): import("react/jsx-runtime").JSX.Element;
|
|
268
268
|
export declare function IconArchiveDetail(props: React.SVGProps<SVGSVGElement>): import("react/jsx-runtime").JSX.Element;
|
|
269
269
|
export declare function IconArchiveMaster(props: React.SVGProps<SVGSVGElement>): import("react/jsx-runtime").JSX.Element;
|
|
270
|
+
export declare function IconPair(props: React.SVGProps<SVGSVGElement>): import("react/jsx-runtime").JSX.Element;
|
|
271
|
+
export declare function IconUnpair(props: React.SVGProps<SVGSVGElement>): import("react/jsx-runtime").JSX.Element;
|
|
270
272
|
export declare function IconBackhandIndexPointingRight(props: Readonly<React.SVGProps<SVGSVGElement>>): import("react/jsx-runtime").JSX.Element;
|
|
271
273
|
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, };
|
package/lib/helper/TMIcons.js
CHANGED
|
@@ -658,6 +658,12 @@ export function IconArchiveDetail(props) {
|
|
|
658
658
|
export function IconArchiveMaster(props) {
|
|
659
659
|
return (_jsxs("svg", { fontSize: props.fontSize ?? FONTSIZE, xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", width: "1em", height: "1em", ...props, children: [" ", _jsx("path", { fill: "currentColor", d: "m20.55 5.22l-1.39-1.68A1.51 1.51 0 0 0 18 3H6c-.47 0-.88.21-1.15.55L3.46 5.22C3.17 5.57 3 6.01 3 6.5V19a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2V6.5c0-.49-.17-.93-.45-1.28M12 9.5l5.5 5.5H14v2h-4v-2H6.5zM5.12 5l.82-1h12l.93 1z" }), " "] }));
|
|
660
660
|
}
|
|
661
|
+
export function IconPair(props) {
|
|
662
|
+
return (_jsxs("svg", { fontSize: props.fontSize ?? FONTSIZE, xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", width: "1em", height: "1em", ...props, children: [" ", _jsx("path", { fill: "currentColor", d: "M7.5 16.5h6.05c-.21.47-.37.97-.46 1.5H7.5C4.46 18 2 15.54 2 12.5S4.46 7 7.5 7H18c2.21 0 4 1.79 4 4c0 .91-.31 1.74-.83 2.41c-.54-.21-1.12-.34-1.72-.38A2.495 2.495 0 0 0 18 8.5H7.5c-2.21 0-4 1.79-4 4s1.79 4 4 4m2-3c-.55 0-1-.45-1-1s.45-1 1-1H17V10H9.5a2.5 2.5 0 0 0 0 5h5.04a6 6 0 0 1 2.07-1.5zM20 18v-3h-2v3h-3v2h3v3h2v-3h3v-2z" }), " "] }));
|
|
663
|
+
}
|
|
664
|
+
export function IconUnpair(props) {
|
|
665
|
+
return (_jsxs("svg", { fontSize: props.fontSize ?? FONTSIZE, xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", width: "1em", height: "1em", ...props, children: [" ", _jsx("path", { fill: "currentColor", d: "M16.61 13.5c-.8.35-1.5.86-2.07 1.5H9.5a2.5 2.5 0 0 1 0-5H17v1.5H9.5c-.55 0-1 .45-1 1s.45 1 1 1zm-13.11-1c0-2.21 1.79-4 4-4H18a2.495 2.495 0 0 1 1.45 4.53c.6.04 1.18.17 1.72.38c.52-.67.83-1.5.83-2.41c0-2.21-1.79-4-4-4H7.5C4.46 7 2 9.46 2 12.5S4.46 18 7.5 18h5.59c.09-.53.25-1.03.46-1.5H7.5c-2.21 0-4-1.79-4-4M15 18v2h8v-2z" }), " "] }));
|
|
666
|
+
}
|
|
661
667
|
export function IconBackhandIndexPointingRight(props) {
|
|
662
668
|
return (_jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 128 128", width: "1em", height: "1em", ...props, children: [_jsx("path", { fill: "#E0BB95", d: "M58.7 41.1c10.8.1 53.3.4 54.9.4c12.8.3 12.7 16.7.7 16.9c-1.5 0-25 1.1-32.2 1.3c5.2 2 7.5 11.9-3.1 14.9c5 2.6 6.4 12.9-4.2 14.7c3.8 2.5 4.3 10.9-6 14.2c-8.4 2.7-28.2 2-40.3-2.3c-9.1-3.3-8.4-5.8-16.7-5.6c-1.4 0-2.1-1.1-2.4-2.4c-1.3-5.9-1.9-26.3-.3-33.8c.4-1.6 1.7-1.8 2.2-1.9c2.1-.4 4.2-2.5 5-4.3c3.2-6.4 12.8-12.8 23.4-18.2c5.5-2.8 9.2-8.8 10.4-18.3c.8-6.3 8.6-7.7 11.8-2.5c2.2 3.6 2.9 7 2.9 10.4c.2 6.2-1.6 10.1-6.1 16.5" }), _jsx("defs", { children: _jsx("path", { id: "notoBackhandIndexPointingRightMediumLightSkinTone0", d: "M58.7 41.1c10.8.1 53.3.4 54.9.4c12.8.3 12.7 16.7.7 16.9c-1.5 0-25 1.1-32.2 1.3c5.2 2 7.5 11.9-3.1 14.9c5 2.6 6.4 12.9-4.2 14.7c3.8 2.5 4.3 10.9-6 14.2c-8.4 2.7-28.2 2-40.3-2.3c-9.1-3.3-8.4-5.8-16.7-5.6c-1.4 0-2.1-1.1-2.4-2.4c-1.3-5.9-1.9-26.3-.3-33.8c.4-1.6 1.7-1.8 2.2-1.9c2.1-.4 4.2-2.5 5-4.3c3.2-6.4 12.8-12.8 23.4-18.2c5.5-2.8 9.2-8.8 10.4-18.3c.8-6.3 8.6-7.7 11.8-2.5c2.2 3.6 2.9 7 2.9 10.4c.2 6.2-1.6 10.1-6.1 16.5" }) }), _jsx("clipPath", { id: "notoBackhandIndexPointingRightMediumLightSkinTone1", children: _jsx("use", { href: "#notoBackhandIndexPointingRightMediumLightSkinTone0" }) }), _jsx("g", { fill: "#D19661", clipPath: "url(#notoBackhandIndexPointingRightMediumLightSkinTone1)", children: _jsx("path", { d: "M73.3 59.5c.1 1.6 2.8 2.9 2.8 6.4c0 3.7-3 4.7-3.1 7.5c-.1 2.7 2 3.8 1.5 7.7c-.6 4.5-4.1 4-4.2 7.1c0 2.7 1.8 3.2 1.8 6.6c0 3.1-3 5.8-5.5 7s-1.2 3.4 0 3.4s11.9-1.3 14.5-8.2c3-8 11-29.6 8.8-36.9c-7.1-1-11.5-1.6-13.7-1.8c-.7-.1-2.9-.6-2.9 1.2M60.1 40.7c0 .9.1 1.5 1 1.5c1 0 43.6 2.1 51.6 2.3c9.2.2 8.7 7.6 5.9 10.1c-1.9 1.7.6 4 2.2 2.6s4.4-3.4 4.3-8.4s-4.4-8.6-8.4-8.9c-3.8-.3-56.6.8-56.6.8m-51.9 21c15.9 0 14.1-11.7 25.2-18.9c15.4-10.1 16.3-11.1 19.7-25.2c1.2-4.9 5.7-4.4 7.7-2.1s4.9-1.3 3.6-2.7s-7.8-7.7-14.8-1.1s-42 46.2-42 46.2z" }) }), _jsx("defs", { children: _jsx("use", { href: "#notoBackhandIndexPointingRightMediumLightSkinTone0", id: "notoBackhandIndexPointingRightMediumLightSkinTone2" }) }), _jsx("clipPath", { id: "notoBackhandIndexPointingRightMediumLightSkinTone3", children: _jsx("use", { href: "#notoBackhandIndexPointingRightMediumLightSkinTone2" }) }), _jsx("g", { fill: "#8D542E", clipPath: "url(#notoBackhandIndexPointingRightMediumLightSkinTone3)", children: _jsx("path", { d: "M58.7 41.1h-1.9c-.4 0-.8-.4-.2-1.3s5.8-8 5.8-15c0-3.2-.5-7.7-3.4-12.4c-.6-.9.2-1.4.9-1c.7.5 6.4 3.2 6.5 13.4s-7.7 16.3-7.7 16.3m65.1 8.8c-.5 0-1.1-.2-1.7 1c-.7 1.5-3.1 4.4-8.4 4.7s-38.1 2.5-38.9 2.5c-1.1 0-1.2 1.9.1 1.8c1.7-.1 7.2-.2 7.2-.2s30.9 1.8 36.9-.6c6.1-2.4 4.8-9.2 4.8-9.2M86.6 68.5c-.3-.1-.7-.1-1 .3c-1.5 2-4.6 3.5-10.6 3.3c-1.4 0-1.6 2.7.1 2.7c.7 0 4-.1 4-.1l6.6-.2zm-3.6 15c-.3-.1-.7-.1-1.1.4c-1.5 2-3.5 2.8-9.7 3c-1.5.1-1.4 2.6.2 2.6c1.1 0 2.4-.1 2.4-.1l7-.6zm-5.4 12.7c-.3-.1-.8-.2-1.2.4c-.8 1.1-2.9 3-7.5 4.4c-3.7 1.1-21.3 1.9-32.5-.7c-2.3-.5-9.9-3-13.6-5.3s-7.3-1.6-8.3-1.4s-6.3.7-6.3.7l2.5 3.7l27 8.6l38.5-.6z" }) })] }));
|
|
663
669
|
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import styled from 'styled-components';
|
|
3
|
+
import Toppy from '../assets/Toppy-generico.png';
|
|
4
|
+
import TMLayoutContainer from '../components/base/TMLayout';
|
|
5
|
+
const StyledToppyTextContainer = styled.div `
|
|
6
|
+
padding: 22px 8px;
|
|
7
|
+
width: 100%;
|
|
8
|
+
max-width: 300px;
|
|
9
|
+
border: 1px solid #2559A5;
|
|
10
|
+
border-radius: 30px;
|
|
11
|
+
display: flex;
|
|
12
|
+
align-items: center;
|
|
13
|
+
justify-content: center;
|
|
14
|
+
box-sizing: border-box;
|
|
15
|
+
min-height: 100px;
|
|
16
|
+
`;
|
|
17
|
+
const StyledToppyText = styled.p `
|
|
18
|
+
text-align: center;
|
|
19
|
+
color: #2559A5;
|
|
20
|
+
font-size: 1rem;
|
|
21
|
+
user-select: none;
|
|
22
|
+
margin: 0;
|
|
23
|
+
display: -webkit-box;
|
|
24
|
+
-webkit-box-orient: vertical;
|
|
25
|
+
-webkit-line-clamp: 3; /* non è una proprietà standard ma è così diffusa e ben supportata che è considerata una "best practice pragmatica" */
|
|
26
|
+
overflow: hidden;
|
|
27
|
+
text-overflow: ellipsis;
|
|
28
|
+
white-space: normal;
|
|
29
|
+
word-break: break-word;
|
|
30
|
+
line-height: 1.2;
|
|
31
|
+
`;
|
|
32
|
+
const StyledToppyImage = styled.img `
|
|
33
|
+
width: 100%;
|
|
34
|
+
max-width: 120px;
|
|
35
|
+
height: auto;
|
|
36
|
+
display: block;
|
|
37
|
+
`;
|
|
38
|
+
const TMToppyMessage = (props) => {
|
|
39
|
+
const { message, titleTooltip } = props;
|
|
40
|
+
return _jsxs(TMLayoutContainer, { gap: 30, alignItems: 'center', justifyContent: 'center', children: [_jsx(StyledToppyTextContainer, { children: _jsx(StyledToppyText, { title: titleTooltip ? titleTooltip : undefined, children: message }) }), _jsx(StyledToppyImage, { src: Toppy, alt: 'Toppy' })] });
|
|
41
|
+
};
|
|
42
|
+
export default TMToppyMessage;
|
package/lib/helper/TMUtils.d.ts
CHANGED
|
@@ -11,3 +11,10 @@ export declare const buildValueToLabelMapFromDataColumns: (columns: Array<DataCo
|
|
|
11
11
|
}>;
|
|
12
12
|
export declare const getAvatarColor: (name: string) => string;
|
|
13
13
|
export declare const extractInitialsFromName: (name: string) => string;
|
|
14
|
+
export declare const SIGN4_TOP_WIDGET_ID = "60003";
|
|
15
|
+
export declare const CREATE_CERTIFICATE_WIDGET_ID = "60003_1";
|
|
16
|
+
export declare const PDF_EDITOR_ID = "60007";
|
|
17
|
+
export declare const isWidgetEnabled: (widgetId: string, widgetsString: string) => boolean;
|
|
18
|
+
export declare const isSign4TopEnabled: (widgetsString: string) => boolean;
|
|
19
|
+
export declare const isCreateCertificateEnabled: (widgetsString: string) => boolean;
|
|
20
|
+
export declare const isPdfEditorEnabled: (widgetsString: string) => boolean;
|