@topconsultnpm/sdkui-react 6.19.0-test.1 → 6.19.0

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 (216) hide show
  1. package/lib/assets/IconsS4t/add.svg +12 -12
  2. package/lib/assets/IconsS4t/aggiorna.svg +18 -18
  3. package/lib/assets/IconsS4t/bookmark.svg +42 -42
  4. package/lib/assets/IconsS4t/cancella.svg +15 -15
  5. package/lib/assets/IconsS4t/check-box.svg +19 -19
  6. package/lib/assets/IconsS4t/down-arrow-signBook.svg +40 -40
  7. package/lib/assets/IconsS4t/down.svg +28 -28
  8. package/lib/assets/IconsS4t/edit-file.svg +19 -19
  9. package/lib/assets/IconsS4t/edita.svg +32 -32
  10. package/lib/assets/IconsS4t/firma.svg +19 -19
  11. package/lib/assets/IconsS4t/icona_download.svg +16 -16
  12. package/lib/assets/IconsS4t/info.svg +51 -51
  13. package/lib/assets/IconsS4t/left.svg +20 -20
  14. package/lib/assets/IconsS4t/line.svg +40 -40
  15. package/lib/assets/IconsS4t/more.svg +19 -19
  16. package/lib/assets/IconsS4t/plus.svg +23 -23
  17. package/lib/assets/IconsS4t/printer.svg +49 -49
  18. package/lib/assets/IconsS4t/radio-on-button.svg +25 -25
  19. package/lib/assets/IconsS4t/rectangle.svg +41 -41
  20. package/lib/assets/IconsS4t/redo.svg +19 -19
  21. package/lib/assets/IconsS4t/right-arrow-signBook-finish.svg +40 -40
  22. package/lib/assets/IconsS4t/right-arrow-signBook.svg +40 -40
  23. package/lib/assets/IconsS4t/right.svg +22 -22
  24. package/lib/assets/IconsS4t/searchbar.svg +21 -21
  25. package/lib/assets/IconsS4t/text-box.svg +36 -36
  26. package/lib/assets/IconsS4t/tick.svg +8 -8
  27. package/lib/assets/IconsS4t/trash-white.svg +10 -10
  28. package/lib/assets/IconsS4t/undo.svg +19 -19
  29. package/lib/assets/IconsS4t/up.svg +32 -32
  30. package/lib/assets/IconsS4t/video-streaming.svg +2 -2
  31. package/lib/assets/IconsS4t/zoom-in.svg +58 -58
  32. package/lib/assets/IconsS4t/zoom-out.svg +56 -56
  33. package/lib/assets/icomoon.svg +96 -96
  34. package/lib/assets/italy.svg +16 -16
  35. package/lib/assets/six.svg +3 -3
  36. package/lib/assets/thumbnails/index.ts +39 -39
  37. package/lib/assets/topmedia-six.svg +65 -65
  38. package/lib/assets/topmeida-six-bianco.svg +65 -65
  39. package/lib/components/base/Styled.js +302 -302
  40. package/lib/components/base/TMAccordion.js +43 -43
  41. package/lib/components/base/TMAccordionNew.d.ts +28 -0
  42. package/lib/components/base/TMAccordionNew.js +326 -0
  43. package/lib/components/base/TMAreaManager.js +23 -23
  44. package/lib/components/base/TMButton.d.ts +1 -0
  45. package/lib/components/base/TMButton.js +136 -136
  46. package/lib/components/base/TMClosableList.js +46 -46
  47. package/lib/components/base/TMConfirm.js +20 -20
  48. package/lib/components/base/TMContextMenu.js +4 -4
  49. package/lib/components/base/TMContextMenuOLD.js +25 -25
  50. package/lib/components/base/TMCounterBar.js +32 -32
  51. package/lib/components/base/TMCounterContainer.js +30 -30
  52. package/lib/components/base/TMCustomButton.d.ts +1 -1
  53. package/lib/components/base/TMCustomButton.js +90 -35
  54. package/lib/components/base/TMDataGridExportForm.d.ts +1 -1
  55. package/lib/components/base/TMDataGridExportForm.js +9 -3
  56. package/lib/components/base/TMDropDownMenu.js +24 -24
  57. package/lib/components/base/TMFileManager.js +12 -3
  58. package/lib/components/base/TMFileManagerDataGridView.d.ts +2 -0
  59. package/lib/components/base/TMFileManagerDataGridView.js +12 -3
  60. package/lib/components/base/TMFileManagerThumbnailItems.d.ts +2 -0
  61. package/lib/components/base/TMFileManagerThumbnailItems.js +12 -2
  62. package/lib/components/base/TMFileManagerThumbnailsView.d.ts +2 -0
  63. package/lib/components/base/TMFileManagerThumbnailsView.js +2 -2
  64. package/lib/components/base/TMFileManagerUtils.js +19 -19
  65. package/lib/components/base/TMFloatingToolbar.js +34 -34
  66. package/lib/components/base/TMLayout.js +44 -44
  67. package/lib/components/base/TMList.js +34 -34
  68. package/lib/components/base/TMModal.d.ts +2 -0
  69. package/lib/components/base/TMModal.js +79 -34
  70. package/lib/components/base/TMPanel.js +57 -57
  71. package/lib/components/base/TMPopUp.js +186 -117
  72. package/lib/components/base/TMProgressBar.js +20 -20
  73. package/lib/components/base/TMResizableMenu.js +28 -28
  74. package/lib/components/base/TMRightSidebar.js +40 -40
  75. package/lib/components/base/TMSpinner.js +121 -121
  76. package/lib/components/base/TMTab.js +11 -11
  77. package/lib/components/base/TMToggleButton.js +36 -36
  78. package/lib/components/base/TMToolbarCard.js +35 -35
  79. package/lib/components/base/TMTooltip.d.ts +1 -1
  80. package/lib/components/base/TMTooltip.js +1 -1
  81. package/lib/components/base/TMTreeView.js +16 -16
  82. package/lib/components/base/TMUserAvatar.js +7 -7
  83. package/lib/components/base/TMWaitPanel.js +30 -24
  84. package/lib/components/choosers/TMCultureIDPicker.js +35 -35
  85. package/lib/components/choosers/TMDataListItemChooser.js +1 -1
  86. package/lib/components/choosers/TMDataListItemPicker.js +54 -54
  87. package/lib/components/choosers/TMDcmtTypeChooser.js +2 -2
  88. package/lib/components/choosers/TMDynDataListItemChooser.js +5 -4
  89. package/lib/components/choosers/TMMetadataChooser.d.ts +4 -1
  90. package/lib/components/choosers/TMMetadataChooser.js +31 -8
  91. package/lib/components/choosers/TMUserChooser.d.ts +4 -0
  92. package/lib/components/choosers/TMUserChooser.js +21 -5
  93. package/lib/components/editors/TMCheckBox.js +24 -24
  94. package/lib/components/editors/TMDateBox.d.ts +1 -1
  95. package/lib/components/editors/TMDropDown.js +43 -43
  96. package/lib/components/editors/TMEditorStyled.js +71 -71
  97. package/lib/components/editors/TMHtmlContentDisplay.js +16 -16
  98. package/lib/components/editors/TMLocalizedTextBox.js +31 -31
  99. package/lib/components/editors/TMMetadataValues.js +71 -22
  100. package/lib/components/editors/TMRadioButton.js +39 -39
  101. package/lib/components/editors/TMSummary.js +39 -39
  102. package/lib/components/editors/TMTextArea.d.ts +1 -0
  103. package/lib/components/editors/TMTextArea.js +56 -22
  104. package/lib/components/editors/TMTextBox.js +53 -23
  105. package/lib/components/editors/TMTextExpression.js +36 -28
  106. package/lib/components/features/assistant/ToppyDraggableHelpCenter.d.ts +30 -0
  107. package/lib/components/features/assistant/ToppyDraggableHelpCenter.js +482 -0
  108. package/lib/components/features/assistant/ToppySpeechBubble.d.ts +9 -0
  109. package/lib/components/features/assistant/ToppySpeechBubble.js +117 -0
  110. package/lib/components/features/blog/TMBlogCommentForm.d.ts +2 -0
  111. package/lib/components/features/blog/TMBlogCommentForm.js +21 -9
  112. package/lib/components/features/documents/TMDcmtBlog.js +1 -1
  113. package/lib/components/features/documents/TMDcmtForm.d.ts +1 -0
  114. package/lib/components/features/documents/TMDcmtForm.js +331 -65
  115. package/lib/components/features/documents/TMDcmtIcon.js +17 -12
  116. package/lib/components/features/documents/TMDcmtPreview.js +75 -38
  117. package/lib/components/features/documents/TMFileUploader.js +21 -21
  118. package/lib/components/features/documents/TMRelationViewer.js +56 -23
  119. package/lib/components/features/search/TMSavedQuerySelector.js +53 -53
  120. package/lib/components/features/search/TMSearch.js +2 -2
  121. package/lib/components/features/search/TMSearchQueryEditor.js +14 -14
  122. package/lib/components/features/search/TMSearchQueryPanel.js +41 -59
  123. package/lib/components/features/search/TMSearchResult.js +256 -51
  124. package/lib/components/features/search/TMSearchResultCheckoutInfoForm.d.ts +8 -0
  125. package/lib/components/features/search/TMSearchResultCheckoutInfoForm.js +134 -0
  126. package/lib/components/features/search/TMSearchResultsMenuItems.d.ts +3 -2
  127. package/lib/components/features/search/TMSearchResultsMenuItems.js +94 -59
  128. package/lib/components/features/search/TMSignSettingsForm.d.ts +9 -0
  129. package/lib/components/features/search/TMSignSettingsForm.js +621 -0
  130. package/lib/components/features/search/TMTreeSelector.js +67 -67
  131. package/lib/components/features/search/TMViewHistoryDcmtForm.d.ts +18 -0
  132. package/lib/components/features/search/TMViewHistoryDcmtForm.js +215 -0
  133. package/lib/components/features/tasks/TMTaskForm.js +42 -36
  134. package/lib/components/features/tasks/TMTasksAgenda.js +4 -4
  135. package/lib/components/features/tasks/TMTasksCalendar.js +2 -2
  136. package/lib/components/features/tasks/TMTasksHeader.js +1 -1
  137. package/lib/components/features/tasks/TMTasksUtils.d.ts +2 -1
  138. package/lib/components/features/tasks/TMTasksUtils.js +18 -3
  139. package/lib/components/features/tasks/TMTasksUtilsView.js +26 -4
  140. package/lib/components/features/tasks/TMTasksView.js +12 -6
  141. package/lib/components/features/wg/TMWGsCopyMoveForm.js +9 -9
  142. package/lib/components/features/workflow/TMWorkflowPopup.js +44 -44
  143. package/lib/components/features/workflow/diagram/ConnectionComponent.js +29 -29
  144. package/lib/components/features/workflow/diagram/ConnectionForm.js +10 -10
  145. package/lib/components/features/workflow/diagram/DiagramItemComponent.js +57 -57
  146. package/lib/components/features/workflow/diagram/DiagramItemForm.js +40 -35
  147. package/lib/components/features/workflow/diagram/DiagramItemSvgContent.js +12 -12
  148. package/lib/components/features/workflow/diagram/RecipientList.js +39 -39
  149. package/lib/components/features/workflow/diagram/WFDiagram.js +317 -285
  150. package/lib/components/features/workflow/diagram/WorkitemRecipientsEditor.js +4 -4
  151. package/lib/components/forms/Login/Chooser.js +35 -35
  152. package/lib/components/forms/Login/Menu.js +22 -22
  153. package/lib/components/forms/Login/SelectBox.js +46 -46
  154. package/lib/components/forms/Login/TMLoginForm.js +14 -14
  155. package/lib/components/forms/Login/TextBox.js +57 -57
  156. package/lib/components/forms/TMResultDialog.js +8 -2
  157. package/lib/components/forms/TMSaveForm.js +3 -11
  158. package/lib/components/grids/TMBlogAttachments.d.ts +0 -14
  159. package/lib/components/grids/TMBlogAttachments.js +10 -5
  160. package/lib/components/grids/TMBlogsPost.d.ts +8 -3
  161. package/lib/components/grids/TMBlogsPost.js +100 -39
  162. package/lib/components/grids/TMBlogsPostUtils.d.ts +1 -0
  163. package/lib/components/grids/TMBlogsPostUtils.js +32 -11
  164. package/lib/components/grids/TMRecentsManager.js +52 -52
  165. package/lib/components/grids/TMValidationItemsList.js +48 -48
  166. package/lib/components/index.d.ts +2 -1
  167. package/lib/components/index.js +2 -1
  168. package/lib/components/layout/panelManager/TMPanelManagerContainer.d.ts +1 -0
  169. package/lib/components/layout/panelManager/TMPanelManagerContainer.js +14 -14
  170. package/lib/components/layout/panelManager/TMPanelManagerContext.js +0 -1
  171. package/lib/components/layout/panelManager/TMPanelManagerToolbar.js +36 -35
  172. package/lib/components/layout/panelManager/types.d.ts +1 -0
  173. package/lib/components/pages/TMPage.js +1 -1
  174. package/lib/components/query/TMQueryEditor.js +17 -17
  175. package/lib/components/query/TMQuerySummary.d.ts +1 -0
  176. package/lib/components/query/TMQuerySummary.js +15 -15
  177. package/lib/components/settings/SettingsAppearance.js +9 -1
  178. package/lib/components/sidebar/TMCommandsPanel.js +10 -10
  179. package/lib/components/sidebar/TMHeader.js +307 -307
  180. package/lib/components/sidebar/TMSidebar.js +24 -24
  181. package/lib/components/sidebar/TMSidebarItem.js +21 -21
  182. package/lib/components/viewers/TMDataListItemViewer.d.ts +1 -1
  183. package/lib/components/viewers/TMMidViewer.d.ts +1 -1
  184. package/lib/components/viewers/TMTidViewer.d.ts +1 -1
  185. package/lib/components/wizard/TMStepIndicator.js +102 -102
  186. package/lib/components/wizard/TMWizard.js +29 -29
  187. package/lib/helper/GlobalStyles.d.ts +2 -0
  188. package/lib/helper/GlobalStyles.js +10 -0
  189. package/lib/helper/Globalization.d.ts +1 -0
  190. package/lib/helper/Globalization.js +30 -0
  191. package/lib/helper/SDKUI_Globals.d.ts +9 -0
  192. package/lib/helper/SDKUI_Globals.js +10 -1
  193. package/lib/helper/SDKUI_Localizator.d.ts +59 -2
  194. package/lib/helper/SDKUI_Localizator.js +617 -22
  195. package/lib/helper/TMCustomSearchBar.js +1 -1
  196. package/lib/helper/TMIcons.d.ts +6 -1
  197. package/lib/helper/TMIcons.js +22 -2
  198. package/lib/helper/TMToppyMessage.d.ts +1 -0
  199. package/lib/helper/TMToppyMessage.js +33 -32
  200. package/lib/helper/TMUtils.d.ts +42 -4
  201. package/lib/helper/TMUtils.js +227 -60
  202. package/lib/helper/cicoHelper.d.ts +31 -0
  203. package/lib/helper/cicoHelper.js +155 -0
  204. package/lib/helper/dcmtsHelper.d.ts +2 -1
  205. package/lib/helper/dcmtsHelper.js +56 -17
  206. package/lib/helper/helpers.d.ts +8 -1
  207. package/lib/helper/helpers.js +43 -21
  208. package/lib/helper/index.d.ts +1 -0
  209. package/lib/helper/index.js +1 -0
  210. package/lib/hooks/useDcmtOperations.d.ts +1 -1
  211. package/lib/hooks/useDcmtOperations.js +10 -6
  212. package/lib/hooks/useRelatedDocuments.js +35 -26
  213. package/lib/ts/types.d.ts +3 -1
  214. package/package.json +54 -54
  215. package/lib/components/features/assistant/ToppyHelpCenter.d.ts +0 -12
  216. package/lib/components/features/assistant/ToppyHelpCenter.js +0 -173
@@ -8,23 +8,23 @@ import { IconInfo, SDKUI_Localizator } from '../../../helper';
8
8
  import { DeviceType, useDeviceType } from '../../base/TMDeviceProvider';
9
9
  import { Gutters } from '../../../utils/theme';
10
10
  // Styled Component per il contenitore principale di PanelContainer
11
- const StyledPanelContainerWrapper = styled.div `
12
- display: ${props => (props.$hasVisiblePanels ? 'flex' : 'none')};
13
- flex-direction: ${props => (props.$direction === 'vertical' ? 'column' : 'row')};
14
- height: 100%;
15
- width: 100%;
16
- // overflow: hidden;
11
+ const StyledPanelContainerWrapper = styled.div `
12
+ display: ${props => (props.$hasVisiblePanels ? 'flex' : 'none')};
13
+ flex-direction: ${props => (props.$direction === 'vertical' ? 'column' : 'row')};
14
+ height: 100%;
15
+ width: 100%;
16
+ // overflow: hidden;
17
17
  `;
18
18
  // Styled Component per il gutter (separatore)
19
- const StyledResizerGutter = styled.div `
20
- cursor: ${props => (props.$direction === 'horizontal' ? 'col-resize' : 'row-resize')};
21
- ${props => (props.$direction === 'horizontal' ? `width: ${Gutters.getGutters()}px;` : `height: ${Gutters.getGutters()}px;`)}
22
- flex-shrink: 0;
23
- background-color: "transparent";
24
- z-index: 10;
19
+ const StyledResizerGutter = styled.div `
20
+ cursor: ${props => (props.$direction === 'horizontal' ? 'col-resize' : 'row-resize')};
21
+ ${props => (props.$direction === 'horizontal' ? `width: ${Gutters.getGutters()}px;` : `height: ${Gutters.getGutters()}px;`)}
22
+ flex-shrink: 0;
23
+ background-color: "transparent";
24
+ z-index: 10;
25
25
  `;
26
26
  const TMPanelManagerContainer = (props) => {
27
- const { panels, showToolbar, direction, parentId } = props;
27
+ const { panels, showToolbar, direction, parentId, minPanelSizePx = 150 } = props;
28
28
  const { panelVisibility, setPanelDimensionsById, hasVisiblePanels, maximizedPanels, updateIsResizingActive } = useTMPanelManagerContext();
29
29
  // Get the current device type (e.g., mobile, tablet, desktop) using a custom hook
30
30
  const deviceType = useDeviceType();
@@ -73,7 +73,7 @@ const TMPanelManagerContainer = (props) => {
73
73
  let newCurrent = initialCurrent + deltaPercent;
74
74
  let newNext = initialNext - deltaPercent;
75
75
  // Set a minimum size threshold (to prevent panels from collapsing)
76
- const minPercent = (150 / containerSize) * 100;
76
+ const minPercent = (minPanelSizePx / containerSize) * 100;
77
77
  // Correct sizes if they go below the minimum
78
78
  if (newCurrent < minPercent) {
79
79
  newCurrent = minPercent;
@@ -118,7 +118,6 @@ export const TMPanelManagerProvider = (props) => {
118
118
  const maximizePanel = useCallback((id) => {
119
119
  // Get all parent panel IDs recursively for the given panel ID
120
120
  const parents = showParentRecursively(id, hierarchyMap).map(([pid]) => pid);
121
- 4;
122
121
  // Combine parents and the current panel ID into one array to maximize
123
122
  const toMaximize = [...parents, id];
124
123
  // Update state to track which panels are maximized
@@ -5,41 +5,41 @@ import { useTMPanelManagerContext } from './TMPanelManagerContext';
5
5
  import { DeviceType, useDeviceType } from '../../base/TMDeviceProvider';
6
6
  import { flattenPanels } from './utils';
7
7
  import TMTooltip from '../../base/TMTooltip';
8
- export const StyledToolbarButton = styled.button `
9
- display: flex;
10
- align-items: center;
11
- justify-content: center;
12
- height: 32px;
13
- width: 32px;
14
- border: none;
15
- border-radius: 8px;
16
- font-size: 18px;
17
- padding: 0px;
18
- color: #fff;
19
- transition: transform 0.2s ease, box-shadow 0.2s ease;
20
- cursor: ${({ $isDisabled }) => ($isDisabled ? 'not-allowed' : 'pointer')};
21
- opacity: ${({ $isDisabled }) => ($isDisabled ? 0.6 : 1)};
22
- background: ${({ $isActive }) => $isActive ? 'rgba(255,255,255,0.35)' : 'transparent'};
23
- position: relative;
24
- &:hover {
25
- background: ${({ $isDisabled }) => !$isDisabled ? 'rgba(255,255,255,0.35)' : undefined};
26
- }
8
+ export const StyledToolbarButton = styled.button `
9
+ display: flex;
10
+ align-items: center;
11
+ justify-content: center;
12
+ height: 32px;
13
+ width: 32px;
14
+ border: none;
15
+ border-radius: 8px;
16
+ font-size: 18px;
17
+ padding: 0px;
18
+ color: #fff;
19
+ transition: transform 0.2s ease, box-shadow 0.2s ease;
20
+ cursor: ${({ $isDisabled }) => ($isDisabled ? 'not-allowed' : 'pointer')};
21
+ opacity: ${({ $isDisabled }) => ($isDisabled ? 0.6 : 1)};
22
+ background: ${({ $isActive }) => $isActive ? 'rgba(255,255,255,0.35)' : 'transparent'};
23
+ position: relative;
24
+ &:hover {
25
+ background: ${({ $isDisabled }) => !$isDisabled ? 'rgba(255,255,255,0.35)' : undefined};
26
+ }
27
27
  `;
28
- const Badge = styled.span `
29
- position: absolute;
30
- top: 2px;
31
- right: 2px;
32
- background: ${(props) => props.$background || "#ff5252"};
33
- color: white;
34
- font-size: 10px;
35
- min-width: 14px;
36
- height: 14px;
37
- padding: 0 4px;
38
- border-radius: 999px;
39
- display: flex;
40
- align-items: center;
41
- justify-content: center;
42
- line-height: 1;
28
+ const Badge = styled.span `
29
+ position: absolute;
30
+ top: 2px;
31
+ right: 2px;
32
+ background: ${(props) => props.$background || "#ff5252"};
33
+ color: white;
34
+ font-size: 10px;
35
+ min-width: 14px;
36
+ height: 14px;
37
+ padding: 0 4px;
38
+ border-radius: 999px;
39
+ display: flex;
40
+ align-items: center;
41
+ justify-content: center;
42
+ line-height: 1;
43
43
  `;
44
44
  const TMPanelManagerToolbar = (props) => {
45
45
  const { panels } = props;
@@ -76,7 +76,8 @@ const TMPanelManagerToolbar = (props) => {
76
76
  const isActive = panelVisibility[visibleLeafPanel.id];
77
77
  const isDisabled = toolbarButtonsDisabled[visibleLeafPanel.id];
78
78
  const count = visibleLeafPanel.toolbarOptions?.count ?? 0;
79
- return _jsx(TMTooltip, { content: visibleLeafPanel.name + (count > 0 ? ": " + count : ''), position: isMobile ? 'top' : 'left', children: _jsxs(StyledToolbarButton, { disabled: isDisabled, "$isDisabled": isDisabled, onClick: () => onClickCallback(visibleLeafPanel.id, isActive), "$isActive": isActive || visibleLeafPanel.toolbarOptions?.alwaysActiveColor, children: [typeof visibleLeafPanel.toolbarOptions?.icon === 'string' ? (_jsx("i", { className: `dx-icon dx-icon-${visibleLeafPanel.toolbarOptions?.icon}` })) : (visibleLeafPanel.toolbarOptions?.icon), (!isActive && count > 0) && _jsxs(Badge, { "$background": visibleLeafPanel.toolbarOptions?.countBackgroundColor, children: [" ", formatCount(count), " "] })] }, visibleLeafPanel.id) }, visibleLeafPanel.id);
79
+ const tooltip = visibleLeafPanel.toolbarOptions?.tooltip ?? '';
80
+ return _jsx(TMTooltip, { content: tooltip || (visibleLeafPanel.name + (count > 0 ? ": " + count : '')), position: isMobile ? 'top' : 'left', children: _jsxs(StyledToolbarButton, { disabled: isDisabled, "$isDisabled": isDisabled, onClick: () => onClickCallback(visibleLeafPanel.id, isActive), "$isActive": isActive || visibleLeafPanel.toolbarOptions?.alwaysActiveColor, children: [typeof visibleLeafPanel.toolbarOptions?.icon === 'string' ? (_jsx("i", { className: `dx-icon dx-icon-${visibleLeafPanel.toolbarOptions?.icon}` })) : (visibleLeafPanel.toolbarOptions?.icon), (!isActive && count > 0) && _jsxs(Badge, { "$background": visibleLeafPanel.toolbarOptions?.countBackgroundColor, children: [" ", formatCount(count), " "] })] }, visibleLeafPanel.id) }, visibleLeafPanel.id);
80
81
  }) }));
81
82
  };
82
83
  export default TMPanelManagerToolbar;
@@ -22,6 +22,7 @@ export interface TMPanelDefinition {
22
22
  beginGroup?: boolean;
23
23
  alwaysActiveColor?: boolean;
24
24
  count?: number;
25
+ tooltip?: ReactNode | string;
25
26
  countBackgroundColor?: string;
26
27
  };
27
28
  }
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import React, { useState, useEffect } from "react";
3
3
  import { SDK_Globals, ObjectClasses, ResultTypes } from "@topconsultnpm/sdk-ts";
4
- import DataGrid, { Column, GroupPanel, Grouping, HeaderFilter, LoadPanel, Pager, Paging, Scrolling, SearchPanel, Selection } from "devextreme-react/cjs/data-grid";
4
+ import DataGrid, { Column, GroupPanel, Grouping, HeaderFilter, LoadPanel, Pager, Paging, Scrolling, SearchPanel, Selection } from "devextreme-react/data-grid";
5
5
  import { PlatformObjectService } from "../../services/platform_services";
6
6
  import { FormModes } from "../../ts";
7
7
  import { Globalization, IconAdd, IconColumns, IconCopy, IconDelete, IconDuplicate, IconHide, IconMail, IconMenuVertical, IconOpenInNew, IconRefresh, IconShow, SDKUI_Globals, SDKUI_Localizator, calcSaveFormTitle, canNext, canPrev, dialogConfirmOperation, getExceptionMessage, getNext, getPrev } from "../../helper";
@@ -976,23 +976,23 @@ const TMQdWhereItemValue = ({ whereItem, index, queryParamsDynDataList, onlyEdit
976
976
  ? _jsx(_Fragment, { children: whereItem.value1 ?? mdValueEmptyDescr })
977
977
  : _jsxs(_Fragment, { children: [displayMetadataValue(md, whereItem.value1, mdValueEmptyDescr), numberOfOperands == 2 && (whereItem.value2 && whereItem.value2 != '' ? ` - ${displayMetadataValue(md, whereItem.value2, mdValueEmptyDescr)}` : ' - ?')] }) })] })] }));
978
978
  };
979
- const StyledContent = styled.div `
980
- cursor: pointer;
981
- border-radius: ${props => props.$borderRadius};
982
- color: ${props => props.$color};
983
- /* background-color: ${props => props.$backgroundColor}; */
984
- background-color: transparent;
985
- opacity: ${props => props.$disabled ? 0.4 : 1};
986
- pointer-events: ${props => props.$disabled ? 'none' : ''};
987
- user-select: none;
988
- display: flex;
989
- align-items: center;
990
-
991
- &:focus {
992
- outline: none;
993
- border-bottom: ${props => props.$disabled ? '' : '2px solid'};
994
- border-bottom-color: ${TMColors.primary};
995
- }
979
+ const StyledContent = styled.div `
980
+ cursor: pointer;
981
+ border-radius: ${props => props.$borderRadius};
982
+ color: ${props => props.$color};
983
+ /* background-color: ${props => props.$backgroundColor}; */
984
+ background-color: transparent;
985
+ opacity: ${props => props.$disabled ? 0.4 : 1};
986
+ pointer-events: ${props => props.$disabled ? 'none' : ''};
987
+ user-select: none;
988
+ display: flex;
989
+ align-items: center;
990
+
991
+ &:focus {
992
+ outline: none;
993
+ border-bottom: ${props => props.$disabled ? '' : '2px solid'};
994
+ border-bottom-color: ${TMColors.primary};
995
+ }
996
996
  `;
997
997
  const TMQdDropDownMenu = ({ content, items, disabled = false, color = TMColors.text_normal, backgroundColor = TMColors.default_background, borderRadius }) => {
998
998
  const [id, setID] = useState('');
@@ -7,6 +7,7 @@ interface ITMQuerySummary {
7
7
  raiseWarningForOnlyMetadataDcmtTypes?: boolean;
8
8
  validateSelect?: boolean;
9
9
  validateOrderBy?: boolean;
10
+ showDistinct?: boolean;
10
11
  onValueChanged?: (value: QueryDescriptor | undefined) => void;
11
12
  onEditClick?: () => void;
12
13
  onClose?: () => void;
@@ -10,26 +10,26 @@ import TMVilViewer from '../base/TMVilViewer';
10
10
  import { FormModes } from '../../ts';
11
11
  import TMModal from '../base/TMModal';
12
12
  // #region Style
13
- const StyledWrapper = styled.div `
14
- display: flex;
15
- flex-direction: row;
16
- align-items: flex-start;
17
- justify-content: flex-start;
18
- width: 100%;
19
- font-size: ${FontSize.defaultFontSize};
13
+ const StyledWrapper = styled.div `
14
+ display: flex;
15
+ flex-direction: row;
16
+ align-items: flex-start;
17
+ justify-content: flex-start;
18
+ width: 100%;
19
+ font-size: ${FontSize.defaultFontSize};
20
20
  `;
21
- const StyledQueryToolbar = styled.div `
22
- display: flex;
23
- flex-direction: column;
24
- width: max-content;
25
- gap: 8px;
21
+ const StyledQueryToolbar = styled.div `
22
+ display: flex;
23
+ flex-direction: column;
24
+ width: max-content;
25
+ gap: 8px;
26
26
  `;
27
- const TMQuerySummary = ({ children, qd, validateSelect = true, validateOrderBy = true, raiseWarningForOnlyMetadataDcmtTypes = false, validationItems = [], onValueChanged, onEditClick, onClose }) => {
27
+ const TMQuerySummary = ({ children, qd, validateSelect = true, validateOrderBy = true, raiseWarningForOnlyMetadataDcmtTypes = false, showDistinct = false, validationItems = [], onValueChanged, onEditClick, onClose }) => {
28
28
  const [showEditor, setShowEditor] = useState(false);
29
29
  const validationItemsQd = validationItems.filter(o => o.PropertyScopes.includes(TMScopeNames.qd) || o.PropertyName == TMScopeNames.qd);
30
30
  const useInternalEditor = onEditClick === undefined;
31
31
  return (_jsxs(StyledWrapper, { children: [_jsxs(StyledQueryToolbar, { children: [_jsx(TMButton, { caption: SDKUI_Localizator.QueryDefine, icon: _jsx(IconPencil, { fontSize: 16 }), btnStyle: 'toolbar', onClick: () => onEditClick ? onEditClick() : setShowEditor(true) }), _jsx(TMButton, { caption: SDKUI_Localizator.QueryCount, icon: _jsx(IconCount, { fontSize: 16 }), disabled: validationItemsQd.filter(o => o.ResultType == ResultTypes.ERROR).length > 0, btnStyle: 'toolbar', onClick: () => getQueryCountAsync(qd, true) }), _jsx(TMButton, { caption: SDKUI_Localizator.QueryClear, icon: _jsx(IconEraser, { fontSize: 16 }), btnStyle: 'toolbar', onClick: () => onValueChanged?.(new QueryDescriptor()) }), children] }), _jsxs("div", { style: { display: 'flex', flexDirection: 'column', width: '100%', overflowX: 'auto' }, children: [qd && qd.from &&
32
- _jsx(TMQueryEditor, { formMode: FormModes.ReadOnly, inputData: qd, isModal: false, showToolbar: false, validateSelect: validateSelect, validateOrderBy: validateOrderBy, raiseWarningForOnlyMetadataDcmtTypes: raiseWarningForOnlyMetadataDcmtTypes }), _jsx("div", { style: { padding: '0px 5px' }, children: _jsx(TMVilViewer, { vil: validationItemsQd }) })] }), useInternalEditor && showEditor &&
33
- _jsx(TMModal, { title: SDKUI_Localizator.QueryDefine, children: _jsx(TMQueryEditor, { formMode: FormModes.Update, inputData: qd, isModal: true, raiseWarningForOnlyMetadataDcmtTypes: raiseWarningForOnlyMetadataDcmtTypes, validateSelect: validateSelect, validateOrderBy: validateOrderBy, onApplied: (newValue) => onValueChanged?.(newValue), onClose: () => { setShowEditor(false); } }) })] }));
32
+ _jsx(TMQueryEditor, { formMode: FormModes.ReadOnly, inputData: qd, showDistinct: showDistinct, isModal: false, showToolbar: false, validateSelect: validateSelect, validateOrderBy: validateOrderBy, raiseWarningForOnlyMetadataDcmtTypes: raiseWarningForOnlyMetadataDcmtTypes }), _jsx("div", { style: { padding: '0px 5px' }, children: _jsx(TMVilViewer, { vil: validationItemsQd }) })] }), useInternalEditor && showEditor &&
33
+ _jsx(TMModal, { title: SDKUI_Localizator.QueryDefine, children: _jsx(TMQueryEditor, { formMode: FormModes.Update, inputData: qd, isModal: true, showDistinct: showDistinct, raiseWarningForOnlyMetadataDcmtTypes: raiseWarningForOnlyMetadataDcmtTypes, validateSelect: validateSelect, validateOrderBy: validateOrderBy, onApplied: (newValue) => onValueChanged?.(newValue), onClose: () => { setShowEditor(false); } }) })] }));
34
34
  };
35
35
  export default TMQuerySummary;
@@ -18,6 +18,10 @@ const fontSizes = [
18
18
  { value: "19px", display: "19px" },
19
19
  { value: "20px", display: "20px" }
20
20
  ];
21
+ const fontFamilies = [
22
+ { value: "Inter", display: "Inter" },
23
+ { value: "Roboto", display: "Roboto" }
24
+ ];
21
25
  const SettingsAppearance = ({ landingPagesOptions, permissions = { canArchive: true, canSearch: true, dossiersLicense: true, wgGroupLicense: true, workFlowLicense: true } }) => {
22
26
  const [, setForceUpdate] = useState(0); // Dummy state to force re-renders
23
27
  const triggerUIUpdate = () => setForceUpdate((prev) => prev + 1); // Increment dummy state to re-render
@@ -43,7 +47,11 @@ const SettingsAppearance = ({ landingPagesOptions, permissions = { canArchive: t
43
47
  return (_jsxs(TMLayoutContainer, { children: [landingPagesOptions && _jsx("p", { style: { fontSize: '1.h1rem', fontWeight: 'bold', marginBottom: '5px' }, children: SDKUI_Localizator.LandingPage }), landingPagesOptions && _jsx(TMDropDown, { dataSource: filteredLandingPageOptopns, value: SDKUI_Globals.userSettings.landingPage, width: '230px', onValueChanged: (e) => {
44
48
  SDKUI_Globals.userSettings.landingPage = e.target.value;
45
49
  triggerUIUpdate();
46
- } }), _jsx("p", { style: { fontSize: '1.h1rem', fontWeight: 'bold', marginTop: '10px' }, children: 'Font' }), _jsx(TMDropDown, { label: SDKUI_Localizator.Size, dataSource: fontSizes, width: '230px', value: SDKUI_Globals.userSettings.themeSettings.fontSize, onValueChanged: (e) => {
50
+ } }), _jsx("p", { style: { fontSize: '1.h1rem', fontWeight: 'bold', marginTop: '10px' }, children: 'Font' }), _jsx(TMDropDown, { label: SDKUI_Localizator.Name, dataSource: fontFamilies, width: '230px', value: SDKUI_Globals.userSettings.themeSettings.fontFamily, onValueChanged: (e) => {
51
+ let newFamily = e.target.value;
52
+ SDKUI_Globals.userSettings.themeSettings.fontFamily = newFamily;
53
+ triggerUIUpdate();
54
+ } }), _jsx(TMDropDown, { label: SDKUI_Localizator.Size, dataSource: fontSizes, width: '230px', value: SDKUI_Globals.userSettings.themeSettings.fontSize, onValueChanged: (e) => {
47
55
  let newpx = e.target.value;
48
56
  SDKUI_Globals.userSettings.themeSettings.fontSize = newpx;
49
57
  triggerUIUpdate();
@@ -1,15 +1,15 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import styled from 'styled-components';
3
- export const StyledCommandsPanel = styled.div `
4
- display: flex;
5
- flex-direction: ${({ $isMobile }) => ($isMobile ? 'row' : 'column')};
6
- align-items: center;
7
- width: ${({ $isMobile }) => ($isMobile ? '100%' : '50px')};
8
- height: ${({ $isMobile }) => ($isMobile ? '50px' : 'max-content')};
9
- background: transparent linear-gradient(90deg, #CCE0F4 0%, #7EC1E7 14%, #39A6DB 28%, #1E9CD7 35%, #0075BE 78%, #005B97 99%) 0% 0% no-repeat padding-box;
10
- border-radius: ${({ $isMobile }) => ($isMobile ? '10px' : '10px 0px 0px 10px')};
11
- padding: 10px;
12
- gap: 10px;
3
+ export const StyledCommandsPanel = styled.div `
4
+ display: flex;
5
+ flex-direction: ${({ $isMobile }) => ($isMobile ? 'row' : 'column')};
6
+ align-items: center;
7
+ width: ${({ $isMobile }) => ($isMobile ? '100%' : '50px')};
8
+ height: ${({ $isMobile }) => ($isMobile ? '50px' : 'max-content')};
9
+ background: transparent linear-gradient(90deg, #CCE0F4 0%, #7EC1E7 14%, #39A6DB 28%, #1E9CD7 35%, #0075BE 78%, #005B97 99%) 0% 0% no-repeat padding-box;
10
+ border-radius: ${({ $isMobile }) => ($isMobile ? '10px' : '10px 0px 0px 10px')};
11
+ padding: 10px;
12
+ gap: 10px;
13
13
  `;
14
14
  const TMCommandsPanel = ({ isMobile, items }) => (_jsx(StyledCommandsPanel, { "$isMobile": isMobile, children: items.map((iconProps, idx) => (_jsx("span", { style: {
15
15
  background: iconProps.selected ? 'white' : 'transparent',