@topconsultnpm/sdkui-react 6.19.0-dev1.33 → 6.19.0-dev1.35
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.
|
@@ -10,7 +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
|
+
import { DraftsMIDs, DSAttachsMIDs } from "../../ts";
|
|
14
14
|
import { TMNothingToShow } from "../features/documents/TMDcmtPreview";
|
|
15
15
|
import TMAccordion from "../base/TMAccordion";
|
|
16
16
|
export var ShowCheckBoxesMode;
|
|
@@ -384,7 +384,22 @@ const TMMetadataValues = ({ showCheckBoxes = ShowCheckBoxesMode.Never, checkPerm
|
|
|
384
384
|
checkOutData.push(tempCICODataMap[id]);
|
|
385
385
|
}
|
|
386
386
|
});
|
|
387
|
-
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)) })] }));
|
|
387
|
+
return (_jsxs("div", { style: { width: '100%' }, children: [draftData.length > 0 && _jsx(TMAccordion, { title: SDKUI_Localizator.Draft, children: draftData.map(item => renderMetadataItem(item, isReadOnly)) }), checkOutData.length > 0 && _jsx(TMAccordion, { title: `${SDKUI_Localizator.CheckIn}/${SDKUI_Localizator.CheckOut}`, children: checkOutData.map(item => renderMetadataItem(item, true)) })] }));
|
|
388
|
+
};
|
|
389
|
+
const layoutDsAttachs = () => {
|
|
390
|
+
const dsAttachsData = [];
|
|
391
|
+
metadataValues.forEach(item => {
|
|
392
|
+
switch (item.md?.id) {
|
|
393
|
+
// case DSAttachsMIDs.DSID:
|
|
394
|
+
case DSAttachsMIDs.Name:
|
|
395
|
+
case DSAttachsMIDs.Description:
|
|
396
|
+
dsAttachsData.push(item);
|
|
397
|
+
break;
|
|
398
|
+
default:
|
|
399
|
+
break;
|
|
400
|
+
}
|
|
401
|
+
});
|
|
402
|
+
return (_jsx("div", { style: { width: '100%' }, children: dsAttachsData.length > 0 && _jsx(TMAccordion, { title: SDKUI_Localizator.Attachment, children: dsAttachsData.map(item => renderMetadataItem(item, isReadOnly)) }) }));
|
|
388
403
|
};
|
|
389
404
|
const layoutCustom = () => {
|
|
390
405
|
if (!layout || !layout.items || layout.items.length === 0) {
|
|
@@ -437,13 +452,18 @@ const TMMetadataValues = ({ showCheckBoxes = ShowCheckBoxesMode.Never, checkPerm
|
|
|
437
452
|
return (_jsx("div", { style: { width: '100%' }, children: rootItems.map(item => renderLayoutItem(item, 0)) }));
|
|
438
453
|
};
|
|
439
454
|
const renderForm = () => {
|
|
455
|
+
// Se tutti i metadata sono di sistema, renderizziamo tutti in sola lettura senza layout
|
|
456
|
+
const allSystem = metadataValues.length > 0 && metadataValues.every(item => item.md?.isSystem === 1);
|
|
457
|
+
if (allSystem) {
|
|
458
|
+
return metadataValues.map((item) => renderMetadataItem(item, true));
|
|
459
|
+
}
|
|
440
460
|
if (currentDTD?.templateTID === TemplateTIDs.WF_WIApprView && !isReadOnly) {
|
|
441
461
|
return layoutWorkItem();
|
|
442
462
|
}
|
|
443
463
|
switch (currentDTD?.id) {
|
|
444
|
-
case SystemTIDs.Drafts: return
|
|
464
|
+
case SystemTIDs.Drafts: return layoutDraft();
|
|
445
465
|
// case SystemTIDs.Chronology: break;
|
|
446
|
-
|
|
466
|
+
case SystemTIDs.DSAttachs: return layoutDsAttachs();
|
|
447
467
|
default:
|
|
448
468
|
// Se è presente un layout personalizzato, usalo, altrimenti usa il rendering standard
|
|
449
469
|
if (layout && layout.items && layout.items.length > 0) {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
|
|
3
3
|
import TMDcmtPreview from './TMDcmtPreview';
|
|
4
|
-
import { AccessLevels, ArchiveConstraints, ArchiveEngineByID, DcmtTypeListCacheService, LayoutModes, MetadataDataTypes, ResultTypes, SDK_Globals, SDK_Localizator, SystemMIDsAsNumber, SystemTIDs, Task_States, TemplateTIDs, UpdateEngineByID, ValidationItem, WorkflowCacheService, WorkItemMetadataNames } from '@topconsultnpm/sdk-ts';
|
|
4
|
+
import { AccessLevels, ArchiveConstraints, ArchiveEngineByID, DcmtTypeListCacheService, LayoutCacheService, LayoutModes, MetadataDataTypes, ResultTypes, SDK_Globals, SDK_Localizator, SystemMIDsAsNumber, SystemTIDs, Task_States, TemplateTIDs, UpdateEngineByID, ValidationItem, WorkflowCacheService, WorkItemMetadataNames } from '@topconsultnpm/sdk-ts';
|
|
5
5
|
import { ContextMenu } from 'devextreme-react';
|
|
6
6
|
import { WorkFlowApproveRejectPopUp, WorkFlowMoreInfoPopUp, WorkFlowOperationButtons, WorkFlowReAssignPopUp } from '../workflow/TMWorkflowPopup';
|
|
7
7
|
import { DownloadTypes, FormModes } from '../../../ts';
|
|
@@ -154,8 +154,9 @@ const TMDcmtForm = ({ showHeader = true, onSaveRecents, layoutMode = LayoutModes
|
|
|
154
154
|
if (!DID && layoutMode === LayoutModes.Update)
|
|
155
155
|
return;
|
|
156
156
|
let getMetadataResult;
|
|
157
|
-
if (layoutMode === LayoutModes.Update)
|
|
157
|
+
if (layoutMode === LayoutModes.Update) {
|
|
158
158
|
getMetadataResult = await SDK_Globals.tmSession?.NewSearchEngine().GetMetadataAsync(TID, DID, true);
|
|
159
|
+
}
|
|
159
160
|
let dtd = await DcmtTypeListCacheService.GetWithNotGrantedAsync(TID, DID, getMetadataResult);
|
|
160
161
|
setFromDTD(dtd);
|
|
161
162
|
if (layoutMode === LayoutModes.Update || (layoutMode === LayoutModes.Ark && DID)) {
|
|
@@ -168,7 +169,7 @@ const TMDcmtForm = ({ showHeader = true, onSaveRecents, layoutMode = LayoutModes
|
|
|
168
169
|
setFormData(structuredClone(metadataList));
|
|
169
170
|
formDataOrigRef.current = structuredClone(metadataList);
|
|
170
171
|
}
|
|
171
|
-
let resLayout = await
|
|
172
|
+
let resLayout = await LayoutCacheService.GetAsync(TID, layoutMode);
|
|
172
173
|
setLayout(resLayout);
|
|
173
174
|
(layoutMode === LayoutModes.Ark && !inputFile) && handleReset();
|
|
174
175
|
}
|
|
@@ -283,9 +284,11 @@ const TMDcmtForm = ({ showHeader = true, onSaveRecents, layoutMode = LayoutModes
|
|
|
283
284
|
return;
|
|
284
285
|
if (!formData || formData.length === 0)
|
|
285
286
|
return;
|
|
287
|
+
// Check if formData has actual user metadata (mid > 99), not just system metadata
|
|
288
|
+
if (!formData.some(md => md.mid && md.mid > 99))
|
|
289
|
+
return;
|
|
286
290
|
if (appliedInputMidsRef.current && deepCompare(appliedInputMidsRef.current, inputMids))
|
|
287
291
|
return;
|
|
288
|
-
appliedInputMidsRef.current = inputMids;
|
|
289
292
|
let data = structuredClone(formData);
|
|
290
293
|
for (let md of data) {
|
|
291
294
|
if (!md.mid)
|
|
@@ -316,6 +319,7 @@ const TMDcmtForm = ({ showHeader = true, onSaveRecents, layoutMode = LayoutModes
|
|
|
316
319
|
}
|
|
317
320
|
});
|
|
318
321
|
setFormData(data);
|
|
322
|
+
appliedInputMidsRef.current = inputMids;
|
|
319
323
|
}, [inputMids, layoutMode, formData, formDataOrig]);
|
|
320
324
|
// Memoizza solo il valore WI_SetID per evitare re-render quando altri metadata cambiano
|
|
321
325
|
const workItemSetIDValue = useMemo(() => formData.find(o => o.md?.name === WorkItemMetadataNames.WI_SetID)?.value, [formData]);
|
package/lib/ts/types.d.ts
CHANGED
|
@@ -61,6 +61,19 @@ export declare enum DraftsMIDs {
|
|
|
61
61
|
Ver = 6008,// N° di versione della bozza
|
|
62
62
|
LastVer = 6009
|
|
63
63
|
}
|
|
64
|
+
export declare enum DSAttachsMIDs {
|
|
65
|
+
DSID = 7001,
|
|
66
|
+
Name = 7002,
|
|
67
|
+
Description = 7003
|
|
68
|
+
}
|
|
69
|
+
export declare enum ChronologyMIDs {
|
|
70
|
+
RefRootTID = 15001,
|
|
71
|
+
RefDID = 15002,
|
|
72
|
+
Ver = 15003,
|
|
73
|
+
AuthorID = 15004,
|
|
74
|
+
CheckInTime = 15005,
|
|
75
|
+
Note = 15006
|
|
76
|
+
}
|
|
64
77
|
export type DownloadModes = "none" | "download" | "openInNewWindow";
|
|
65
78
|
export type TID_MID = {
|
|
66
79
|
tid: number | undefined;
|
package/lib/ts/types.js
CHANGED
|
@@ -66,6 +66,21 @@ export var DraftsMIDs;
|
|
|
66
66
|
DraftsMIDs[DraftsMIDs["Ver"] = 6008] = "Ver";
|
|
67
67
|
DraftsMIDs[DraftsMIDs["LastVer"] = 6009] = "LastVer"; // Ultima versione? (0 | 1)
|
|
68
68
|
})(DraftsMIDs || (DraftsMIDs = {}));
|
|
69
|
+
export var DSAttachsMIDs;
|
|
70
|
+
(function (DSAttachsMIDs) {
|
|
71
|
+
DSAttachsMIDs[DSAttachsMIDs["DSID"] = 7001] = "DSID";
|
|
72
|
+
DSAttachsMIDs[DSAttachsMIDs["Name"] = 7002] = "Name";
|
|
73
|
+
DSAttachsMIDs[DSAttachsMIDs["Description"] = 7003] = "Description";
|
|
74
|
+
})(DSAttachsMIDs || (DSAttachsMIDs = {}));
|
|
75
|
+
export var ChronologyMIDs;
|
|
76
|
+
(function (ChronologyMIDs) {
|
|
77
|
+
ChronologyMIDs[ChronologyMIDs["RefRootTID"] = 15001] = "RefRootTID";
|
|
78
|
+
ChronologyMIDs[ChronologyMIDs["RefDID"] = 15002] = "RefDID";
|
|
79
|
+
ChronologyMIDs[ChronologyMIDs["Ver"] = 15003] = "Ver";
|
|
80
|
+
ChronologyMIDs[ChronologyMIDs["AuthorID"] = 15004] = "AuthorID";
|
|
81
|
+
ChronologyMIDs[ChronologyMIDs["CheckInTime"] = 15005] = "CheckInTime";
|
|
82
|
+
ChronologyMIDs[ChronologyMIDs["Note"] = 15006] = "Note";
|
|
83
|
+
})(ChronologyMIDs || (ChronologyMIDs = {}));
|
|
69
84
|
export class MetadataValueDescriptorEx extends MetadataValueDescriptor {
|
|
70
85
|
}
|
|
71
86
|
export var moduleTypes;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@topconsultnpm/sdkui-react",
|
|
3
|
-
"version": "6.19.0-dev1.
|
|
3
|
+
"version": "6.19.0-dev1.35",
|
|
4
4
|
"description": "",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"test": "echo \"Error: no test specified\" && exit 1",
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
"lib"
|
|
40
40
|
],
|
|
41
41
|
"dependencies": {
|
|
42
|
-
"@topconsultnpm/sdk-ts": "6.19.0-dev1.
|
|
42
|
+
"@topconsultnpm/sdk-ts": "6.19.0-dev1.6",
|
|
43
43
|
"buffer": "^6.0.3",
|
|
44
44
|
"devextreme": "25.1.4",
|
|
45
45
|
"devextreme-react": "25.1.4",
|