@topconsultnpm/sdkui-react 6.21.0-dev2.13 → 6.21.0-dev2.15

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.
@@ -9,8 +9,8 @@ interface ITMSavedQuerySelectorProps {
9
9
  manageDefault?: boolean;
10
10
  onItemClick?: (sqd: SavedQueryDescriptor) => void;
11
11
  onDeleted?: (sqd: SavedQueryDescriptor) => void;
12
- onFavoritesAdded?: (sqd: SavedQueryDescriptor) => void;
12
+ refreshFavoriteSavedQueries?: (sqd: SavedQueryDescriptor) => void;
13
13
  onRefreshData?: () => void;
14
14
  }
15
- declare const TMSavedQuerySelector: React.MemoExoticComponent<({ items, selectedId, allowShowSearch, height, manageDefault, onItemClick, onDeleted, onFavoritesAdded, onRefreshData }: ITMSavedQuerySelectorProps) => import("react/jsx-runtime").JSX.Element>;
15
+ declare const TMSavedQuerySelector: React.MemoExoticComponent<({ items, selectedId, allowShowSearch, height, manageDefault, onItemClick, onDeleted, refreshFavoriteSavedQueries, onRefreshData }: ITMSavedQuerySelectorProps) => import("react/jsx-runtime").JSX.Element>;
16
16
  export default TMSavedQuerySelector;
@@ -105,7 +105,7 @@ const getContextMenuItems = (sqd, manageDefault, isMobile, deleteAsync, setDefau
105
105
  onClick: () => { setInfoSQD?.(sqd); }
106
106
  }] : [])
107
107
  ];
108
- const TMSavedQuerySelector = React.memo(({ items, selectedId, allowShowSearch = true, height, manageDefault = true, onItemClick, onDeleted, onFavoritesAdded, onRefreshData }) => {
108
+ const TMSavedQuerySelector = React.memo(({ items, selectedId, allowShowSearch = true, height, manageDefault = true, onItemClick, onDeleted, refreshFavoriteSavedQueries, onRefreshData }) => {
109
109
  const [dataSource, setDataSource] = useState([]);
110
110
  const [selectedItem, setSelectedItem] = useState();
111
111
  const [searchText, setSearchText] = useState('');
@@ -135,6 +135,7 @@ const TMSavedQuerySelector = React.memo(({ items, selectedId, allowShowSearch =
135
135
  await SDK_Globals.tmSession?.NewSavedQueryEngine().DeleteAsync(sqd?.id);
136
136
  await loadDataAsync(true);
137
137
  onDeleted?.(sqd);
138
+ refreshFavoriteSavedQueries?.(sqd);
138
139
  TMSpinner.hide();
139
140
  }
140
141
  catch (ex) {
@@ -148,7 +149,7 @@ const TMSavedQuerySelector = React.memo(({ items, selectedId, allowShowSearch =
148
149
  try {
149
150
  TMSpinner.show();
150
151
  await SDK_Globals.tmSession?.NewSavedQueryEngine().FavoritesAddOrRemoveAsync(sqd?.id, false);
151
- onFavoritesAdded?.(sqd);
152
+ refreshFavoriteSavedQueries?.(sqd);
152
153
  TMSpinner.hide();
153
154
  ShowAlert({ mode: 'success', title: SDK_Localizator.SavedQuery, message: SDKUI_Localizator.OperationSuccess, duration: 3000 });
154
155
  }
@@ -36,7 +36,7 @@ interface ITMSearchProps {
36
36
  mid: number;
37
37
  value: string;
38
38
  }>, tid?: number) => void;
39
- onFavoritesAdded?: (sqd: SavedQueryDescriptor) => void;
39
+ refreshFavoriteSavedQueries?: (sqd: SavedQueryDescriptor) => void;
40
40
  onCurrentTIDChangedCallback?: (tid: number | undefined) => void;
41
41
  onlyShowSearchQueryPanel?: boolean;
42
42
  onReferenceClick?: (ref: ObjectRef) => void;
@@ -14,12 +14,13 @@ import { StyledMultiViewPanel } from '../../base/Styled';
14
14
  import { useTMPanelManagerContext } from '../../layout/panelManager/TMPanelManagerContext';
15
15
  import TMPanelManagerContainer from '../../layout/panelManager/TMPanelManagerContainer';
16
16
  import { TMPanelManagerWithPersistenceProvider } from '../../layout/panelManager/TMPanelManagerWithPersistenceProvider';
17
+ import { TMExceptionBoxManager } from '../../base/TMPopUp';
17
18
  var TMSearchViews;
18
19
  (function (TMSearchViews) {
19
20
  TMSearchViews[TMSearchViews["Search"] = 0] = "Search";
20
21
  TMSearchViews[TMSearchViews["Result"] = 1] = "Result";
21
22
  })(TMSearchViews || (TMSearchViews = {}));
22
- const TMSearch = ({ allTasks = [], getAllTasks, deleteTaskByIdsCallback, addTaskCallback, editTaskCallback, handleNavigateToWGs, handleNavigateToDossiers, openInOffice, isVisible, inputTID, inputSqdID, inputMids, isExpertMode = SDKUI_Globals.userSettings.advancedSettings.expertMode === 1, floatingActionConfig, onFileOpened, onRefreshAfterAddDcmtToFavs, onTaskCreateRequest, openWGsCopyMoveForm, editPdfForm = false, openS4TViewer, onOpenS4TViewerRequest, onOpenPdfEditorRequest, openFileUploaderPdfEditor, showTodoDcmtForm, showToppyDraggableHelpCenter = true, toppyHelpCenterUsePortal = false, passToArchiveCallback, onCurrentTIDChangedCallback, onlyShowSearchQueryPanel, onReferenceClick, onFavoritesAdded }) => {
23
+ const TMSearch = ({ allTasks = [], getAllTasks, deleteTaskByIdsCallback, addTaskCallback, editTaskCallback, handleNavigateToWGs, handleNavigateToDossiers, openInOffice, isVisible, inputTID, inputSqdID, inputMids, isExpertMode = SDKUI_Globals.userSettings.advancedSettings.expertMode === 1, floatingActionConfig, onFileOpened, onRefreshAfterAddDcmtToFavs, onTaskCreateRequest, openWGsCopyMoveForm, editPdfForm = false, openS4TViewer, onOpenS4TViewerRequest, onOpenPdfEditorRequest, openFileUploaderPdfEditor, showTodoDcmtForm, showToppyDraggableHelpCenter = true, toppyHelpCenterUsePortal = false, passToArchiveCallback, onCurrentTIDChangedCallback, onlyShowSearchQueryPanel, onReferenceClick, refreshFavoriteSavedQueries }) => {
23
24
  const [allSQDs, setAllSQDs] = useState([]);
24
25
  const [filteredByTIDSQDs, setFilteredByTIDSQDs] = useState([]);
25
26
  const [currentSQD, setCurrentSQD] = useState();
@@ -50,13 +51,18 @@ const TMSearch = ({ allTasks = [], getAllTasks, deleteTaskByIdsCallback, addTask
50
51
  setCurrentSearchView(TMSearchViews.Search);
51
52
  }, [inputTID]);
52
53
  useEffect(() => {
53
- if (inputSqdID) {
54
- SavedQueryCacheService.GetAsync(inputSqdID).then(async (resultSqd) => {
54
+ const loadSqd = async () => {
55
+ try {
56
+ const resultSqd = await SavedQueryCacheService.GetAsync(inputSqdID);
55
57
  await setSQDAsync(resultSqd);
56
58
  // Mostra la vista Search per visualizzare i filtri della SavedQuery caricata
57
59
  setCurrentSearchView(TMSearchViews.Search);
58
- });
59
- }
60
+ }
61
+ catch (err) {
62
+ TMExceptionBoxManager.show({ exception: err });
63
+ }
64
+ };
65
+ loadSqd();
60
66
  }, [inputSqdID]);
61
67
  useEffect(() => {
62
68
  const newMaxDcmtsToBeReturned = SDKUI_Globals.userSettings.searchSettings?.maxDcmtsToBeReturned ?? 1000;
@@ -195,9 +201,9 @@ const TMSearch = ({ allTasks = [], getAllTasks, deleteTaskByIdsCallback, addTask
195
201
  } }), [fromDTD, showSearchResults, setShowSearchResults, currentSQD, isExpertMode, mruTIDs, searchResult, passToArchiveCallback, inputMids, maxDcmtsToBeReturned]);
196
202
  const tmSavedQuerySelectorElement = useMemo(() => _jsxs(TabPanel, { width: "100%", height: "100%", showNavButtons: true, repaintChangesOnly: true, selectedIndex: currentSQDMode, onSelectedIndexChange: (index) => setCurrentSQDMode(index), children: [(currentTID || currentSQD) ? _jsx(Item, { title: fromDTD?.nameLoc, children: _jsx(TMSavedQuerySelectorWrapper, { allowShowSearch: false, items: filteredByTIDSQDs, selectedId: currentSQD?.id, onRefreshData: () => { loadDataSQDsAsync(true); }, onItemClick: (sqd) => {
197
203
  onSQDItemClick(sqd, setSQDAsync);
198
- }, onDeleted: (sqd) => onSQDDeleted(sqd, sqd.id == currentSQD?.id ? filteredByTIDSQDs.find(o => o.id == 1) : currentSQD, setSQDAsync), onFavoritesAdded: onFavoritesAdded }) }) : _jsx(_Fragment, {}), _jsx(Item, { title: SDKUI_Localizator.AllFemale, children: _jsx(TMSavedQuerySelectorWrapper, { allowShowSearch: true, items: allSQDs, manageDefault: false, onItemClick: (sqd) => {
204
+ }, onDeleted: (sqd) => onSQDDeleted(sqd, sqd.id == currentSQD?.id ? filteredByTIDSQDs.find(o => o.id == 1) : currentSQD, setSQDAsync), refreshFavoriteSavedQueries: refreshFavoriteSavedQueries }) }) : _jsx(_Fragment, {}), _jsx(Item, { title: SDKUI_Localizator.AllFemale, children: _jsx(TMSavedQuerySelectorWrapper, { allowShowSearch: true, items: allSQDs, manageDefault: false, onItemClick: (sqd) => {
199
205
  onSQDItemClick(sqd, setSQDAsync);
200
- }, onDeleted: (sqd) => onSQDDeleted(sqd, sqd.id == currentSQD?.id ? undefined : currentSQD, setSQDAsync), onFavoritesAdded: onFavoritesAdded }) })] }), [currentSQDMode, currentTID, currentSQD, fromDTD, filteredByTIDSQDs, allSQDs]);
206
+ }, onDeleted: (sqd) => onSQDDeleted(sqd, sqd.id == currentSQD?.id ? undefined : currentSQD, setSQDAsync), refreshFavoriteSavedQueries: refreshFavoriteSavedQueries }) })] }), [currentSQDMode, currentTID, currentSQD, fromDTD, filteredByTIDSQDs, allSQDs]);
201
207
  // Returns the current panelLayout from user settings, falling back to an empty object if not present.
202
208
  const getPanelLayoutSetting = () => {
203
209
  return SDKUI_Globals.userSettings.searchSettings.panelLayout ?? {};
@@ -285,10 +291,10 @@ const TMSearchQueryPanelWrapper = ({ fromDTD, SQD, isExpertMode, showBackToResul
285
291
  const isMobile = deviceType === DeviceType.MOBILE;
286
292
  return (_jsx(TMSearchQueryPanel, { onClosePanel: (!isMobile && countVisibleLeafPanels() > 1) ? () => setPanelVisibilityById('TMSearchQueryPanel', false) : undefined, allowMaximize: !isMobile && countVisibleLeafPanels() > 1, onMaximizePanel: (!isMobile && countVisibleLeafPanels() > 1) ? () => toggleMaximize("TMSearchQueryPanel") : undefined, isExpertMode: isExpertMode, fromDTD: fromDTD, SQD: SQD, inputMids: inputMids, onSearchCompleted: onSearchCompleted, onSqdSaved: onSqdSaved, showBackToResultButton: showBackToResultButton, onBackToResult: onBackToResult, passToArchiveCallback: passToArchiveCallback, maxDcmtsToBeReturned: maxDcmtsToBeReturned }));
287
293
  };
288
- const TMSavedQuerySelectorWrapper = ({ items, selectedId, allowShowSearch, manageDefault, onRefreshData, onItemClick, onDeleted, onFavoritesAdded }) => {
294
+ const TMSavedQuerySelectorWrapper = ({ items, selectedId, allowShowSearch, manageDefault, onRefreshData, onItemClick, onDeleted, refreshFavoriteSavedQueries }) => {
289
295
  const { setPanelVisibilityById } = useTMPanelManagerContext();
290
296
  return (_jsx(TMSavedQuerySelector, { allowShowSearch: allowShowSearch, manageDefault: manageDefault, items: items, selectedId: selectedId, onRefreshData: onRefreshData, onItemClick: (sqd) => {
291
297
  onItemClick?.(sqd);
292
298
  setPanelVisibilityById('TMSearchQueryPanel', true);
293
- }, onDeleted: onDeleted, onFavoritesAdded: onFavoritesAdded }));
299
+ }, onDeleted: onDeleted, refreshFavoriteSavedQueries: refreshFavoriteSavedQueries }));
294
300
  };
@@ -353,7 +353,7 @@ handleNavigateToWGs, handleNavigateToDossiers, }) => {
353
353
  openTaskFormHandler,
354
354
  },
355
355
  });
356
- const { isOpenDcmtForm, openFormHandler, dcmtFormLayoutMode, onDcmtFormOpenChange, showSearchTMDatagrid, showExportForm, isOpenBatchUpdate, isModifiedBatchUpdate, updateBatchUpdateForm, handleSignApprove, checkoutInfo: { showCicoWaitPanel, cicoWaitPanelTitle, showCicoPrimaryProgress, cicoPrimaryProgressText, cicoPrimaryProgressValue, cicoPrimaryProgressMax, }, dcmtOperations: { abortController, showWaitPanel, showPrimary, waitPanelTitle, waitPanelTextPrimary, waitPanelValuePrimary, waitPanelMaxValuePrimary, showSecondary, waitPanelTextSecondary, waitPanelValueSecondary, waitPanelMaxValueSecondary, downloadDcmtsAsync, runOperationAsync, }, relatedDocumentsInfo: { isOpenDetails, isOpenMaster, checkRelatedDcmtsArchiveCapability, checkManyToManyCapability, }, toppyOperations: { showApprovePopup, showRejectPopup, showReAssignPopup, showMoreInfoPopup, updateShowApprovePopup, updateShowRejectPopup, updateShowReAssignPopup, updateShowMoreInfoPopup } } = features;
356
+ const { isOpenDcmtForm, openFormHandler, dcmtFormLayoutMode, onDcmtFormOpenChange, showSearchTMDatagrid, showExportForm, isOpenBatchUpdate, isModifiedBatchUpdate, updateBatchUpdateForm, closeDcmtFormHandler, handleSignApprove, checkoutInfo: { showCicoWaitPanel, cicoWaitPanelTitle, showCicoPrimaryProgress, cicoPrimaryProgressText, cicoPrimaryProgressValue, cicoPrimaryProgressMax, }, dcmtOperations: { abortController, showWaitPanel, showPrimary, waitPanelTitle, waitPanelTextPrimary, waitPanelValuePrimary, waitPanelMaxValuePrimary, showSecondary, waitPanelTextSecondary, waitPanelValueSecondary, waitPanelMaxValueSecondary, downloadDcmtsAsync, runOperationAsync, }, relatedDocumentsInfo: { isOpenDetails, isOpenMaster, checkRelatedDcmtsArchiveCapability, checkManyToManyCapability, }, toppyOperations: { showApprovePopup, showRejectPopup, showReAssignPopup, showMoreInfoPopup, updateShowApprovePopup, updateShowRejectPopup, updateShowReAssignPopup, updateShowMoreInfoPopup } } = features;
357
357
  const deviceType = useDeviceType();
358
358
  const isMobile = deviceType === DeviceType.MOBILE;
359
359
  const selectedDocs = getSelectedDcmtsOrFocused(selectedItems, focusedItem);
@@ -367,6 +367,7 @@ handleNavigateToWGs, handleNavigateToDossiers, }) => {
367
367
  useEffect(() => {
368
368
  setSelectedItems([]);
369
369
  updateBatchUpdateForm(false);
370
+ closeDcmtFormHandler();
370
371
  setCurrentSearchResults(searchResults);
371
372
  if (searchResults.length <= 0) {
372
373
  setSelectedSearchResult(undefined);
@@ -110,6 +110,7 @@ export interface UseDocumentOperationsResult {
110
110
  isOpenBatchUpdate: boolean;
111
111
  isModifiedBatchUpdate: boolean;
112
112
  updateBatchUpdateForm: (value: boolean) => void;
113
+ closeDcmtFormHandler: () => void;
113
114
  handleSignApprove: () => void;
114
115
  showSearchTMDatagrid: boolean;
115
116
  showExportForm: boolean;
@@ -182,6 +182,9 @@ export const useDocumentOperations = (props) => {
182
182
  setIsOpenDcmtForm(isOpen);
183
183
  setDcmtFormLayoutMode(layoutMode);
184
184
  };
185
+ const closeDcmtFormHandler = () => {
186
+ setIsOpenDcmtForm(false);
187
+ };
185
188
  const handleAddItem = (tid, did) => {
186
189
  let newItem = { TID: tid ?? 0, DID: did ?? 0 };
187
190
  setSecondaryMasterDcmts((prevItems) => [...prevItems, newItem]);
@@ -1209,6 +1212,7 @@ export const useDocumentOperations = (props) => {
1209
1212
  isOpenBatchUpdate,
1210
1213
  isModifiedBatchUpdate,
1211
1214
  updateBatchUpdateForm,
1215
+ closeDcmtFormHandler,
1212
1216
  handleSignApprove,
1213
1217
  checkoutInfo: {
1214
1218
  showHistory,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@topconsultnpm/sdkui-react",
3
- "version": "6.21.0-dev2.13",
3
+ "version": "6.21.0-dev2.15",
4
4
  "description": "",
5
5
  "scripts": {
6
6
  "test": "echo \"Error: no test specified\" && exit 1",