@topconsultnpm/sdkui-react 6.22.0-dev3.8 → 6.22.0-dev4.10

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.
Files changed (186) hide show
  1. package/lib/components/NewComponents/ContextMenu/styles.d.ts +43 -45
  2. package/lib/components/NewComponents/FloatingMenuBar/styles.d.ts +60 -67
  3. package/lib/components/base/Styled.d.ts +77 -93
  4. package/lib/components/base/TMAlert.js +6 -8
  5. package/lib/components/base/TMAreaManager.js +53 -55
  6. package/lib/components/base/TMButton.js +4 -2
  7. package/lib/components/base/TMCounterBar.d.ts +2 -2
  8. package/lib/components/base/TMCounterContainer.d.ts +4 -3
  9. package/lib/components/base/TMCounterContainer.js +16 -1
  10. package/lib/components/base/TMCustomButton.d.ts +1 -1
  11. package/lib/components/base/TMCustomButton.js +40 -48
  12. package/lib/components/base/TMDataGrid.js +243 -223
  13. package/lib/components/base/TMDataGridExportForm.d.ts +1 -2
  14. package/lib/components/base/TMFileManager.d.ts +1 -2
  15. package/lib/components/base/TMFileManagerDataGridView.d.ts +1 -2
  16. package/lib/components/base/TMFileManagerThumbnailItems.d.ts +1 -1
  17. package/lib/components/base/TMFileManagerThumbnailsView.d.ts +1 -1
  18. package/lib/components/base/TMFileManagerUtils.d.ts +6 -4
  19. package/lib/components/base/TMLayout.d.ts +4 -4
  20. package/lib/components/base/TMList.d.ts +1 -2
  21. package/lib/components/base/TMListView.d.ts +1 -1
  22. package/lib/components/base/TMPanel.js +173 -170
  23. package/lib/components/base/TMSpinner.d.ts +3 -3
  24. package/lib/components/base/TMSpinner.js +9 -7
  25. package/lib/components/base/TMTab.d.ts +3 -4
  26. package/lib/components/base/TMTabControl.d.ts +7 -0
  27. package/lib/components/base/TMTabControl.js +225 -213
  28. package/lib/components/base/TMTooltip.d.ts +1 -1
  29. package/lib/components/base/TMTreeView.d.ts +8 -14
  30. package/lib/components/base/TMTreeView.js +20 -0
  31. package/lib/components/base/TMUserAvatar.d.ts +1 -2
  32. package/lib/components/base/TMVilViewer.d.ts +1 -2
  33. package/lib/components/base/TMWaitPanel.d.ts +2 -3
  34. package/lib/components/base/TMWaitPanel.js +1 -1
  35. package/lib/components/base/waitPanel/TMWaitPanelConfirm.d.ts +12 -0
  36. package/lib/components/base/waitPanel/TMWaitPanelConfirm.js +185 -0
  37. package/lib/components/base/waitPanel/TMWaitPanelManager.d.ts +179 -0
  38. package/lib/components/base/waitPanel/TMWaitPanelManager.js +373 -0
  39. package/lib/components/base/waitPanel/TMWaitPanelView.d.ts +57 -0
  40. package/lib/components/base/waitPanel/TMWaitPanelView.js +346 -0
  41. package/lib/components/base/waitPanel/index.d.ts +1 -0
  42. package/lib/components/base/waitPanel/index.js +1 -0
  43. package/lib/components/choosers/TMDistinctValues.js +3 -3
  44. package/lib/components/choosers/TMDynDataListItemChooser.d.ts +1 -1
  45. package/lib/components/choosers/TMInvoiceRetrieveFormats.d.ts +1 -2
  46. package/lib/components/choosers/TMOrderRetrieveFormats.d.ts +1 -2
  47. package/lib/components/choosers/TMPathChooser.js +17 -34
  48. package/lib/components/choosers/TMQuickSearchInfo.d.ts +1 -2
  49. package/lib/components/choosers/TMRelationChooser.d.ts +3 -3
  50. package/lib/components/choosers/TMUserChooser.d.ts +2 -2
  51. package/lib/components/editors/TMEditorStyled.d.ts +42 -20
  52. package/lib/components/editors/TMFormulaEditor.d.ts +1 -1
  53. package/lib/components/editors/TMHtmlContentDisplay.d.ts +1 -2
  54. package/lib/components/editors/TMHtmlEditor.d.ts +1 -2
  55. package/lib/components/editors/TMTextBox.d.ts +4 -0
  56. package/lib/components/editors/TMTextBox.js +99 -11
  57. package/lib/components/editors/TMTreeDropDown.d.ts +1 -1
  58. package/lib/components/features/archive/TMArchive.js +7 -2
  59. package/lib/components/features/assistant/TMHelpOnLineChat.d.ts +28 -0
  60. package/lib/components/features/assistant/TMHelpOnLineChat.js +1231 -0
  61. package/lib/components/features/assistant/TMToppyDraggableHelpCenter.d.ts +1 -1
  62. package/lib/components/features/assistant/TMToppyDraggableHelpCenter.js +2 -2
  63. package/lib/components/features/blog/TMBlogCommentForm.d.ts +1 -2
  64. package/lib/components/features/documents/TMBatchUpdateForm.js +3 -4
  65. package/lib/components/features/documents/TMCopyToFolderForm.js +50 -42
  66. package/lib/components/features/documents/TMDcmtForm.js +50 -61
  67. package/lib/components/features/documents/TMDcmtFormActionButtons.d.ts +1 -1
  68. package/lib/components/features/documents/TMDcmtIcon.d.ts +1 -4
  69. package/lib/components/features/documents/TMDcmtIcon.js +3 -5
  70. package/lib/components/features/documents/TMDcmtPreview.d.ts +6 -8
  71. package/lib/components/features/documents/TMDcmtPreview.js +5 -3
  72. package/lib/components/features/documents/TMDcmtTasks.d.ts +1 -2
  73. package/lib/components/features/documents/TMDcmtTasks.js +2 -9
  74. package/lib/components/features/documents/TMDragDropOverlay.d.ts +1 -1
  75. package/lib/components/features/documents/TMFileUploader.js +5 -5
  76. package/lib/components/features/documents/TMMasterDetailDcmts.d.ts +2 -0
  77. package/lib/components/features/documents/TMMasterDetailDcmts.js +53 -141
  78. package/lib/components/features/documents/TMMasterInfoFields.d.ts +1 -2
  79. package/lib/components/features/documents/TMMasterInfoFields.js +3 -2
  80. package/lib/components/features/documents/TMMergeToPdfForm.d.ts +1 -2
  81. package/lib/components/features/documents/TMMergeToPdfForm.js +59 -56
  82. package/lib/components/features/documents/TMMultiMasterDetailDcmtsForm.d.ts +1 -2
  83. package/lib/components/features/documents/TMMultiMasterDetailDcmtsForm.js +14 -15
  84. package/lib/components/features/documents/TMMultiMasterDetailDcmtsUtils.d.ts +5 -5
  85. package/lib/components/features/documents/TMMultiMasterDetailDcmtsUtils.js +3 -3
  86. package/lib/components/features/documents/TMRelationViewer.d.ts +13 -14
  87. package/lib/components/features/documents/TMRelationViewer.js +206 -143
  88. package/lib/components/features/documents/relationTreeState.d.ts +32 -0
  89. package/lib/components/features/documents/relationTreeState.js +89 -0
  90. package/lib/components/features/search/TMDcmtCheckoutInfoForm.d.ts +1 -2
  91. package/lib/components/features/search/TMMetadataOutputForm.d.ts +1 -2
  92. package/lib/components/features/search/TMMetadataSorterForm.d.ts +1 -2
  93. package/lib/components/features/search/TMSavedQuerySelector.d.ts +2 -2
  94. package/lib/components/features/search/TMSearch.d.ts +1 -2
  95. package/lib/components/features/search/TMSearch.js +3 -4
  96. package/lib/components/features/search/TMSearchQueryPanel.d.ts +3 -9
  97. package/lib/components/features/search/TMSearchQueryPanel.js +0 -4
  98. package/lib/components/features/search/TMSearchResult.d.ts +5 -0
  99. package/lib/components/features/search/TMSearchResult.js +129 -102
  100. package/lib/components/features/search/TMSearchResultFloatingActionButton.d.ts +1 -1
  101. package/lib/components/features/search/TMSignatureInfoContent.d.ts +1 -2
  102. package/lib/components/features/search/TMTreeSelector.js +23 -27
  103. package/lib/components/features/search/TMViewHistoryDcmt.d.ts +1 -2
  104. package/lib/components/features/search/TMViewHistoryDcmt.js +15 -26
  105. package/lib/components/features/tasks/TMTaskForm.d.ts +1 -1
  106. package/lib/components/features/tasks/TMTaskFormUtils.d.ts +10 -10
  107. package/lib/components/features/tasks/TMTasksAgenda.d.ts +1 -1
  108. package/lib/components/features/tasks/TMTasksCalendar.d.ts +1 -1
  109. package/lib/components/features/tasks/TMTasksHeader.d.ts +1 -1
  110. package/lib/components/features/tasks/TMTasksPanelContent.d.ts +1 -1
  111. package/lib/components/features/tasks/TMTasksUtilsView.d.ts +5 -5
  112. package/lib/components/features/tasks/TMTasksView.d.ts +1 -1
  113. package/lib/components/features/tasks/TMTasksView.js +97 -90
  114. package/lib/components/features/wg/TMWGsCopyMoveForm.d.ts +2 -3
  115. package/lib/components/features/wg/TMWGsCopyMoveForm.js +95 -91
  116. package/lib/components/features/workflow/TMWorkflowPopup.d.ts +7 -8
  117. package/lib/components/features/workflow/diagram/WorkitemRecipientsEditor.d.ts +1 -3
  118. package/lib/components/forms/Login/ChangePasswordInputs.d.ts +1 -3
  119. package/lib/components/forms/Login/Chooser.d.ts +2 -2
  120. package/lib/components/forms/TMChooserForm.d.ts +1 -2
  121. package/lib/components/forms/TMResultDialog.js +1 -1
  122. package/lib/components/forms/TMSaveForm.d.ts +4 -4
  123. package/lib/components/grids/TMBlogAttachments.d.ts +1 -2
  124. package/lib/components/grids/TMBlogHeader.d.ts +1 -1
  125. package/lib/components/grids/TMBlogsPost.d.ts +1 -1
  126. package/lib/components/grids/TMBlogsPost.js +93 -97
  127. package/lib/components/grids/TMBlogsPostUtils.d.ts +9 -9
  128. package/lib/components/grids/TMValidationItemsList.d.ts +1 -2
  129. package/lib/components/index.d.ts +5 -1
  130. package/lib/components/index.js +4 -1
  131. package/lib/components/layout/panelManager/TMPanelManagerContainer.d.ts +1 -2
  132. package/lib/components/layout/panelManager/TMPanelManagerContainer.js +4 -3
  133. package/lib/components/layout/panelManager/TMPanelManagerContext.d.ts +3 -2
  134. package/lib/components/layout/panelManager/TMPanelManagerContext.js +5 -1
  135. package/lib/components/layout/panelManager/TMPanelManagerLoader.d.ts +5 -0
  136. package/lib/components/layout/panelManager/TMPanelManagerLoader.js +18 -0
  137. package/lib/components/layout/panelManager/TMPanelManagerToolbar.d.ts +6 -5
  138. package/lib/components/layout/panelManager/TMPanelManagerToolbar.js +4 -8
  139. package/lib/components/layout/panelManager/TMPanelManagerWithPersistenceProvider.d.ts +2 -2
  140. package/lib/components/layout/panelManager/TMPanelManagerWithPersistenceProvider.js +2 -1
  141. package/lib/components/layout/panelManager/TMPanelWrapper.d.ts +2 -2
  142. package/lib/components/pages/TMPage.d.ts +1 -1
  143. package/lib/components/pages/TMPage.js +32 -31
  144. package/lib/components/query/TMQueryEditor.d.ts +13 -14
  145. package/lib/components/query/TMQueryEditor.js +2 -1
  146. package/lib/components/settings/SettingsAppearance.d.ts +1 -2
  147. package/lib/components/sidebar/TMAboutApp.d.ts +1 -2
  148. package/lib/components/sidebar/TMCommandsPanel.d.ts +4 -4
  149. package/lib/components/sidebar/TMHeader.d.ts +4 -3
  150. package/lib/components/sidebar/TMHeader.js +2 -2
  151. package/lib/components/viewers/TMDataListItemViewer.d.ts +2 -3
  152. package/lib/components/viewers/TMDataUserIdItemViewer.d.ts +2 -3
  153. package/lib/components/viewers/TMMidViewer.d.ts +2 -2
  154. package/lib/components/viewers/TMTidViewer.d.ts +2 -2
  155. package/lib/helper/Enum_Localizator.js +1 -0
  156. package/lib/helper/SDKUI_Globals.d.ts +7 -2
  157. package/lib/helper/SDKUI_Globals.js +7 -2
  158. package/lib/helper/SDKUI_Localizator.d.ts +31 -6
  159. package/lib/helper/SDKUI_Localizator.js +301 -51
  160. package/lib/helper/TMAppUpdatedModal.d.ts +1 -2
  161. package/lib/helper/TMAppUpdatedModal.js +93 -93
  162. package/lib/helper/TMCommandsContextMenu.d.ts +1 -1
  163. package/lib/helper/TMIcons.d.ts +280 -280
  164. package/lib/helper/TMPdfViewer.d.ts +1 -2
  165. package/lib/helper/TMToppyMessage.d.ts +2 -2
  166. package/lib/helper/TMUtils.d.ts +4 -10
  167. package/lib/helper/ZipManager.d.ts +1 -1
  168. package/lib/helper/ZipManager.js +2 -1
  169. package/lib/helper/dcmtsHelper.d.ts +2 -0
  170. package/lib/helper/dcmtsHelper.js +3 -1
  171. package/lib/helper/helpers.d.ts +1 -1
  172. package/lib/hooks/useCheckInOutOperations.d.ts +0 -6
  173. package/lib/hooks/useCheckInOutOperations.js +14 -34
  174. package/lib/hooks/useDcmtOperations.d.ts +3 -12
  175. package/lib/hooks/useDcmtOperations.js +201 -184
  176. package/lib/hooks/useDocumentOperations.d.ts +1 -0
  177. package/lib/hooks/useDocumentOperations.js +14 -25
  178. package/lib/hooks/useInputDialog.d.ts +1 -2
  179. package/lib/hooks/useMultiMasterDetailDcmts.d.ts +0 -15
  180. package/lib/hooks/useMultiMasterDetailDcmts.js +70 -68
  181. package/lib/hooks/usePreventFileDrop.js +9 -0
  182. package/lib/hooks/useWorkflowApprove.js +33 -17
  183. package/lib/services/caseflow/CaseFlowService.d.ts +69 -9
  184. package/lib/services/caseflow/CaseFlowService.js +126 -58
  185. package/lib/services/platform_services.d.ts +2 -3
  186. package/package.json +2 -2
@@ -34,5 +34,5 @@ interface ITMPage<T> {
34
34
  /** Indica il cambiamento dei contatori della lista (totali, selezionati e visibili) */
35
35
  onCountersChanged?: (totalItemsCount: number, selectedItemsCount: number, visibleItemsCount: number) => void;
36
36
  }
37
- declare const TMPage: <T>({ id, objClass, listDisabled, lastRefreshTime, objType, listInsteadOfContent, detailInsteadOfContent, routePage, customButtons, customColumns, searchText, detailForm, detailTitlePathKeys, deps, onSelectionChanged, onCountersChanged }: ITMPage<T>) => React.JSX.Element;
37
+ declare const TMPage: <T>({ id, objClass, listDisabled, lastRefreshTime, objType, listInsteadOfContent, detailInsteadOfContent, routePage, customButtons, customColumns, searchText, detailForm, detailTitlePathKeys, deps, onSelectionChanged, onCountersChanged }: ITMPage<T>) => import("react/jsx-runtime").JSX.Element;
38
38
  export default TMPage;
@@ -14,9 +14,8 @@ import { FontSize, TMColors } from "../../utils/theme";
14
14
  import selectionManagerImage from '../../assets/multipleSelectionManager.jpg';
15
15
  import { DeviceType, useDeviceType } from "../base/TMDeviceProvider";
16
16
  import { TMResultManager } from "../forms/TMResultDialog";
17
- import { TMLayoutWaitingContainer } from "../base/TMWaitPanel";
17
+ import TMWaitPanelManager from "../base/waitPanel/TMWaitPanelManager";
18
18
  import TMToolbarCard from "../base/TMToolbarCard";
19
- let abortController = new AbortController();
20
19
  const TMPage = ({ id, objClass = ObjectClasses.None, listDisabled = false, lastRefreshTime, objType, listInsteadOfContent, detailInsteadOfContent, routePage, customButtons, customColumns, searchText, detailForm, detailTitlePathKeys, deps, onSelectionChanged, onCountersChanged }) => {
21
20
  const deviceType = useDeviceType();
22
21
  let gridInstance;
@@ -28,12 +27,6 @@ const TMPage = ({ id, objClass = ObjectClasses.None, listDisabled = false, lastR
28
27
  const [selectedItems, setSelectedItems] = useState([]);
29
28
  const [visibleItems, setVisibleItems] = useState([]);
30
29
  const [formMode, setFormMode] = useState(FormModes.Update);
31
- const [showWaitPanel, setShowWaitPanel] = useState(false);
32
- const [waitPanelTitle, setWaitPanelTitle] = useState('');
33
- const [showPrimary, setShowPrimary] = useState(false);
34
- const [waitPanelTextPrimary, setWaitPanelTextPrimary] = useState('');
35
- const [waitPanelValuePrimary, setWaitPanelValuePrimary] = useState(0);
36
- const [waitPanelMaxValuePrimary, setWaitPanelMaxValuePrimary] = useState(0);
37
30
  let objName = PlatformObjectService.getName(objClass, objType);
38
31
  let objNames = PlatformObjectService.getName(objClass, objType, true);
39
32
  useEffect(() => { gridInstance?.instance().searchByText(searchText ?? ''); }, [searchText]);
@@ -95,31 +88,39 @@ const TMPage = ({ id, objClass = ObjectClasses.None, listDisabled = false, lastR
95
88
  break;
96
89
  }
97
90
  const doOperationAsync = async () => {
98
- setShowWaitPanel(true);
99
- setShowPrimary(true);
100
- setWaitPanelTitle(operationTitle);
101
- abortController = new AbortController();
91
+ const waitPanel = TMWaitPanelManager.show({
92
+ title: operationTitle,
93
+ max: selectedItems.length,
94
+ cancelable: true,
95
+ });
102
96
  let result = [];
103
- setWaitPanelMaxValuePrimary(selectedItems.length);
104
- for (let i = 0; i < selectedItems.length; i++) {
105
- if (abortController.signal.aborted) {
106
- result.push({ rowIndex: i, id1: selectedItems[i].id, id2: 0, resultType: ResultTypes.WARNING, description: `Operazione interrotta. Elaborati ${i + 1} lavori` });
107
- break;
108
- }
109
- setWaitPanelValuePrimary(i + 1);
110
- setWaitPanelTextPrimary(`Documento ${i + 1} di ${selectedItems.length}`);
111
- try {
112
- await PlatformObjectService.deleteAsync(objClass, selectedItems[i]?.id);
113
- result.push({ rowIndex: i, id1: selectedItems[i].id, id2: 0, description: objType?.toString(), resultType: ResultTypes.SUCCESS });
114
- }
115
- catch (ex) {
116
- result.push({ rowIndex: i, id1: selectedItems[i].id, id2: 0, resultType: ResultTypes.ERROR, description: getExceptionMessage(ex) });
97
+ try {
98
+ for (let i = 0; i < selectedItems.length; i++) {
99
+ if (waitPanel.aborted) {
100
+ const description = SDKUI_Localizator.OperationItemsInterrupted.replaceParams(i);
101
+ result.push({ rowIndex: i, id1: selectedItems[i].id, id2: 0, resultType: ResultTypes.WARNING, description });
102
+ waitPanel.warning(1, description);
103
+ break;
104
+ }
105
+ waitPanel.setSubtitle(`Documento ${i + 1} di ${selectedItems.length}`);
106
+ try {
107
+ await PlatformObjectService.deleteAsync(objClass, selectedItems[i]?.id);
108
+ result.push({ rowIndex: i, id1: selectedItems[i].id, id2: 0, description: objType?.toString(), resultType: ResultTypes.SUCCESS });
109
+ waitPanel.ok();
110
+ }
111
+ catch (ex) {
112
+ const description = getExceptionMessage(ex);
113
+ result.push({ rowIndex: i, id1: selectedItems[i].id, id2: 0, resultType: ResultTypes.ERROR, description });
114
+ const item = selectedItems[i];
115
+ waitPanel.error(1, `${item?.name ?? `ID ${item?.id}`}: ${description}`);
116
+ }
117
+ // Avanza a elaborazione conclusa: con un solo elemento la barra non parte dal 100%
118
+ await waitPanel.step();
117
119
  }
118
120
  }
119
- setWaitPanelMaxValuePrimary(0);
120
- setWaitPanelValuePrimary(0);
121
- setWaitPanelTextPrimary('');
122
- setShowWaitPanel(false);
121
+ finally {
122
+ waitPanel.close();
123
+ }
123
124
  TMResultManager.show(result, operationTitle, "JobID", undefined);
124
125
  await loadDataAsync();
125
126
  };
@@ -208,7 +209,7 @@ const TMPage = ({ id, objClass = ObjectClasses.None, listDisabled = false, lastR
208
209
  });
209
210
  };
210
211
  const cellRenderObjectIcon = (data) => { return PlatformObjectService.getIcon(objClass, data.row.data); };
211
- return (_jsx(TMLayoutWaitingContainer, { direction: 'vertical', showWaitPanel: showWaitPanel, showWaitPanelPrimary: showPrimary, waitPanelTitle: waitPanelTitle, waitPanelTextPrimary: waitPanelTextPrimary, waitPanelValuePrimary: waitPanelValuePrimary, waitPanelMaxValuePrimary: waitPanelMaxValuePrimary, isCancelable: true, abortController: abortController, children: _jsxs(TMSplitterLayout, { direction: "horizontal", showSeparator: showList && deviceType !== DeviceType.MOBILE, separatorSize: 10, separatorColor: 'transparent', separatorActiveColor: 'transparent', start: showList ? deviceType !== DeviceType.MOBILE ? ['30%', '70%'] : ['100%', '0%'] : ['0', '100%'], min: ['0px', '0px'], children: [listInsteadOfContent ??
212
+ return (_jsx(TMLayoutContainer, { direction: 'vertical', children: _jsxs(TMSplitterLayout, { direction: "horizontal", showSeparator: showList && deviceType !== DeviceType.MOBILE, separatorSize: 10, separatorColor: 'transparent', separatorActiveColor: 'transparent', start: showList ? deviceType !== DeviceType.MOBILE ? ['30%', '70%'] : ['100%', '0%'] : ['0', '100%'], min: ['0px', '0px'], children: [listInsteadOfContent ??
212
213
  _jsxs(TMToolbarCard, { title: objNames, children: [_jsx(ToolbarPage, {}), _jsxs(DataGrid, { disabled: selectionListDisabled, ref: (grid) => (gridInstance = grid), height: "calc(100% - 35px)", width: 'calc(100% - 5px)', dataSource: items, keyExpr: "id", allowColumnResizing: true, columnResizingMode: "widget", allowColumnReordering: true, showBorders: false, onContentReady: (e) => {
213
214
  setVisibleItems(e.component.getVisibleRows().map((row) => { return row.data; }));
214
215
  e.component.selectRows(selectedItems?.map((item) => item.id), false);
@@ -2,22 +2,18 @@ import React from 'react';
2
2
  import { QueryDescriptor, ValidationItem } from '@topconsultnpm/sdk-ts';
3
3
  import { ITMApplyFormProps, FormModes } from '../../ts';
4
4
  import type { TMContextMenuItemProps } from '../NewComponents/ContextMenu/types';
5
- export declare const StyledRowItem: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "style"> & {
6
- style?: React.CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
7
- }> & string;
8
- export declare const StyledItemWrapper: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Merged<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "style"> & {
9
- style?: React.CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
10
- }, {
5
+ export declare const StyledRowItem: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never> & Partial<Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>>> & string;
6
+ export declare const StyledItemWrapper: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "$borderRadius"> & {
11
7
  $borderRadius?: string;
12
- }>> & string;
13
- export declare const StyledAccordionItemContainer: import("styled-components/dist/types").IStyledComponentBase<"web", Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "style"> & {
14
- style?: React.CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
15
- }> & string;
16
- export declare const StyledAccordionItemContent: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Merged<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "style"> & {
17
- style?: React.CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
18
- }, {
8
+ }, never> & Partial<Pick<import("styled-components").FastOmit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "$borderRadius"> & {
9
+ $borderRadius?: string;
10
+ }, never>>> & string;
11
+ export declare const StyledAccordionItemContainer: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never> & Partial<Pick<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>>> & string;
12
+ export declare const StyledAccordionItemContent: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "$disabled"> & {
13
+ $disabled?: boolean;
14
+ }, never> & Partial<Pick<import("styled-components").FastOmit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "$disabled"> & {
19
15
  $disabled?: boolean;
20
- }>> & string;
16
+ }, never>>> & string;
21
17
  export declare const colorValue = "rgba(224,224,224,.5)";
22
18
  export declare const colorBrackets = "rgba(209,52,56,.3)";
23
19
  export declare const colorOperator = "rgba(16,124,16,.3)";
@@ -47,6 +43,9 @@ interface ITMQueryEditor extends ITMApplyFormProps<QueryDescriptor> {
47
43
  isExpertMode?: boolean;
48
44
  validateSelect?: boolean;
49
45
  validateOrderBy?: boolean;
46
+ /** Richiede almeno un filtro: senza, l'errore compare nell'elenco e l'applica resta disabilitato.
47
+ * Default false — una query senza filtri è legittima quasi ovunque nel prodotto. */
48
+ validateWhereRequired?: boolean;
50
49
  showDistinct?: boolean;
51
50
  raiseWarningForOnlyMetadataDcmtTypes?: boolean;
52
51
  borderRadius?: string;
@@ -63,7 +63,7 @@ export function useQueryApplyForm(d, formMode, inputData, onApplied, parameters)
63
63
  const [validationItems, setValidationItems] = useState([]);
64
64
  return { formData, setFormData, formDataOrig, validationItems, setValidationItems, exception, applyData };
65
65
  }
66
- const TMQueryEditor = ({ formMode, inputData, onQDChanged, isExpertMode, showDistinct = false, showToolbar = true, validateSelect = true, validateOrderBy = true, raiseWarningForOnlyMetadataDcmtTypes = false, onApplied, onClose, height = 'auto', borderRadius = '4px', searchText, showApply, showUndo, showBack, onFromTIDChanged, ShowOnlySAP, updateIsModalOpen, showSearchResultSidebar = true, showDcmtFormSidebar = true, showToppyDraggableHelpCenter = true, toppyHelpCenterUsePortal = false }) => {
66
+ const TMQueryEditor = ({ formMode, inputData, onQDChanged, isExpertMode, showDistinct = false, showToolbar = true, validateSelect = true, validateOrderBy = true, validateWhereRequired = false, raiseWarningForOnlyMetadataDcmtTypes = false, onApplied, onClose, height = 'auto', borderRadius = '4px', searchText, showApply, showUndo, showBack, onFromTIDChanged, ShowOnlySAP, updateIsModalOpen, showSearchResultSidebar = true, showDcmtFormSidebar = true, showToppyDraggableHelpCenter = true, toppyHelpCenterUsePortal = false }) => {
67
67
  const [confirmQueryParams, ConfirmQueryParamsDialog] = useQueryParametersDialog();
68
68
  const { formData, setFormData, formDataOrig, validationItems, setValidationItems, exception, applyData } = useQueryApplyForm(Descriptors.Query, formMode, inputData, onApplied);
69
69
  const [dcmtTypesList, setDcmtTypesList] = useState([]);
@@ -111,6 +111,7 @@ const TMQueryEditor = ({ formMode, inputData, onQDChanged, isExpertMode, showDis
111
111
  let qvo = new QueryValidatorOptions();
112
112
  qvo.DoSelectValidation = validateSelect;
113
113
  qvo.DoOrderByValidation = validateOrderBy;
114
+ qvo.DoWhereRequiredValidation = validateWhereRequired;
114
115
  qvo.RaiseWarningForOnlyMetadataDcmtTypes = raiseWarningForOnlyMetadataDcmtTypes;
115
116
  PlatformObjectValidator.QueryValidatorAsync(formData, vil, qvo).then(() => { setValidationItems(vil); });
116
117
  };
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  declare const SettingsAppearance: ({ landingPagesOptions, permissions, showConfirmPopup }: {
3
2
  landingPagesOptions?: {
4
3
  display: string;
@@ -12,5 +11,5 @@ declare const SettingsAppearance: ({ landingPagesOptions, permissions, showConfi
12
11
  workFlowLicense: boolean;
13
12
  };
14
13
  showConfirmPopup?: (title: string, onConfirm: () => void) => void;
15
- }) => React.JSX.Element;
14
+ }) => import("react/jsx-runtime").JSX.Element;
16
15
  export default SettingsAppearance;
@@ -1,9 +1,8 @@
1
- import React from 'react';
2
1
  interface TMAboutAppProps {
3
2
  app: boolean;
4
3
  skdui: boolean;
5
4
  sdk: boolean;
6
5
  websdk: boolean;
7
6
  }
8
- export declare const TMAboutApp: (props: TMAboutAppProps) => React.JSX.Element;
7
+ export declare const TMAboutApp: (props: TMAboutAppProps) => import("react/jsx-runtime").JSX.Element;
9
8
  export {};
@@ -1,9 +1,9 @@
1
1
  import React from 'react';
2
- export declare const StyledCommandsPanel: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Merged<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "style"> & {
3
- style?: React.CSSProperties | import("styled-components/dist/types").CSSPropertiesWithVars | undefined;
4
- }, {
2
+ export declare const StyledCommandsPanel: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "$isMobile"> & {
5
3
  $isMobile?: boolean;
6
- }>> & string;
4
+ }, never> & Partial<Pick<import("styled-components").FastOmit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "$isMobile"> & {
5
+ $isMobile?: boolean;
6
+ }, never>>> & string;
7
7
  export interface TMCommandItemProps {
8
8
  icon: React.ReactNode;
9
9
  selected?: boolean;
@@ -16,6 +16,7 @@ interface ITMHeader {
16
16
  searchContext?: TMSearchContext;
17
17
  settingsMenuContext?: React.ReactNode;
18
18
  customButtons?: React.ReactNode;
19
+ toppyButton?: React.ReactNode;
19
20
  onMenusOpen?: VoidFunction;
20
21
  onChangePassword?: VoidFunction;
21
22
  onLogout?: VoidFunction;
@@ -36,8 +37,8 @@ export declare const TMSearchBar: ({ searchValue, onSearchValueChanged, maxWidth
36
37
  marginLeft?: string;
37
38
  searchValue: string;
38
39
  onSearchValueChanged: (value: string) => void;
39
- }) => React.JSX.Element;
40
+ }) => import("react/jsx-runtime").JSX.Element;
40
41
  declare const TMHeader: React.FC<ITMHeader>;
41
42
  export default TMHeader;
42
- export declare function IconHeaderNotifications(props: Readonly<React.SVGProps<SVGSVGElement>>): React.JSX.Element;
43
- export declare function IconHeaderSettings(props: Readonly<React.SVGProps<SVGSVGElement>>): React.JSX.Element;
43
+ export declare function IconHeaderNotifications(props: Readonly<React.SVGProps<SVGSVGElement>>): import("react/jsx-runtime").JSX.Element;
44
+ export declare function IconHeaderSettings(props: Readonly<React.SVGProps<SVGSVGElement>>): import("react/jsx-runtime").JSX.Element;
@@ -90,7 +90,7 @@ export const TMSearchBar = ({ searchValue, onSearchValueChanged, maxWidth, margi
90
90
  const deviceType = useDeviceType();
91
91
  return (_jsxs(StyledSearchBarContainer, { style: { maxWidth: maxWidth ? maxWidth : deviceType === DeviceType.MOBILE ? '65%' : '650px', marginLeft: marginLeft ? marginLeft : deviceType === DeviceType.MOBILE ? '10px' : '20px' }, $isMobile: deviceType === DeviceType.MOBILE, children: [" ", _jsx(StyledSearchBar, { placeholder: SDKUI_Localizator.Search + '...', type: "text", value: searchValue, onChange: (e) => onSearchValueChanged(e.target.value) }), searchValue.length > 0 && _jsx(IconCloseOutline, { onClick: () => onSearchValueChanged(''), color: '#00000060', style: { cursor: 'pointer', position: 'absolute', width: '20px', height: '20px', right: '5px', top: '5px', zIndex: 1 } })] }));
92
92
  };
93
- const TMHeader = ({ customButtons = _jsx(_Fragment, {}), onMenusOpen, showSettingsMenu = true, showSearchBar = true, clearSearchJobValue, clearSearchQEValue, searchContext = TMSearchContext.JOBS, onChangePassword, onLogout, settingsMenuContext, onSeacrhJobsValueChange, onSeacrhJobslistValueChange, onSeacrhProcessMonitorValueChange, onSeacrhProcessValueChange, onSeacrhPlatformValueChange, onSeacrhQEValueChange, onSettingsClick }) => {
93
+ const TMHeader = ({ customButtons = _jsx(_Fragment, {}), toppyButton = _jsx(_Fragment, {}), onMenusOpen, showSettingsMenu = true, showSearchBar = true, clearSearchJobValue, clearSearchQEValue, searchContext = TMSearchContext.JOBS, onChangePassword, onLogout, settingsMenuContext, onSeacrhJobsValueChange, onSeacrhJobslistValueChange, onSeacrhProcessMonitorValueChange, onSeacrhProcessValueChange, onSeacrhPlatformValueChange, onSeacrhQEValueChange, onSettingsClick }) => {
94
94
  const [appRoutes, setAppRoutes] = useState();
95
95
  const [menuStatus, setMenuStatus] = useState(false);
96
96
  const [showAppMenu, setShowAppMenu] = useState(false);
@@ -249,7 +249,7 @@ const TMHeader = ({ customButtons = _jsx(_Fragment, {}), onMenusOpen, showSettin
249
249
  }, onMouseLeave: () => {
250
250
  if (openMenuTimer.current)
251
251
  clearTimeout(openMenuTimer.current);
252
- }, src: six, height: isMobile ? 35 : 40, alt: "" }), (!isMobile || SDK_Globals.appModule === AppModules.WORD_CONNECTOR) && _jsx(StyledHeaderAppText, { children: headerAppName })] }), showSearchBar && _jsxs(_Fragment, { children: [searchContext === TMSearchContext.JOBS_LIST && _jsx(TMSearchBar, { onSearchValueChanged: (e) => setSearchJobListValue(e), searchValue: searchJobListValue }), searchContext === TMSearchContext.JOBS && _jsx(TMSearchBar, { onSearchValueChanged: (e) => setSearchJobsValue(e), searchValue: searchJobsValue }), searchContext === TMSearchContext.PROCESSES && _jsx(TMSearchBar, { onSearchValueChanged: (e) => setSearchProcessesValue(e), searchValue: searchProcessesValue }), searchContext === TMSearchContext.PROCESS_MONITOR && _jsx(TMSearchBar, { onSearchValueChanged: (e) => setSearchProcessMonitorValue(e), searchValue: searchProcessMonitorValue }), searchContext === TMSearchContext.PLATFORM && _jsx(TMSearchBar, { onSearchValueChanged: (e) => setSearchPlatformValue(e), searchValue: searchPlatformValue }), searchContext === TMSearchContext.QE && _jsx(TMSearchBar, { onSearchValueChanged: (e) => setSearchQEValue(e), searchValue: searchQEValue })] }), customButtons] }), showSettingsMenu && _jsxs(StyledHeaderIcon, { onClick: () => onSettingsClick?.(), children: [" ", _jsx(IconHeaderSettings, { fontSize: 24 }), " "] }), _jsx(UserAvatarContainer, { $isSelected: menuStatus, ref: userIcon, onClick: e => {
252
+ }, src: six, height: isMobile ? 35 : 40, alt: "" }), (!isMobile || SDK_Globals.appModule === AppModules.WORD_CONNECTOR) && _jsx(StyledHeaderAppText, { children: headerAppName })] }), showSearchBar && _jsxs(_Fragment, { children: [searchContext === TMSearchContext.JOBS_LIST && _jsx(TMSearchBar, { onSearchValueChanged: (e) => setSearchJobListValue(e), searchValue: searchJobListValue }), searchContext === TMSearchContext.JOBS && _jsx(TMSearchBar, { onSearchValueChanged: (e) => setSearchJobsValue(e), searchValue: searchJobsValue }), searchContext === TMSearchContext.PROCESSES && _jsx(TMSearchBar, { onSearchValueChanged: (e) => setSearchProcessesValue(e), searchValue: searchProcessesValue }), searchContext === TMSearchContext.PROCESS_MONITOR && _jsx(TMSearchBar, { onSearchValueChanged: (e) => setSearchProcessMonitorValue(e), searchValue: searchProcessMonitorValue }), searchContext === TMSearchContext.PLATFORM && _jsx(TMSearchBar, { onSearchValueChanged: (e) => setSearchPlatformValue(e), searchValue: searchPlatformValue }), searchContext === TMSearchContext.QE && _jsx(TMSearchBar, { onSearchValueChanged: (e) => setSearchQEValue(e), searchValue: searchQEValue })] }), customButtons] }), toppyButton, showSettingsMenu && _jsxs(StyledHeaderIcon, { onClick: () => onSettingsClick?.(), children: [" ", _jsx(IconHeaderSettings, { fontSize: 24 }), " "] }), _jsx(UserAvatarContainer, { $isSelected: menuStatus, ref: userIcon, onClick: e => {
253
253
  e.stopPropagation();
254
254
  e.preventDefault();
255
255
  setMenuStatus(prev => !prev);
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import { DataListViewModes } from '@topconsultnpm/sdk-ts';
3
2
  import { DataGridTypes } from 'devextreme-react/data-grid';
4
3
  interface ITMDataListItemViewerProps {
@@ -8,6 +7,6 @@ interface ITMDataListItemViewerProps {
8
7
  showTooltip?: boolean;
9
8
  width?: string;
10
9
  }
11
- declare const TMDataListItemViewer: ({ dataListId, value, viewMode, showTooltip, width }: ITMDataListItemViewerProps) => React.JSX.Element | null;
10
+ declare const TMDataListItemViewer: ({ dataListId, value, viewMode, showTooltip, width }: ITMDataListItemViewerProps) => import("react/jsx-runtime").JSX.Element | null;
12
11
  export default TMDataListItemViewer;
13
- export declare const cellRenderDataListItem: (data: DataGridTypes.ColumnCellTemplateData, dataListId?: number, viewMode?: DataListViewModes) => React.JSX.Element;
12
+ export declare const cellRenderDataListItem: (data: DataGridTypes.ColumnCellTemplateData, dataListId?: number, viewMode?: DataListViewModes) => import("react/jsx-runtime").JSX.Element;
@@ -1,9 +1,8 @@
1
- import React from 'react';
2
1
  import { DataGridTypes } from 'devextreme-react/data-grid';
3
2
  interface ITMDataUserIdItemViewerProps {
4
3
  userId?: number;
5
4
  showIcon?: boolean;
6
5
  }
7
- declare const TMDataUserIdItemViewer: ({ userId, showIcon }: ITMDataUserIdItemViewerProps) => React.JSX.Element | null;
6
+ declare const TMDataUserIdItemViewer: ({ userId, showIcon }: ITMDataUserIdItemViewerProps) => import("react/jsx-runtime").JSX.Element | null;
8
7
  export default TMDataUserIdItemViewer;
9
- export declare const cellRenderUserIdItem: (data: DataGridTypes.ColumnCellTemplateData, showIcon?: boolean) => React.JSX.Element;
8
+ export declare const cellRenderUserIdItem: (data: DataGridTypes.ColumnCellTemplateData, showIcon?: boolean) => import("react/jsx-runtime").JSX.Element;
@@ -22,7 +22,7 @@ interface ITMMetadataIcon {
22
22
  isMetadataSelected?: boolean;
23
23
  elementStyle?: React.CSSProperties;
24
24
  }
25
- export declare const TMMetadataIcon: ({ tid, md, color, layoutMode, isMetadataSelected, elementStyle }: ITMMetadataIcon) => React.JSX.Element | null;
25
+ export declare const TMMetadataIcon: ({ tid, md, color, layoutMode, isMetadataSelected, elementStyle }: ITMMetadataIcon) => import("react/jsx-runtime").JSX.Element | null;
26
26
  interface ITMMetadataTooltip {
27
27
  tid: number | undefined;
28
28
  md: MetadataDescriptor | undefined;
@@ -31,6 +31,6 @@ interface ITMMetadataTooltip {
31
31
  layoutMode?: LayoutModes;
32
32
  }
33
33
  export declare const TMMetadataTooltip: React.FC<ITMMetadataTooltip>;
34
- export declare const cellRenderMID: (data: DataGridTypes.ColumnCellTemplateData, noneSelectionText?: string, tid?: number) => React.JSX.Element;
34
+ export declare const cellRenderMID: (data: DataGridTypes.ColumnCellTemplateData, noneSelectionText?: string, tid?: number) => import("react/jsx-runtime").JSX.Element;
35
35
  export declare const getDisplayAlias: (dcmtTypeName: string | undefined, alias: string | undefined) => string | undefined;
36
36
  export {};
@@ -252,5 +252,5 @@ export interface ITMTidViewerProps {
252
252
  }
253
253
  declare const TMTidViewer: React.FC<ITMTidViewerProps>;
254
254
  export default TMTidViewer;
255
- export declare const cellRenderTID: (data: DataGridTypes.ColumnCellTemplateData, noneSelectionText?: string) => React.JSX.Element;
256
- export declare const renderDTDTooltipContent: (dtd: DcmtTypeDescriptor | undefined) => React.JSX.Element | null;
255
+ export declare const cellRenderTID: (data: DataGridTypes.ColumnCellTemplateData, noneSelectionText?: string) => import("react/jsx-runtime").JSX.Element;
256
+ export declare const renderDTDTooltipContent: (dtd: DcmtTypeDescriptor | undefined) => import("react/jsx-runtime").JSX.Element | null;
@@ -83,6 +83,7 @@ export function LocalizeJobTypes(value) {
83
83
  switch (value) {
84
84
  case JobTypes.FileExec: return "CustomExec";
85
85
  case JobTypes.Signer: return "DcmtSigner";
86
+ case JobTypes.DcmtCreator: return "DcmtStudio";
86
87
  case JobTypes.CassettoFiscaleQuery:
87
88
  switch (cultureID) {
88
89
  case CultureIDs.It_IT: return value?.toString();
@@ -66,8 +66,13 @@ export declare class ThemeSettings {
66
66
  };
67
67
  }
68
68
  export declare const DEFAULT_PREVIEW_THRESHOLD = 500;
69
- export declare const DEFAULT_PAGE_SIZE = 100;
70
- export declare const DEFAULT_MAX_DCMTS_TO_BE_RETURNED = 200;
69
+ export declare const DEFAULT_PAGE_SIZE = 200;
70
+ /** Oltre questo numero di righe per pagina la griglia dei risultati usa il rendering virtuale delle righe */
71
+ export declare const VIRTUAL_RENDERING_THRESHOLD = 500;
72
+ /** Oltre questo numero di celle per pagina (righe × colonne visibili) la griglia dei risultati usa il rendering virtuale delle righe:
73
+ * il costo di rendering, selezione e repaint cresce con le celle, non solo con le righe */
74
+ export declare const VIRTUAL_RENDERING_CELL_THRESHOLD = 3000;
75
+ export declare const DEFAULT_MAX_DCMTS_TO_BE_RETURNED = 1000;
71
76
  export declare const DEFAULT_QUICK_SEARCH_MAX_DCMTS = 1000;
72
77
  /** Ricerca rapida configurata come sorgente alternativa dei valori distinti di un campo */
73
78
  export declare class DistinctValuesQuickSearchSettings {
@@ -129,8 +129,13 @@ export class ThemeSettings {
129
129
  }
130
130
  }
131
131
  export const DEFAULT_PREVIEW_THRESHOLD = 500; // KB
132
- export const DEFAULT_PAGE_SIZE = 100;
133
- export const DEFAULT_MAX_DCMTS_TO_BE_RETURNED = 200;
132
+ export const DEFAULT_PAGE_SIZE = 200;
133
+ /** Oltre questo numero di righe per pagina la griglia dei risultati usa il rendering virtuale delle righe */
134
+ export const VIRTUAL_RENDERING_THRESHOLD = 500;
135
+ /** Oltre questo numero di celle per pagina (righe × colonne visibili) la griglia dei risultati usa il rendering virtuale delle righe:
136
+ * il costo di rendering, selezione e repaint cresce con le celle, non solo con le righe */
137
+ export const VIRTUAL_RENDERING_CELL_THRESHOLD = 3000;
138
+ export const DEFAULT_MAX_DCMTS_TO_BE_RETURNED = 1000;
134
139
  export const DEFAULT_QUICK_SEARCH_MAX_DCMTS = 1000;
135
140
  /** Ricerca rapida configurata come sorgente alternativa dei valori distinti di un campo */
136
141
  export class DistinctValuesQuickSearchSettings {
@@ -10,6 +10,7 @@ export declare class SDKUI_Localizator {
10
10
  static get ActivityOverMultipleDays(): "Actividades durante los {{0}} días" | "Activities over the course of {{0}} days" | "Activités sur {{0}} jours" | "Aktivitäten in den letzten {{0}} Tagen" | "Atividades ao longo de {{0}} dias" | "Attività che svolge nell'arco di {{0}} giorni";
11
11
  static get Abort(): "Abort" | "Arrêtez" | "Detener" | "Interrompi" | "Parar" | "Stoppen";
12
12
  static get Abort_Confirm(): "Cancel processing?" | "Interrompere l'elaborazione?" | "Pare o processamento?" | "Stoppen Sie die Verarbeitung?" | "Voulez-vous interrompre l'operation?" | "¿Interrumpir la elaboración?";
13
+ static get Aborting(): "A parar..." | "Aborting..." | "Arrêt en cours..." | "Deteniendo..." | "Interruzione..." | "Wird gestoppt...";
13
14
  static get About(): "About" | "Información" | "Informationen" | "Informations" | "Informazioni" | "Informações";
14
15
  static get AccessToOtherApplications(): string;
15
16
  static get Add(): "Add" | "Adicionar" | "Aggiungi" | "Ajoute" | "Añadir" | "Hinzufügen";
@@ -34,7 +35,9 @@ export declare class SDKUI_Localizator {
34
35
  static get AllItems(): "All items" | "Todos los artículos" | "alle Artikel" | "todos os artigos" | "tous les articles" | "tutti gli elementi";
35
36
  static get AllPriorities(): "All priorities" | "Alle Prioritäten" | "Todas as prioridades" | "Todas las prioridades" | "Toutes les priorités" | "Tutte le priorità";
36
37
  static get AllStates(): "All states" | "Alle Staaten" | "Todos los estados" | "Todos os estados" | "Tous les états" | "Tutti gli stati";
38
+ static get AllowedValuesRange(): "Allowed values: from {{0}} to {{1}}" | "Valeurs autorisées : de {{0}} à {{1}}" | "Valores permitidos: de {{0}} a {{1}}" | "Valori consentiti: da {{0}} a {{1}}" | "Zulässige Werte: von {{0}} bis {{1}}";
37
39
  static get Alphabetic(): "Alfabetico" | "Alfabética" | "Alfabético" | "Alphabetic" | "Alphabetisch" | "Alphabétique";
40
+ static get AndOthersCount(): string;
38
41
  static get Anomalies(): "Anomalias" | "Anomalie" | "Anomalien" | "Anomalies" | "Anomalías";
39
42
  static get Answer(): "Answer" | "Antwort" | "Resposta" | "Respuesta" | "Risposta" | "Réponse";
40
43
  static get AnswerTooltip(): "A resposta só pode ser editada se o estado da atividade for \"Concluída\", \"Pendente\" ou \"Adiada\"." | "Die Antwort kann nur bearbeitet werden, wenn der Aktivitätsstatus \"Abgeschlossen\", \"Ausstehend\" oder \"Verschoben\" ist." | "La respuesta solo se puede editar si el estado de la actividad es \"Completada\", \"Pendiente\" o \"Pospuesta\"." | "La risposta può essere modificata solo se lo stato dell’attività è \"Completata\", \"In attesa\" o \"Rinviata\"." | "La réponse peut être modifiée uniquement si l'état de l’activité est \"Terminée\", \"En attente\" ou \"Reportée\"." | "The answer can be edited only if the activity status is \"Completed\", \"Pending\", or \"Deferred\".";
@@ -201,7 +204,6 @@ export declare class SDKUI_Localizator {
201
204
  static get Deletion(): string;
202
205
  static get DeletionCompletedSuccessfully(): "Deletion completed successfully" | "Eliminación completada con éxito" | "Eliminazione completata con successo" | "Exclusão concluída com sucesso" | "Löschung erfolgreich abgeschlossen" | "Suppression terminée avec succès";
203
206
  static get Deleted(): "Deleted" | "Eliminados" | "Eliminati" | "Excluídos" | "Gelöscht" | "Supprimés";
204
- static get DeletionOperationInterrupted(): "Deletion operation interrupted" | "Löschvorgang abgebrochen" | "Operación de eliminación interrumpida" | "Operazione di eliminazione interrotta" | "Operação de exclusão interrompida" | "Opération de suppression interrompue";
205
207
  static get Deny(): "Ablehnen" | "Denegar" | "Deny" | "Negar" | "Negato" | "Refuser";
206
208
  static get Description(): "Beschreibung" | "Descripción" | "Description" | "Descrizione" | "Descrição";
207
209
  static get DescriptionLengthExceededMessage(): "A descrição é demasiado longa: {{0}} caracteres a mais" | "Description is too long: {{0}} characters too many" | "Die Beschreibung ist zu lang: {{0}} Zeichen zu viel" | "La descripción es demasiado larga: {{0}} caracteres de más" | "La description est trop longue : {{0}} caractères en trop" | "La descrizione è troppo lunga: {{0}} caratteri in più";
@@ -261,6 +263,8 @@ export declare class SDKUI_Localizator {
261
263
  static get Dossiers(): "Akten" | "Dossiers" | "Expedientes" | "Pratiche" | "Pratiques" | "Práticas";
262
264
  static get DossierType(): "Aktentyp" | "Dossier Type" | "Modello di Pratica" | "Tipo de Expediente" | "Tipo de Prática" | "Type de Pratique";
263
265
  static get DownloadFile(): string;
266
+ static get DownloadInterrupted(): string;
267
+ static get DownloadInterruptedFiles(): string;
264
268
  static get Download_in_Process(): "Descarga en curso" | "Download em progresso" | "Download in corso" | "Download in progress" | "Download läuft" | "Téléchargement en cours";
265
269
  static get DownloadXMLAttachments(): string;
266
270
  static get Draft(): string;
@@ -275,11 +279,11 @@ export declare class SDKUI_Localizator {
275
279
  static get DuplicationCompletedSuccessfully(): "Duplicación completada con éxito" | "Duplication completed successfully" | "Duplication terminée avec succès" | "Duplicazione completata con successo" | "Duplicação concluída com sucesso" | "Duplikation erfolgreich abgeschlossen";
276
280
  static get DuplicateDocument(): string;
277
281
  static get DuplicateNameError(): "Der Name existiert bereits in der Anmeldehistorie. Bitte wählen Sie einen anderen Namen" | "El nombre ya existe en el historial de inicio de sesión. Por favor, elija un nombre diferente" | "Il nome esiste già nella cronologia di accesso. Si prega di scegliere un nome diverso" | "Le nom existe déjà dans l'historique de connexion. Veuillez choisir un autre nom" | "O nome já existe no histórico de login. Por favor, escolha um nome diferente" | "The name already exists in the login history. Please choose a different nam";
278
- static get DuplicationOperationInterrupted(): "Duplication operation interrupted" | "Duplikationsvorgang abgebrochen" | "Operación de duplicación interrumpida" | "Operazione di duplicazione interrotta" | "Operação de duplicação interrompida" | "Opération de duplication interrompue";
279
282
  static get DuplicateActivity(): string;
280
283
  static get Edit_ConfirmFor1(): "Are you sure you want to modify '{{0}}'?" | "Möchten Sie '{{0}}' ändern?" | "Sei sicuro di voler modificare '{{0}}'?" | "Você tem certeza que deseja modificar '{{0}}'?" | "¿Estás seguro de que deseas modificar '{{0}}'?" | "Êtes-vous sûr de vouloir modifier '{{0}}'?";
281
284
  static get Edit_ConfirmForN(): "{{0}} ausgewählte Objekte. Alle ändern?" | "{{0}} objetos seleccionados. ¿Modificar todos?" | "{{0}} objetos selecionados. Modificá-los todos?" | "{{0}} objets sélectionnés. Voulez-vous tous les modifier?" | "{{0}} oggetti selezionati. Modificare tutti?" | "{{0}} selected objects. Modify them all?";
282
285
  static get EditorConfiguration(): string;
286
+ static get Elapsed(): "decorridos" | "elapsed" | "transcurridos" | "trascorsi" | "vergangen" | "écoulés";
283
287
  static get ElectronicInvoice(): "Electronic invoice" | "Elektronische Rechnung" | "Factura electrónica" | "Facture électronique" | "Fattura elettronica" | "Fatura eletrônica";
284
288
  static get ElectronicOrder(): "Commande électronique" | "Electronic order" | "Elektronische Bestellung" | "Orden electrónica" | "Ordine elettronico" | "Pedido eletrônico";
285
289
  static get ElementNameConventionError(): string;
@@ -318,6 +322,7 @@ export declare class SDKUI_Localizator {
318
322
  static get ExpansionInProgress(): "Erweiterung läuft..." | "Espansione in corso..." | "Expansion en cours..." | "Expansion in progress..." | "Expansión en curso..." | "Expansão em andamento...";
319
323
  static get FullReloadInProgress(): "Full reload in progress..." | "Recarga completa en curso..." | "Recarregamento completo em andamento..." | "Rechargement complet en cours..." | "Ricaricamento completo in corso..." | "Vollständiges Neuladen läuft...";
320
324
  static get ExpansionProgress(): "Erweiterung {{0}} von {{1}}..." | "Espansione {{0}} di {{1}}..." | "Expansion {{0}} of {{1}}..." | "Expansion {{0}} sur {{1}}..." | "Expansión {{0}} de {{1}}..." | "Expansão {{0}} de {{1}}...";
325
+ static get ExpansionProgressIsEstimated(): "D'autres nœuds sont trouvés pendant l'expansion : le total augmente et le pourcentage est indicatif." | "Durante a expansão são encontrados mais nós: o total aumenta e a percentagem é indicativa." | "Durante l'espansione vengono trovati altri nodi: il totale aumenta e la percentuale è indicativa." | "Durante la expansión se encuentran más nodos: el total aumenta y el porcentaje es orientativo." | "More nodes are found during the expansion: the total increases and the percentage is approximate." | "Während der Erweiterung werden weitere Knoten gefunden: Der Gesamtwert steigt und der Prozentsatz ist ein Richtwert.";
321
326
  static get Expected(): "Attendu" | "Atteso" | "Erwartet" | "Esperado" | "Expected";
322
327
  static get Expiration(): "Ablaufdatum" | "Data de expiração" | "Date d'expiration" | "Expiration" | "Fecha de expiración" | "Scadenza";
323
328
  static get ExpirationDate(): "Ablaufdatum" | "Data de validade" | "Data di scadenza" | "Date d'échéance" | "Expiration date" | "Fecha de vencimiento";
@@ -428,6 +433,17 @@ export declare class SDKUI_Localizator {
428
433
  static get GoToToday(): "Aller à aujourd'hui" | "Gehe zu heute" | "Go to today" | "Ir a hoy" | "Ir para hoje" | "Vai a oggi";
429
434
  static get GoToWorkgroup(): "Aller au groupe de travail" | "Gehe zur Arbeitsgruppe" | "Go to workgroup" | "Ir al grupo de trabajo" | "Ir para grupo de trabalho" | "Vai al gruppo di lavoro";
430
435
  static get Grids(): string;
436
+ static get HelpOnLineShiftEnterHint(): string;
437
+ static get HelpOnLineThinking01(): string;
438
+ static get HelpOnLineThinking02(): string;
439
+ static get HelpOnLineThinking03(): string;
440
+ static get HelpOnLineThinking04(): string;
441
+ static get HelpOnLineThinking05(): string;
442
+ static get HelpOnLineThinking06(): string;
443
+ static get HelpOnLineThinking07(): string;
444
+ static get HelpOnLineThinking08(): string;
445
+ static get HelpOnLineThinking09(): string;
446
+ static get HelpOnLineThinking10(): string;
431
447
  static get Hide_CompleteName(): "Hide full name" | "Masquer le nom complet" | "Nascondi nome completo" | "Ocultar nombre completo" | "Ocultar nome completo" | "Vollständigen Namen ausblenden";
432
448
  static get HideAll(): "Alle ausblenden" | "Hide all" | "Masquer tout" | "Nascondi tutti" | "Ocultar todo" | "Ocultar tudo";
433
449
  static get HideArchivedDetails(): string;
@@ -464,6 +480,7 @@ export declare class SDKUI_Localizator {
464
480
  static get Invalid_File(): "Archivo inválido" | "Arquivo inválido" | "Fichier non valide" | "File non valido" | "Invalid file" | "Ungültige datei";
465
481
  static get InvalidDcmt(): "Document non valide" | "Documento inválido" | "Documento non valido" | "Invalid document" | "Ungültiges Dokument";
466
482
  static get InvalidEmailAddress(): "\"{{0}}\" is not a valid e-mail address." | "\"{{0}}\" ist keine gültige E-Mail-Adresse." | "\"{{0}}\" n'est pas une adresse e-mail valide." | "\"{{0}}\" no es una dirección de correo electrónico válida." | "\"{{0}}\" non è un indirizzo e-mail valido." | "\"{{0}}\" não é um endereço de e-mail válido.";
483
+ static get InvalidFormatValue(): "Der eingegebene Wert entspricht nicht dem erforderlichen Format." | "El valor introducido no respeta el formato requerido." | "Il valore inserito non rispetta il formato richiesto." | "La valeur saisie ne respecte pas le format requis." | "O valor introduzido não respeita o formato exigido." | "The value entered does not match the required format.";
467
484
  static get InvalidTaxCode(): "\"{{0}}\" is not a valid Tax Code." | "\"{{0}}\" ist kein gültiger Steuerkennzeichen." | "\"{{0}}\" n'est pas un Code Fiscal valide." | "\"{{0}}\" no es un Código Fiscal válido." | "\"{{0}}\" non è un Codice Fiscale valido." | "\"{{0}}\" não é um Código Fiscal válido.";
468
485
  static get InvalidVatNumber(): "\"{{0}}\" is not a valid VAT number (11 digits)." | "\"{{0}}\" ist keine gültige Umsatzsteuer-Identifikationsnummer (11 Ziffern)." | "\"{{0}}\" n'est pas un numéro de TVA valide (11 chiffres)." | "\"{{0}}\" no es un número de IVA válido (11 dígitos)." | "\"{{0}}\" non è una Partita IVA valida (11 cifre)." | "\"{{0}}\" não é um número de IVA válido (11 dígitos).";
469
486
  static get InvoiceRetrieveFormat(): "Esporta la fattura nel seguente formato" | "Export invoice in the following format" | "Exportar la factura en el siguiente formato" | "Exporte a fatura no seguinte formato" | "Exportez la facture au format suivant" | "Exportieren Sie die Rechnung im folgenden Format";
@@ -472,6 +489,8 @@ export declare class SDKUI_Localizator {
472
489
  static get LastUpdateTime(): "Dernière modifie" | "Last update Time" | "Letzte Änderung" | "Ultima modifica" | "Última modificación" | "Última modificação";
473
490
  static get LastVersion(): string;
474
491
  static get Latest(): string;
492
+ static get LatestErrors(): string;
493
+ static get LatestWarnings(): string;
475
494
  static get LayoutRemoved(): string;
476
495
  static get LexProt(): "Lex protection" | "Lex-Schutz" | "Protección Lex" | "Protection Lex" | "Protezione Lex" | "Proteção Lex";
477
496
  static get Line(): "Ligne" | "Line" | "Linea" | "Linha" | "Linie" | "Línea";
@@ -527,6 +546,7 @@ export declare class SDKUI_Localizator {
527
546
  static get MetadataFormats_ShortTime(): "Heure brève" | "Hora breve" | "Hora curta" | "Kurze Stunde" | "Ora breve" | "Short time";
528
547
  static get MetadataFormats_UpperCase(): "Alle SHIFT" | "Todo MAYÚSCULA" | "Todos os CAPS" | "Tout MAJUSCULE" | "Tutto MAIUSCOLO" | "Upper case";
529
548
  static get MetadataOnlyDocument(): string;
549
+ static get MetadataPdfCreationFailed(): string;
530
550
  static get MetadataReferenceInsert(): "Add metadata reference" | "Entrez les métadonnée de référence" | "Inserisci riferimento metadato" | "Insira metadados de referência" | "Introducir referencia metadato" | "Metadaten-Referenz einfügen";
531
551
  static get MetadataRoot(): "Metadados raiz" | "Metadato radice" | "Metadato raíz" | "Methadatenstamm" | "Métadonnée racine" | "Root metadata";
532
552
  static get MetadataSelected(): "Ausgewählte Metadaten" | "Metadados selecionados" | "Metadati selezionati" | "Metadatos seleccionados" | "Métadonnées sélectionnées" | "Selected metadata";
@@ -591,7 +611,7 @@ export declare class SDKUI_Localizator {
591
611
  static get NotAvailable(): string;
592
612
  static get Note(): string;
593
613
  static get NotesAndWarnings(): string;
594
- static get MaximumNumberOfResults(): string;
614
+ static get MaximumNumberOfDocuments(): string;
595
615
  static get OfSystem(): "Del sistema" | "Des Systems" | "Di sistema" | "Do sistema" | "Du système" | "Of system";
596
616
  static get OldPassword(): "Altes Kennwort" | "Ancien mot de passe" | "Contraseña anterior" | "Old password" | "Password vecchia" | "Senha Antiga";
597
617
  static get OpenedDocument(): "Document opened" | "Document ouvert" | "Documento aberto" | "Documento abierto" | "Documento aperto" | "Dokument geöffnet";
@@ -605,7 +625,8 @@ export declare class SDKUI_Localizator {
605
625
  static get OnlyDID(): string;
606
626
  static get OnlyOnePdfOrConvertibleFileSelected(): string;
607
627
  static get OnlyOnePdfOrConvertibleFileMergeBlocked(): string;
608
- static get OperationFilesInterrupted(): string;
628
+ static get OperationDcmtsInterrupted(): string;
629
+ static get OperationItemsInterrupted(): string;
609
630
  static get OperationNotAllowed(): string;
610
631
  static get OperationResult(): "Esito operazione" | "Operation result" | "Operationsergebnis" | "Resultado da operação" | "Resultado de la operación" | "Résultat de l'opération";
611
632
  static get OperationSuccess(): "Operación completada con éxito" | "Operation completed successfully" | "Operazione completata con successo" | "Operação concluída com sucesso" | "Opération terminée avec succès" | "Vorgang erfolgreich abgeschlossen";
@@ -659,6 +680,7 @@ export declare class SDKUI_Localizator {
659
680
  static get PdfMergeError(): string;
660
681
  static get PdfMergeFeatureNotAvailable(): string;
661
682
  static get PdfMergedSavedInFolder(): string;
683
+ static get PerPage(): string;
662
684
  static get Pending(): "Ausstehend" | "En attente" | "In attesa" | "Pendente" | "Pendiente" | "Pending";
663
685
  static get Perms(): "Autorisations" | "Berechtigungen" | "Permessi" | "Permisos" | "Permissions" | "Permissão";
664
686
  static get PersonalTaskAssignmentMessage(): "Attività personale" | "Personal task" | "Persönliche Aufgabe" | "Tarea personal" | "Tarefa pessoal" | "Tâche personnelle";
@@ -700,6 +722,8 @@ export declare class SDKUI_Localizator {
700
722
  static get RelationsNotFound(): "Aucune corrélation trouvée" | "Keine Korrelationen gefunden" | "Nenhuma correlação encontrada" | "Nessuna correlazione trovata" | "No correlations found" | "No se encontraron correlaciones";
701
723
  static get StopRelationsCalculation(): "Berechnung unterbrechen und die bereits berechneten Korrelationen anzeigen" | "Interromper o cálculo e mostrar as correlações já calculadas" | "Interrompi il calcolo e mostra le correlazioni già calcolate" | "Interrompre le calcul et afficher les corrélations déjà calculées" | "Interrumpir el cálculo y mostrar las correlaciones ya calculadas" | "Stop the calculation and show the already calculated correlations";
702
724
  static get RelationsCalculationStopped(): "Berechnung der Korrelationen unterbrochen: Es werden nur die bereits berechneten Korrelationen angezeigt." | "Calcolo delle correlazioni interrotto: vengono mostrate solo le correlazioni già calcolate." | "Calcul des corrélations interrompu : seules les corrélations déjà calculées sont affichées." | "Correlations calculation stopped: only the already calculated correlations are shown." | "Cálculo das correlações interrompido: são mostradas apenas as correlações já calculadas." | "Cálculo de correlaciones interrumpido: solo se muestran las correlaciones ya calculadas.";
725
+ static get RelationsCalculationStoppedProgress(): "Berechnung unterbrochen: {{0}} von {{1}} Dokumenten verarbeitet." | "Calcolo interrotto: elaborati {{0}} documenti su {{1}}." | "Calcul interrompu : {{0}} sur {{1}} documents traités." | "Calculation stopped: {{0}} of {{1}} documents processed." | "Cálculo interrompido: {{0}} de {{1}} documentos processados." | "Cálculo interrumpido: {{0}} de {{1}} documentos procesados.";
726
+ static get RelationsCalculationStoppedEmpty(): "Berechnung unterbrochen: kein Dokument verarbeitet." | "Calcolo interrotto: nessun documento elaborato." | "Calcul interrompu : aucun document traité." | "Calculation stopped: no documents processed." | "Cálculo interrompido: nenhum documento processado." | "Cálculo interrumpido: ningún documento procesado.";
703
727
  static get RelatedDcmtsNotFound(): "Aucun document associé n'a été trouvé pour le document sélectionné." | "Für das ausgewählte Dokument wurden keine zugehörigen Dokumente gefunden." | "Nenhum documento relacionado foi encontrado para o documento selecionado." | "No related documents were found for the selected document." | "No se encontraron documentos relacionados para el documento seleccionado." | "Non sono stati trovati documenti correlati per il documento selezionato.";
704
728
  static get RelationManyToMany(): "Correlación muchos a muchos" | "Correlazione molti a molti" | "Corrélation plusieurs à plusieurs" | "Folge viele mit vielen" | "Muitos para muitos relação" | "Relation many to many";
705
729
  static get RelationType(): "Art der Beziehung" | "Relation type" | "Tipo de relacionamento" | "Tipo de relación" | "Tipo di relazione" | "Type de relation";
@@ -726,6 +750,7 @@ export declare class SDKUI_Localizator {
726
750
  static get ValueMustBeDateOrTime(): "Der Wert muss ein Datum oder eine Uhrzeit sein" | "El valor debe ser una fecha o una hora" | "Il valore deve essere una data o un orario" | "La valeur doit être une date ou une heure" | "O valor deve ser uma data ou hora" | "Value must be a date or time";
727
751
  static get RequiredNOT(): "Nicht obligatorisch" | "No obligatorio" | "Non obbligatorio" | "Not mandatory" | "Não é obrigatório" | "Pas obligatoire";
728
752
  static get Refresh(): "Actualizar" | "Aggiorna" | "Aktualisieren" | "Mis à jour" | "Refrescar" | "Refresh";
753
+ static get Remaining(): "remaining" | "restantes" | "restants" | "rimanenti" | "verbleibend";
729
754
  static get Reminder(): "Erinnerung" | "Lembrete" | "Promemoria" | "Rappel" | "Recordatorio" | "Reminder";
730
755
  static get ReminderSetForToday(): "Es gibt eine Erinnerung, die für heute eingestellt ist und bis zum Ablaufdatum gültig ist" | "Hay un recordatorio establecido para hoy, válido hasta la fecha de vencimiento" | "Há um lembrete definido para hoje, válido até à data de expiração" | "Il y a un rappel réglé pour aujourd'hui, valable jusqu'à la date d'échéance" | "There is a reminder set for today, valid until the expiration date" | "È presente un promemoria impostato per oggi, valido fino alla data di scadenza";
731
756
  static get Remove(): "Entfernen" | "Quitar" | "Remove" | "Remover" | "Rimuovi" | "Supprime";
@@ -740,8 +765,9 @@ export declare class SDKUI_Localizator {
740
765
  static get Result(): string;
741
766
  static get ResultDetails(): string;
742
767
  static get RestoreDownload(): string;
743
- static get ResultsPerPage(): string;
768
+ static get DocumentsPerPage(): string;
744
769
  static get RetrieveFile(): "Arquivos de recuperação" | "Dateiwiederherstellung" | "Recuperación archivos" | "Recupero file" | "Retrieve file" | "Récupération fichier";
770
+ static get RowNumber(): string;
745
771
  static get Rows(): "Linien" | "lignes" | "linhas" | "líneas" | "righe" | "rows";
746
772
  static get Save(): "Enregistre" | "Guardar" | "Salva" | "Salvar" | "Save" | "Speichern";
747
773
  static get SaveAndLogin(): string;
@@ -893,7 +919,6 @@ export declare class SDKUI_Localizator {
893
919
  static get UpdateCompletedSuccessfully(): "Actualización completada con éxito" | "Aggiornamento completato con successo" | "Aktualisierung erfolgreich abgeschlossen" | "Atualização concluída com sucesso" | "Mise à jour terminée avec succès" | "Update completed successfully";
894
920
  static get UpdateIn(): "Aggiorna in" | "Aktualisierung in" | "Atualizar em" | "Mettre à jour dans" | "Update in" | "interrumpir";
895
921
  static get UpdateInProgress(): "Aggiornamento in corso" | "Aktualisierung läuft" | "Atualização em andamento" | "Mise à jour en cours" | "Update in progress";
896
- static get UpdateOperationWasInterrupted(): "A operação de atualização foi interrompida" | "Der Updatevorgang wurde abgebrochen" | "L'operazione di aggiornamento è stata interrotta" | "L'opération de mise à jour a été interrompue" | "La operación de actualización fue interrumpida" | "The update operation was interrupted";
897
922
  static get Updating(): "Actualizar" | "Aktualisieren" | "Atualizar" | "Mise à jour" | "aggiornamento" | "updating";
898
923
  static get Upload_ConfirmFor1(): "Are you sure you want to upload '{{0}}'?" | "Möchten Sie '{{0}}' hochladen?" | "Sei sicuro di voler caricare '{{0}}'?" | "Você tem certeza que deseja enviar '{{0}}'?" | "¿Estás seguro de que deseas subir '{{0}}'?" | "Êtes-vous sûr de vouloir télécharger '{{0}}'?";
899
924
  static get Upload_ConfirmForN(): "{{0}} ausgewählte Objekte. Alle hochladen?" | "{{0}} objetos seleccionados. ¿Subir todos?" | "{{0}} objetos selecionados. Enviar todos?" | "{{0}} objets sélectionnés. Voulez-vous tous les télécharger?" | "{{0}} oggetti selezionati. Caricare tutti?" | "{{0}} selected objects. Upload them all?";