@topconsultnpm/sdkui-react-beta 6.14.140 → 6.14.142
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/editors/TMMetadataValues.js +65 -6
- package/lib/components/features/blog/TMBlogCommentForm.js +1 -1
- package/lib/components/features/documents/TMDcmtBlog.js +2 -2
- package/lib/components/features/documents/TMDcmtForm.js +20 -5
- package/lib/components/features/documents/TMDcmtPreview.js +2 -2
- package/lib/components/grids/TMBlogs.js +18 -19
- package/lib/helper/SDKUI_Localizator.d.ts +3 -0
- package/lib/helper/SDKUI_Localizator.js +30 -0
- package/lib/helper/TMUtils.js +2 -1
- package/lib/ts/types.d.ts +13 -0
- package/lib/ts/types.js +12 -0
- package/package.json +2 -2
|
@@ -1,7 +1,7 @@
|
|
|
1
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 styled from "styled-components";
|
|
4
|
-
import { AccessLevels, DcmtTypeListCacheService, LayoutModes, MetadataDataDomains, MetadataDataTypes, SDK_Globals, TemplateTIDs, WorkItemMetadataNames } from '@topconsultnpm/sdk-ts-beta';
|
|
4
|
+
import { AccessLevels, DcmtTypeListCacheService, LayoutModes, MetadataDataDomains, MetadataDataTypes, SDK_Globals, SystemMIDsAsNumber, SystemTIDs, TemplateTIDs, WorkItemMetadataNames } from '@topconsultnpm/sdk-ts-beta';
|
|
5
5
|
import { IconUndo, IconPencil, IconFunction, IconMenuVertical, IconDataList, SDKUI_Localizator, IconNull, stringIsNullOrEmpty, deepCompare, SDKUI_Globals, IconDcmtTypeSys } from "../../helper";
|
|
6
6
|
import { TMColors } from "../../utils/theme";
|
|
7
7
|
import TMButton from "../base/TMButton";
|
|
@@ -10,6 +10,7 @@ import TMTooltip from "../base/TMTooltip";
|
|
|
10
10
|
import TMCheckBox from "./TMCheckBox";
|
|
11
11
|
import TMMetadataEditor, { useMetadataEditableList } from "./TMMetadataEditor";
|
|
12
12
|
import { FormulaHelper } from "./TMFormulaEditor";
|
|
13
|
+
import { DraftsMIDs } from "../../ts";
|
|
13
14
|
import { TMNothingToShow } from "../features/documents/TMDcmtPreview";
|
|
14
15
|
import TMAccordion from "../base/TMAccordion";
|
|
15
16
|
export var ShowCheckBoxesMode;
|
|
@@ -221,7 +222,7 @@ const TMMetadataValues = ({ showCheckBoxes = ShowCheckBoxesMode.Never, checkPerm
|
|
|
221
222
|
if (mvd)
|
|
222
223
|
mvd.isSelected = newValue;
|
|
223
224
|
onValueChanged?.(newValues);
|
|
224
|
-
} }), _jsxs("div", { style: { position: 'relative', height: '100%', width: '100%', opacity: showNullValueCheckBoxes && item.isNull ? 0.4 : 1 }, children: [_jsx(TMMetadataEditor, { tid: TID, mid: item.mid, layoutMode: layoutMode, isLexProt: item.isLexProt, isSelected: isOpenDistinctValues && item.mid === selectedMID, isModifiedWhen: (item.value ?? '') !== (metadataValuesOrig.find(m => m.mid === item.mid)?.value ?? ''), isReadOnly: isReadOnly || isReadOnlyOverride || (showNullValueCheckBoxes ? item.isNull : undefined), isEditable: item.isEditable, validationItems: editorValidationHandler(item.mid ?? 0), value: item.value, openChooserBySingleClick: openChooserBySingleClick, onValueChanged: (newValue) => { onChangeHandler(newValue, item.mid ?? 0); }, onValueChange: (newValue) => { onChangeHandler(newValue, item.mid ?? 0); }, queryParamsDynDataList: dynDataListsToBeRefreshed.find(o => o.mid == item.mid)?.queryParams ?? [], onCascadeRefreshDynDataLists: (ddlToBeRefreshed) => {
|
|
225
|
+
} }), _jsxs("div", { style: { position: 'relative', height: '100%', width: '100%', opacity: showNullValueCheckBoxes && item.isNull ? 0.4 : 1 }, children: [_jsx(TMMetadataEditor, { tid: TID, mid: item.mid, customLabel: item.customName, layoutMode: layoutMode, isLexProt: item.isLexProt, isSelected: isOpenDistinctValues && item.mid === selectedMID, isModifiedWhen: (item.value ?? '') !== (metadataValuesOrig.find(m => m.mid === item.mid)?.value ?? ''), isReadOnly: isReadOnly || isReadOnlyOverride || item.isReadOnly || (showNullValueCheckBoxes ? item.isNull : undefined), isEditable: item.isEditable, validationItems: editorValidationHandler(item.mid ?? 0), value: item.value, openChooserBySingleClick: openChooserBySingleClick, onValueChanged: (newValue) => { onChangeHandler(newValue, item.mid ?? 0); }, onValueChange: (newValue) => { onChangeHandler(newValue, item.mid ?? 0); }, queryParamsDynDataList: dynDataListsToBeRefreshed.find(o => o.mid == item.mid)?.queryParams ?? [], onCascadeRefreshDynDataLists: (ddlToBeRefreshed) => {
|
|
225
226
|
let newDynDataListsToBeRefreshed = [];
|
|
226
227
|
for (const item of dynDataListsToBeRefreshed) {
|
|
227
228
|
let index = ddlToBeRefreshed.findIndex(o => o.mid == item.mid || (o.mid == -1 && o.midStarter == item.midStarter));
|
|
@@ -299,11 +300,69 @@ const TMMetadataValues = ({ showCheckBoxes = ShowCheckBoxesMode.Never, checkPerm
|
|
|
299
300
|
});
|
|
300
301
|
return (_jsxs("div", { style: { width: '100%' }, children: [documentData.length > 0 && _jsx(TMAccordion, { title: SDKUI_Localizator.DocumentData, children: documentData.map(item => renderMetadataItem(item)) }), workItemData.length > 0 && _jsx(TMAccordion, { title: SDKUI_Localizator.WorkItemData, children: workItemData.map(item => renderMetadataItem(item, true)) }), technicalWorkItemData.length > 0 && _jsx(TMAccordion, { title: SDKUI_Localizator.WorkItemTechnicalData, defaultCollapsed: true, children: technicalWorkItemData.map(item => renderMetadataItem(item, true)) })] }));
|
|
301
302
|
};
|
|
303
|
+
const layoutDraft = () => {
|
|
304
|
+
// Definiamo l'ordine desiderato per gli elementi in draftData
|
|
305
|
+
const desiredDraftOrder = [
|
|
306
|
+
DraftsMIDs.Name,
|
|
307
|
+
DraftsMIDs.Description,
|
|
308
|
+
DraftsMIDs.Ver,
|
|
309
|
+
DraftsMIDs.LastVer,
|
|
310
|
+
SystemMIDsAsNumber.FileExt,
|
|
311
|
+
SystemMIDsAsNumber.FileSize,
|
|
312
|
+
SystemMIDsAsNumber.LastUpdateTime,
|
|
313
|
+
SystemMIDsAsNumber.CreationTime,
|
|
314
|
+
];
|
|
315
|
+
// Usiamo una mappa temporanea per raccogliere gli elementi per ID,
|
|
316
|
+
// in modo da poterli poi ordinare facilmente.
|
|
317
|
+
const tempDraftDataMap = {};
|
|
318
|
+
const checkOutData = [];
|
|
319
|
+
metadataValues.forEach(item => {
|
|
320
|
+
switch (item.md?.id) {
|
|
321
|
+
case DraftsMIDs.Name:
|
|
322
|
+
case DraftsMIDs.Description:
|
|
323
|
+
tempDraftDataMap[item.md.id] = item;
|
|
324
|
+
break;
|
|
325
|
+
case DraftsMIDs.Ver:
|
|
326
|
+
case DraftsMIDs.LastVer:
|
|
327
|
+
case SystemMIDsAsNumber.FileExt:
|
|
328
|
+
case SystemMIDsAsNumber.FileSize:
|
|
329
|
+
case SystemMIDsAsNumber.LastUpdateTime:
|
|
330
|
+
case SystemMIDsAsNumber.CreationTime:
|
|
331
|
+
item.isReadOnly = true;
|
|
332
|
+
tempDraftDataMap[item.md.id] = item;
|
|
333
|
+
break;
|
|
334
|
+
case DraftsMIDs.CheckOutDate:
|
|
335
|
+
case DraftsMIDs.CheckOutUserID:
|
|
336
|
+
checkOutData.push(item);
|
|
337
|
+
break;
|
|
338
|
+
default: break;
|
|
339
|
+
}
|
|
340
|
+
});
|
|
341
|
+
// Ora creiamo l'array draftData finale nell'ordine desiderato
|
|
342
|
+
const draftData = [];
|
|
343
|
+
desiredDraftOrder.forEach(id => {
|
|
344
|
+
if (tempDraftDataMap[id]) {
|
|
345
|
+
draftData.push(tempDraftDataMap[id]);
|
|
346
|
+
}
|
|
347
|
+
});
|
|
348
|
+
return (_jsxs("div", { style: { width: '100%' }, children: [draftData.length > 0 && _jsx(TMAccordion, { title: SDKUI_Localizator.Draft, children: draftData.map(item => renderMetadataItem(item)) }), checkOutData.length > 0 && _jsx(TMAccordion, { title: `${SDKUI_Localizator.CheckIn}/${SDKUI_Localizator.CheckOut}`, children: checkOutData.map(item => renderMetadataItem(item, true)) })] }));
|
|
349
|
+
};
|
|
350
|
+
const renderForm = () => {
|
|
351
|
+
if (currentDTD?.templateTID === TemplateTIDs.WF_WIApprView && !isReadOnly) {
|
|
352
|
+
return layoutWorkItem();
|
|
353
|
+
}
|
|
354
|
+
switch (currentDTD?.id) {
|
|
355
|
+
case SystemTIDs.Drafts: return !isReadOnly ? layoutDraft() : metadataValues.map((item) => renderMetadataItem(item));
|
|
356
|
+
// case SystemTIDs.Chronology: break;
|
|
357
|
+
// case SystemTIDs.DSAttachs: break;
|
|
358
|
+
default:
|
|
359
|
+
// Condizione di default se nessuna delle precedenti condizioni è vera
|
|
360
|
+
return metadataValues.map((item) => renderMetadataItem(item));
|
|
361
|
+
}
|
|
362
|
+
};
|
|
302
363
|
return (_jsx(StyledMetadataValuesContainer, { children: !TID ?
|
|
303
|
-
_jsx(TMNothingToShow, { text:
|
|
304
|
-
_jsx(_Fragment, { children:
|
|
305
|
-
layoutWorkItem() :
|
|
306
|
-
metadataValues.map((item) => renderMetadataItem(item)) }) }));
|
|
364
|
+
_jsx(TMNothingToShow, { text: `${SDKUI_Localizator.NoDcmtSelected}.`, secondText: `${SDKUI_Localizator.MetadataSystem} - ${SDKUI_Localizator.NotAvailable}`, icon: _jsx(IconDcmtTypeSys, { fontSize: 96 }) }) :
|
|
365
|
+
_jsx(_Fragment, { children: renderForm() }) }));
|
|
307
366
|
};
|
|
308
367
|
export default TMMetadataValues;
|
|
309
368
|
//#region Styled Components
|
|
@@ -31,7 +31,7 @@ const TMBlogCommentForm = (props) => {
|
|
|
31
31
|
const { participants, selectedAttachments, selectedAttachmentDid, allFileItems, allArchivedDocumentsFileItems = [], onClose, refreshCallback, context, showAttachmentsSection = true, updateShouldSelectLastBlog } = props;
|
|
32
32
|
// Initialize state with combined array
|
|
33
33
|
const [dataSource, setDataSource] = useState(() => [...getNonDirectoryFiles(allFileItems?.items || [], []), ...allArchivedDocumentsFileItems]);
|
|
34
|
-
const [isEditorEnabled, setIsEditorEnabled] = useState(
|
|
34
|
+
const [isEditorEnabled, setIsEditorEnabled] = useState(true);
|
|
35
35
|
const [showAttachmentsForm, setShowAttachmentsForm] = useState(false);
|
|
36
36
|
const [mentionsConfig, setMentionsConfig] = useState([]);
|
|
37
37
|
// Get the current device type (e.g., mobile, tablet, desktop) using a custom hook.
|
|
@@ -6,7 +6,7 @@ import { TMExceptionBoxManager } from '../../base/TMPopUp';
|
|
|
6
6
|
import TMSpinner from '../../base/TMSpinner';
|
|
7
7
|
import TMBlogs from '../../grids/TMBlogs';
|
|
8
8
|
import { TMNothingToShow } from './TMDcmtPreview';
|
|
9
|
-
import { IconBoard } from '../../../helper';
|
|
9
|
+
import { IconBoard, SDKUI_Localizator } from '../../../helper';
|
|
10
10
|
import TMBlogCommentForm from '../blog/TMBlogCommentForm';
|
|
11
11
|
const TMDcmtBlog = ({ tid, did, isVisible }) => {
|
|
12
12
|
const [blogsDatasource, setBlogsDatasource] = useState([]);
|
|
@@ -57,7 +57,7 @@ const TMDcmtBlog = ({ tid, did, isVisible }) => {
|
|
|
57
57
|
const refreshCallback = async () => {
|
|
58
58
|
await fetchDataAsync(tid, did);
|
|
59
59
|
};
|
|
60
|
-
return (_jsxs("div", { style: { width: '100%', height: '100%' }, children: [_jsx(StyledContainer, { children: _jsx(StyledSectionContainer, { style: { position: 'relative' }, children: _jsx(StyledBoardContainer, { children: !did ? _jsx(TMNothingToShow, { text:
|
|
60
|
+
return (_jsxs("div", { style: { width: '100%', height: '100%' }, children: [_jsx(StyledContainer, { children: _jsx(StyledSectionContainer, { style: { position: 'relative' }, children: _jsx(StyledBoardContainer, { children: !did ? _jsx(TMNothingToShow, { text: `${SDKUI_Localizator.NoDcmtSelected}.`, secondText: `${SDKUI_Localizator.BlogCase} - ${SDKUI_Localizator.NotAvailable}`, icon: _jsx(IconBoard, { fontSize: 96 }) }) :
|
|
61
61
|
_jsx(TMBlogs, { context: { engine: 'SearchEngine', object: { tid, did } }, id: "dcmt-blog", allData: blogsDatasource, showExtendedAttachments: false, showFloatingCommentButton: true, showCommentFormCallback: showCommentFormCallback, refreshCallback: refreshCallback, contextMenuParams: {
|
|
62
62
|
isShowHideFilterEnabled: true,
|
|
63
63
|
isShowHideIDEnaled: true,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { useEffect, useMemo, useState } from 'react';
|
|
3
3
|
import TMDcmtPreview from './TMDcmtPreview';
|
|
4
|
-
import { AccessLevels, ArchiveConstraints, ArchiveEngineByID, DcmtTypeListCacheService, LayoutModes, MetadataDataTypes, ResultTypes, SDK_Globals, SDK_Localizator, SystemMIDsAsNumber, Task_States, TemplateTIDs, TID_DID, UpdateEngineByID, ValidationItem } from '@topconsultnpm/sdk-ts-beta';
|
|
4
|
+
import { AccessLevels, ArchiveConstraints, ArchiveEngineByID, DcmtTypeListCacheService, LayoutModes, MetadataDataTypes, ResultTypes, SDK_Globals, SDK_Localizator, SystemMIDsAsNumber, SystemTIDs, Task_States, TemplateTIDs, TID_DID, UpdateEngineByID, ValidationItem } from '@topconsultnpm/sdk-ts-beta';
|
|
5
5
|
import { ContextMenu } from 'devextreme-react';
|
|
6
6
|
import { WorkFlowApproveRejectPopUp, WorkFlowMoreInfoPopUp, WorkFlowOperationButtons, WorkFlowReAssignPopUp } from '../workflow/TMWorkflowPopup';
|
|
7
7
|
import { DownloadTypes, FormModes } from '../../../ts';
|
|
@@ -424,11 +424,11 @@ const TMDcmtForm = ({ showHeader = true, onSaveRecents, layoutMode = LayoutModes
|
|
|
424
424
|
const listMaxItems = getListMaxItems(deviceType ?? DeviceType.DESKTOP);
|
|
425
425
|
const totalItems = formData.filter(o => o.mid && o.mid > 100).length;
|
|
426
426
|
const metadataValuesSource = useMemo(() => {
|
|
427
|
-
return
|
|
428
|
-
}, [showAll, formData]);
|
|
427
|
+
return applyMetadataFilter(formData, showAll, listMaxItems, TID);
|
|
428
|
+
}, [showAll, formData, listMaxItems, TID]); // Aggiungi TID e listMaxItems alle dipendenze
|
|
429
429
|
const metadataValuesSourceOrig = useMemo(() => {
|
|
430
|
-
return
|
|
431
|
-
}, [showAll, formDataOrig]);
|
|
430
|
+
return applyMetadataFilter(formDataOrig, showAll, listMaxItems, TID);
|
|
431
|
+
}, [showAll, formDataOrig, listMaxItems, TID]);
|
|
432
432
|
const handleClose = () => {
|
|
433
433
|
if (!isModified) {
|
|
434
434
|
onClose?.();
|
|
@@ -659,6 +659,21 @@ const TMDcmtForm = ({ showHeader = true, onSaveRecents, layoutMode = LayoutModes
|
|
|
659
659
|
: renderDcmtForm() }));
|
|
660
660
|
};
|
|
661
661
|
export default TMDcmtForm;
|
|
662
|
+
// Funzione di utilità per applicare la logica di filtro
|
|
663
|
+
const applyMetadataFilter = (data, showAll, listMaxItems, TID) => {
|
|
664
|
+
// funzione di filtro base
|
|
665
|
+
const baseFilter = (o) => o.mid && o.mid > 100;
|
|
666
|
+
// funzione di filtro per il caso Draft
|
|
667
|
+
const draftFilter = (o) => baseFilter(o) ||
|
|
668
|
+
o.mid === SystemMIDsAsNumber.FileExt ||
|
|
669
|
+
o.mid === SystemMIDsAsNumber.FileSize ||
|
|
670
|
+
o.mid === SystemMIDsAsNumber.LastUpdateTime ||
|
|
671
|
+
o.mid === SystemMIDsAsNumber.CreationTime;
|
|
672
|
+
// Scegli il filtro appropriato
|
|
673
|
+
const currentFilter = TID === SystemTIDs.Drafts ? draftFilter : baseFilter;
|
|
674
|
+
const filteredData = data.filter(currentFilter);
|
|
675
|
+
return showAll ? filteredData : filteredData.slice(0, listMaxItems);
|
|
676
|
+
};
|
|
662
677
|
//#region Validaion
|
|
663
678
|
const validateMetadataList = (mvdList = []) => {
|
|
664
679
|
if (!Array.isArray(mvdList)) {
|
|
@@ -426,9 +426,9 @@ export const TMNothingToShow = ({ text = '', secondText, fileExt, icon = _jsx(Ic
|
|
|
426
426
|
};
|
|
427
427
|
const renderedPreview = (tid, did, fileExt, fileSize, fileCount, extHandler, showPreview, isResizingActive, onDownloadShowPreviewClick, dcmtBlob) => {
|
|
428
428
|
if (!did)
|
|
429
|
-
return _jsx(TMNothingToShow, { text:
|
|
429
|
+
return _jsx(TMNothingToShow, { text: `${SDKUI_Localizator.NoDcmtSelected}.` });
|
|
430
430
|
if (fileCount == 0) {
|
|
431
|
-
return _jsx(TMNothingToShow, { text:
|
|
431
|
+
return _jsx(TMNothingToShow, { text: SDKUI_Localizator.MetadataOnlyDocument });
|
|
432
432
|
}
|
|
433
433
|
if (fileExt && extHandler === FileExtensionHandler.NONE) {
|
|
434
434
|
return _jsx(TMNothingToShow, { fileExt: fileExt });
|
|
@@ -216,14 +216,6 @@ const TMBlogs = (props) => {
|
|
|
216
216
|
const isDeleted = focusedBlog && (focusedBlog.isDel !== undefined && focusedBlog.isDel !== 0);
|
|
217
217
|
const isInvalid = focusedBlog === undefined;
|
|
218
218
|
let menuItemsElements = [
|
|
219
|
-
{
|
|
220
|
-
icon: "chat",
|
|
221
|
-
text: SDKUI_Localizator.Comment,
|
|
222
|
-
visible: contextMenuParams.isCommentEnabled,
|
|
223
|
-
disabled: isGroupArchived ? true : false,
|
|
224
|
-
onClick: () => { if (showCommentFormCallback)
|
|
225
|
-
showCommentFormCallback(); },
|
|
226
|
-
},
|
|
227
219
|
{
|
|
228
220
|
icon: "download",
|
|
229
221
|
text: 'Download',
|
|
@@ -232,26 +224,27 @@ const TMBlogs = (props) => {
|
|
|
232
224
|
onClick: downloadAttachment,
|
|
233
225
|
},
|
|
234
226
|
{
|
|
235
|
-
icon:
|
|
236
|
-
text:
|
|
227
|
+
icon: 'eyeopen',
|
|
228
|
+
text: SDKUI_Localizator.OpenForm,
|
|
237
229
|
visible: contextMenuParams.isViewEditMetadata && focusedAttachment !== undefined,
|
|
238
230
|
disabled: focusedAttachment === undefined,
|
|
239
231
|
onClick: () => setShowDcmtForm(true),
|
|
240
232
|
},
|
|
233
|
+
{
|
|
234
|
+
icon: "chat",
|
|
235
|
+
text: SDKUI_Localizator.Comment,
|
|
236
|
+
visible: contextMenuParams.isCommentEnabled,
|
|
237
|
+
disabled: isGroupArchived ? true : false,
|
|
238
|
+
onClick: () => { if (showCommentFormCallback)
|
|
239
|
+
showCommentFormCallback(); },
|
|
240
|
+
beginGroup: true
|
|
241
|
+
},
|
|
241
242
|
{
|
|
242
243
|
icon: "trash",
|
|
243
244
|
text: SDKUI_Localizator.Delete,
|
|
244
245
|
visible: contextMenuParams.isDeleteEnabled,
|
|
245
246
|
onClick: () => deleteOrUndeleteCommentCallback(true),
|
|
246
247
|
disabled: isNotOwner || isInvalid || isDeleted || isGroupArchived,
|
|
247
|
-
beginGroup: true
|
|
248
|
-
},
|
|
249
|
-
{
|
|
250
|
-
text: SDKUI_Localizator.CopyToClipboard,
|
|
251
|
-
visible: contextMenuParams.isCopyToClipboardEnabled,
|
|
252
|
-
icon: 'copy',
|
|
253
|
-
disabled: isInvalid,
|
|
254
|
-
onClick: () => { copyInClipboard(focusedBlog); }
|
|
255
248
|
},
|
|
256
249
|
{
|
|
257
250
|
icon: "undo",
|
|
@@ -260,6 +253,13 @@ const TMBlogs = (props) => {
|
|
|
260
253
|
onClick: () => deleteOrUndeleteCommentCallback(false),
|
|
261
254
|
disabled: isNotOwner || isInvalid || (focusedBlog && (focusedBlog.isDel === undefined || focusedBlog.isDel === 0)),
|
|
262
255
|
},
|
|
256
|
+
{
|
|
257
|
+
text: SDKUI_Localizator.CopyToClipboard,
|
|
258
|
+
visible: contextMenuParams.isCopyToClipboardEnabled,
|
|
259
|
+
icon: 'copy',
|
|
260
|
+
disabled: isInvalid,
|
|
261
|
+
onClick: () => { copyInClipboard(focusedBlog); }
|
|
262
|
+
},
|
|
263
263
|
{
|
|
264
264
|
text: SDKUI_Localizator.CreateContextualTask,
|
|
265
265
|
icon: 'plus',
|
|
@@ -290,7 +290,6 @@ const TMBlogs = (props) => {
|
|
|
290
290
|
visible: contextMenuParams.isRefreshEnabled,
|
|
291
291
|
onClick: refresh,
|
|
292
292
|
disabled: false,
|
|
293
|
-
beginGroup: true
|
|
294
293
|
},
|
|
295
294
|
];
|
|
296
295
|
return menuItemsElements;
|
|
@@ -127,6 +127,7 @@ export declare class SDKUI_Localizator {
|
|
|
127
127
|
static get DownloadFile(): string;
|
|
128
128
|
static get Download_in_Process(): "Download läuft" | "Download in progress" | "Descarga en curso" | "Téléchargement en cours" | "Download em progresso" | "Download in corso";
|
|
129
129
|
static get DownloadXMLAttachments(): string;
|
|
130
|
+
static get Draft(): string;
|
|
130
131
|
static get Drafts(): string;
|
|
131
132
|
static get Duplicate(): "Duplikat" | "Duplicate" | "Duplicar" | "Dupliquer" | "Duplicado" | "Duplica";
|
|
132
133
|
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}}'?";
|
|
@@ -290,11 +291,13 @@ export declare class SDKUI_Localizator {
|
|
|
290
291
|
static get NoCredentialsSaved(): "Keine gespeicherten Anmeldedaten" | "No credentials saved" | "No se han guardado credenciales" | "Aucune information d'identification enregistrée" | "Nenhuma credencial salva" | "Nessuna credenziale salvata";
|
|
291
292
|
static get NoDataToDisplay(): "Keine Daten zum Anzeigen" | "No data to display" | "No hay datos para mostrar" | "Aucune donnée à afficher" | "Sem dados para exibir" | "Nessun dato da visualizzare";
|
|
292
293
|
static get NoDcmtFound(): "Kein Dokument gefunden" | "No documents found" | "Ningún documento encontrado" | "Pas de documents trouvés" | "Nenhum documento encontrado" | "Nessun documento trovato";
|
|
294
|
+
static get NoDcmtSelected(): string;
|
|
293
295
|
static get NoMessages(): string;
|
|
294
296
|
static get NoMessagesFound(): string;
|
|
295
297
|
static get NoPanelSelected(): string;
|
|
296
298
|
static get NoResultsFound(): string;
|
|
297
299
|
static get NoneSelection(): "Keine Auswahl" | "No selection" | "Ninguna selección" | "Pas de sélections" | "Nenhuma seleção" | "Nessuna selezione";
|
|
300
|
+
static get NotAvailable(): string;
|
|
298
301
|
static get OfSystem(): "Des Systems" | "Of system" | "Del sistema" | "Du système" | "Do sistema" | "Di sistema";
|
|
299
302
|
static get OldPassword(): "Altes Kennwort" | "Old password" | "Contraseña anterior" | "Ancien mot de passe" | "Senha Antiga" | "Password vecchia";
|
|
300
303
|
static get OpenForm(): string;
|
|
@@ -1219,6 +1219,16 @@ export class SDKUI_Localizator {
|
|
|
1219
1219
|
default: return "Download allegati XML"; // Italiano come default
|
|
1220
1220
|
}
|
|
1221
1221
|
}
|
|
1222
|
+
static get Draft() {
|
|
1223
|
+
switch (this._cultureID) {
|
|
1224
|
+
case CultureIDs.De_DE: return "Entwurf";
|
|
1225
|
+
case CultureIDs.En_US: return "Draft";
|
|
1226
|
+
case CultureIDs.Es_ES: return "Borrador";
|
|
1227
|
+
case CultureIDs.Fr_FR: return "Brouillon";
|
|
1228
|
+
case CultureIDs.Pt_PT: return "Rascunho";
|
|
1229
|
+
default: return "Bozza";
|
|
1230
|
+
}
|
|
1231
|
+
}
|
|
1222
1232
|
static get Drafts() {
|
|
1223
1233
|
switch (this._cultureID) {
|
|
1224
1234
|
case CultureIDs.De_DE: return "Entwürfe";
|
|
@@ -2851,6 +2861,16 @@ export class SDKUI_Localizator {
|
|
|
2851
2861
|
default: return "Nessun documento trovato";
|
|
2852
2862
|
}
|
|
2853
2863
|
}
|
|
2864
|
+
static get NoDcmtSelected() {
|
|
2865
|
+
switch (this._cultureID) {
|
|
2866
|
+
case CultureIDs.De_DE: return "Kein Dokument ausgewählt";
|
|
2867
|
+
case CultureIDs.En_US: return "No document selected";
|
|
2868
|
+
case CultureIDs.Es_ES: return "Ningún documento seleccionado";
|
|
2869
|
+
case CultureIDs.Fr_FR: return "Aucun document sélectionné";
|
|
2870
|
+
case CultureIDs.Pt_PT: return "Nenhum documento selecionado";
|
|
2871
|
+
default: return "Nessun documento selezionato";
|
|
2872
|
+
}
|
|
2873
|
+
}
|
|
2854
2874
|
static get NoMessages() {
|
|
2855
2875
|
switch (this._cultureID) {
|
|
2856
2876
|
case CultureIDs.De_DE: return "Keine Nachrichten vorhanden";
|
|
@@ -2901,6 +2921,16 @@ export class SDKUI_Localizator {
|
|
|
2901
2921
|
default: return "Nessuna selezione";
|
|
2902
2922
|
}
|
|
2903
2923
|
}
|
|
2924
|
+
static get NotAvailable() {
|
|
2925
|
+
switch (this._cultureID) {
|
|
2926
|
+
case CultureIDs.De_DE: return "Nicht verfügbar";
|
|
2927
|
+
case CultureIDs.En_US: return "Not available";
|
|
2928
|
+
case CultureIDs.Es_ES: return "No disponible";
|
|
2929
|
+
case CultureIDs.Fr_FR: return "Non disponible";
|
|
2930
|
+
case CultureIDs.Pt_PT: return "Não disponível";
|
|
2931
|
+
default: return "Non disponibile";
|
|
2932
|
+
}
|
|
2933
|
+
}
|
|
2904
2934
|
static get OfSystem() {
|
|
2905
2935
|
switch (this._cultureID) {
|
|
2906
2936
|
case CultureIDs.De_DE: return "Des Systems";
|
package/lib/helper/TMUtils.js
CHANGED
|
@@ -2,6 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import styled from "styled-components";
|
|
3
3
|
import { TMTooltip } from '../components';
|
|
4
4
|
import { IconKey } from './TMIcons';
|
|
5
|
+
import { SDKUI_Localizator } from './SDKUI_Localizator';
|
|
5
6
|
const StyledIconFileContainer = styled.div `
|
|
6
7
|
height: 22px;
|
|
7
8
|
width: 18px;
|
|
@@ -81,7 +82,7 @@ export const getFileIcon = (fileExtension, fileCount, tooltipContent) => {
|
|
|
81
82
|
break;
|
|
82
83
|
}
|
|
83
84
|
return (_jsx(StyledIconFileContainer, { children: _jsx(StyledIconFileExt, { "$backgroundColor": (fileCount === 0 || !fileExtension) ? "#424040" : fileBgColor, "$color": fileColor, children: (fileCount === 0 || !fileExtOri)
|
|
84
|
-
? _jsxs(TMTooltip, { content:
|
|
85
|
+
? _jsxs(TMTooltip, { content: SDKUI_Localizator.MetadataOnlyDocument, children: [" ", _jsx(IconKey, { fontSize: 17, color: '#f8d775' }), " "] })
|
|
85
86
|
: _jsx(TMTooltip, { content: tooltipContent ?? fileExtOri, children: fileExtension.toUpperCase() }) }) }));
|
|
86
87
|
};
|
|
87
88
|
export function formatBytes(bytes, decimalPlaces = 2) {
|
package/lib/ts/types.d.ts
CHANGED
|
@@ -49,6 +49,17 @@ export declare enum SearchResultContext {
|
|
|
49
49
|
FREE_SEARCH = "freeSearch",
|
|
50
50
|
MASTER_DETAIL = "masterDetail"
|
|
51
51
|
}
|
|
52
|
+
export declare enum DraftsMIDs {
|
|
53
|
+
WGID = 6001,
|
|
54
|
+
Name = 6002,
|
|
55
|
+
Description = 6003,
|
|
56
|
+
CheckOutUserID = 6004,
|
|
57
|
+
CheckOutDate = 6005,
|
|
58
|
+
FolderID = 6006,
|
|
59
|
+
DraftID = 6007,// ID della bozza che raggruppa tutte le versioni
|
|
60
|
+
Ver = 6008,// N° di versione della bozza
|
|
61
|
+
LastVer = 6009
|
|
62
|
+
}
|
|
52
63
|
export type DownloadModes = "none" | "download" | "openInNewWindow";
|
|
53
64
|
export type TID_MID = {
|
|
54
65
|
tid: number | undefined;
|
|
@@ -71,8 +82,10 @@ export declare class MetadataValueDescriptorEx extends MetadataValueDescriptor {
|
|
|
71
82
|
isEditable?: boolean;
|
|
72
83
|
isLexProt?: number;
|
|
73
84
|
isSelected?: boolean;
|
|
85
|
+
isReadOnly?: boolean;
|
|
74
86
|
isNull?: boolean;
|
|
75
87
|
formulaValue?: string;
|
|
88
|
+
customName?: string;
|
|
76
89
|
}
|
|
77
90
|
export type TaskContext = {
|
|
78
91
|
workingGroup?: {
|
package/lib/ts/types.js
CHANGED
|
@@ -53,6 +53,18 @@ export var SearchResultContext;
|
|
|
53
53
|
SearchResultContext["FREE_SEARCH"] = "freeSearch";
|
|
54
54
|
SearchResultContext["MASTER_DETAIL"] = "masterDetail";
|
|
55
55
|
})(SearchResultContext || (SearchResultContext = {}));
|
|
56
|
+
export var DraftsMIDs;
|
|
57
|
+
(function (DraftsMIDs) {
|
|
58
|
+
DraftsMIDs[DraftsMIDs["WGID"] = 6001] = "WGID";
|
|
59
|
+
DraftsMIDs[DraftsMIDs["Name"] = 6002] = "Name";
|
|
60
|
+
DraftsMIDs[DraftsMIDs["Description"] = 6003] = "Description";
|
|
61
|
+
DraftsMIDs[DraftsMIDs["CheckOutUserID"] = 6004] = "CheckOutUserID";
|
|
62
|
+
DraftsMIDs[DraftsMIDs["CheckOutDate"] = 6005] = "CheckOutDate";
|
|
63
|
+
DraftsMIDs[DraftsMIDs["FolderID"] = 6006] = "FolderID";
|
|
64
|
+
DraftsMIDs[DraftsMIDs["DraftID"] = 6007] = "DraftID";
|
|
65
|
+
DraftsMIDs[DraftsMIDs["Ver"] = 6008] = "Ver";
|
|
66
|
+
DraftsMIDs[DraftsMIDs["LastVer"] = 6009] = "LastVer"; // Ultima versione? (0 | 1)
|
|
67
|
+
})(DraftsMIDs || (DraftsMIDs = {}));
|
|
56
68
|
export class MetadataValueDescriptorEx extends MetadataValueDescriptor {
|
|
57
69
|
}
|
|
58
70
|
export var moduleTypes;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@topconsultnpm/sdkui-react-beta",
|
|
3
|
-
"version": "6.14.
|
|
3
|
+
"version": "6.14.142",
|
|
4
4
|
"description": "",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"test": "echo \"Error: no test specified\" && exit 1",
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"lib"
|
|
43
43
|
],
|
|
44
44
|
"dependencies": {
|
|
45
|
-
"@topconsultnpm/sdk-ts-beta": "6.14.
|
|
45
|
+
"@topconsultnpm/sdk-ts-beta": "6.14.22",
|
|
46
46
|
"buffer": "^6.0.3",
|
|
47
47
|
"devextreme": "24.2.6",
|
|
48
48
|
"devextreme-react": "24.2.6",
|