@topconsultnpm/sdkui-react-beta 6.14.119 → 6.14.121

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.
@@ -4,10 +4,10 @@ import Logo from '../../../assets/Toppy-generico.png';
4
4
  import { DcmtTypeListCacheService, LayoutModes, SDK_Localizator } from '@topconsultnpm/sdk-ts-beta';
5
5
  import { IconTree, SDKUI_Globals, SDKUI_Localizator, IconRecentlyViewed, IconPreview, IconShow, IconBoard, IconDcmtTypeSys, removeMruTid } from '../../../helper';
6
6
  import { useDeviceType, DeviceType } from '../../base/TMDeviceProvider';
7
- import TMLayoutContainer, { TMLayoutItem } from '../../base/TMLayout';
7
+ import TMLayoutContainer from '../../base/TMLayout';
8
8
  import TMRecentsManager from '../../grids/TMRecentsManager';
9
9
  import TMDcmtForm from '../documents/TMDcmtForm';
10
- import { StyledToppyTextContainer, StyledToppyText } from '../search/TMSearchQueryPanel';
10
+ import { StyledToppyTextContainer, StyledToppyText, StyledToppyImage } from '../search/TMSearchQueryPanel';
11
11
  import TMTreeSelector from '../search/TMTreeSelector';
12
12
  import TMPanel from '../../base/TMPanel';
13
13
  import { TMPanelManagerProvider, useTMPanelManagerContext } from '../../layout/panelManager/TMPanelManagerContext';
@@ -51,7 +51,7 @@ const TMArchive = ({ inputTID, fileFromConnector = null }) => {
51
51
  const tmFormElement = useMemo(() => currentTID ?
52
52
  _jsx(TMDcmtForm, { TID: currentTID, DID: undefined, groupId: 'tmForm', layoutMode: LayoutModes.Ark, onClose: deviceType === DeviceType.MOBILE ? () => setCurrentTID(undefined) : undefined, onSaveRecents: (TIDs) => setMruTIDs(TIDs), showDcmtFormSidebar: false, fileFromConnector: fileFromConnector })
53
53
  :
54
- _jsx(TMPanel, { title: 'Archiviazione', allowMaximize: false, children: _jsxs(TMLayoutContainer, { gap: 30, alignItems: 'center', justifyContent: 'center', children: [_jsxs(TMLayoutItem, { width: 'max-content', height: 'max-content', children: [" ", _jsxs(StyledToppyTextContainer, { children: [" ", _jsxs(StyledToppyText, { children: [" ", SDKUI_Localizator.DcmtTypeSelect, " "] }), " "] }), " "] }), _jsxs(TMLayoutItem, { width: 'max-content', height: 'max-content', children: [" ", _jsx("img", { src: Logo, width: 120, alt: '' }), " "] })] }) }), [currentTID, deviceType, mruTIDs, fileFromConnector]);
54
+ _jsx(TMPanel, { title: 'Archiviazione', allowMaximize: false, children: _jsxs(TMLayoutContainer, { gap: 30, alignItems: 'center', justifyContent: 'center', children: [_jsx(StyledToppyTextContainer, { children: _jsx(StyledToppyText, { children: SDKUI_Localizator.DcmtTypeSelect }) }), _jsx(StyledToppyImage, { src: Logo, alt: 'Toppy' })] }) }), [currentTID, deviceType, mruTIDs, fileFromConnector]);
55
55
  const allInitialPanelVisibility = {
56
56
  'tmTreeSelector': true,
57
57
  'tmRecentsManager': true,
@@ -69,11 +69,16 @@ const ToppyImage = styled.img `
69
69
  css `
70
70
  /* animation: ${bounceAnimation} 2s infinite; */
71
71
  /* animation: ${pulseAnimation} 2s infinite; */
72
- animation: ${wiggle} 1.5s infinite;
72
+ animation: ${wiggle} 2s infinite;
73
73
  `}
74
74
  `;
75
75
  const ToppyContent = styled.div `
76
- margin-bottom: ${props => props.$isMobile ? '10px' : '20px'};
76
+ margin-bottom: ${({ $isMobile, $align }) => $align === 'left'
77
+ ? '50px'
78
+ : $isMobile
79
+ ? '10px'
80
+ : '20px'};
81
+ margin-left: ${({ $align }) => $align === 'left' ? '50px' : '0'};
77
82
  display: ${props => (props.$isCollapsed ? 'none' : 'block')};
78
83
  width: max-content;
79
84
  max-width: 250px;
@@ -108,7 +113,7 @@ const ToppyContent = styled.div `
108
113
  }
109
114
 
110
115
  &::before {
111
- transform: ${({ $align }) => $align === 'left' ? 'skewX(15deg)' : 'skewX(-15deg)'};
116
+ transform: ${({ $align }) => $align === 'left' ? 'skewX(15deg)' : 'skewX(-15deg)'};
112
117
  content: "";
113
118
  position: absolute;
114
119
  top: 100%;
@@ -205,7 +205,7 @@ export const TMFileViewer = ({ fileBlob, isResizingActive }) => {
205
205
  return (_jsx(ImageViewer, { fileBlob: fileBlob, alt: '' }));
206
206
  }
207
207
  if (fileType === 'application/pdf') {
208
- return (_jsx("div", { style: { width: '100%', height: '100%', position: 'relative' }, children: _jsx("object", { data: blobUrl, type: "application/pdf", width: "100%", height: "100%", style: { border: 'none' }, children: _jsxs("div", { style: {
208
+ return (_jsx("div", { style: { width: '100%', height: '100%', position: 'relative' }, children: _jsx("object", { data: blobUrl, type: "application/pdf", width: "100%", height: "100%", style: { border: 'none', pointerEvents: isResizingActive === true ? "none" : "auto" }, children: _jsxs("div", { style: {
209
209
  padding: '40px',
210
210
  textAlign: 'center',
211
211
  display: 'flex',
@@ -18,3 +18,4 @@ export default TMSearchQueryPanel;
18
18
  export declare const refreshLastSearch: (qd: QueryDescriptor | undefined) => Promise<SearchResultDescriptor[] | undefined>;
19
19
  export declare const StyledToppyTextContainer: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
20
20
  export declare const StyledToppyText: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLParagraphElement>, HTMLParagraphElement>, never>> & string;
21
+ export declare const StyledToppyImage: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<React.DetailedHTMLProps<React.ImgHTMLAttributes<HTMLImageElement>, HTMLImageElement>, never>> & string;
@@ -250,7 +250,7 @@ const TMSearchQueryPanel = ({ fromDTD, showBackToResultButton, isExpertMode = SD
250
250
  _jsx(TMMetadataChooserForm, { allowMultipleSelection: true, height: '500px', width: '600px', allowSysMetadata: true, qd: qd, selectedIDs: qd?.select?.map((item) => ({ tid: item.tid, mid: item.mid })), onClose: handleCloseOutputConfig, onChoose: handleChooseOutput }), showOrderByConfig &&
251
251
  _jsx(TMMetadataChooserForm, { allowMultipleSelection: true, height: '500px', width: '600px', allowSysMetadata: true, qd: qd, selectedIDs: qd?.orderBy?.map((item) => ({ tid: item.tid, mid: item.mid })), onClose: handleCloseOrderByConfig, onChoose: handleChooseOrderBy })] })
252
252
  :
253
- _jsxs(TMLayoutContainer, { gap: 30, alignItems: 'center', justifyContent: 'center', children: [_jsx(StyledToppyTextContainer, { children: _jsx(StyledToppyText, { children: SDKUI_Localizator.DcmtTypeSelectOrQuickSearch }) }), _jsx("img", { src: Toppy, width: 120, alt: '' })] }), showSqdForm &&
253
+ _jsxs(TMLayoutContainer, { gap: 30, alignItems: 'center', justifyContent: 'center', children: [_jsx(StyledToppyTextContainer, { children: _jsx(StyledToppyText, { children: SDKUI_Localizator.DcmtTypeSelectOrQuickSearch }) }), _jsx(StyledToppyImage, { src: Toppy, alt: 'Toppy' })] }), showSqdForm &&
254
254
  _jsx(StyledModalContainer, { style: { backgroundColor: `${TMColors.backgroundColorHeader}12` }, children: _jsx(TMSavedQueryForm, { height: '50%', width: '50%', id: formModeSqdForm === FormModes.Create ? -1 : SQD?.id, title: 'Ricerca rapida', formMode: formModeSqdForm, showBackButton: true, qd: qd, isAdvancedSearch: showAdvancedSearch, isModal: false, onClose: () => { setShowSqdForm(false); }, onSaved: onSqdSaved }) })] }), showDistinctValuesPanel &&
255
255
  _jsx(TMDistinctValues, { isModal: true, tid: focusedTidMid?.tid, mid: focusedTidMid?.mid, separator: ',', onClosePanelCallback: () => setShowDistinctValuesPanel(false), onSelectionChanged: (e) => {
256
256
  if (!e)
@@ -329,25 +329,43 @@ export const refreshLastSearch = async (qd) => {
329
329
  }
330
330
  return searchResults;
331
331
  };
332
- export const StyledToppyTextContainer = styled.div `
333
- padding: 30px 5vw;
332
+ export const StyledToppyTextContainer = styled.div `
333
+ padding: 22px 8px;
334
334
  width: 100%;
335
335
  max-width: 345px;
336
- border: 1px solid #2559A5;
337
- border-radius: 30px;
338
- display: flex;
339
- align-items: center;
340
- justify-content: center;
336
+ border: 1px solid #2559A5;
337
+ border-radius: 30px;
338
+ display: flex;
339
+ align-items: center;
340
+ justify-content: center;
341
341
  box-sizing: border-box;
342
+ min-height: 120px;
342
343
 
343
344
  @media (max-width: 400px) {
344
345
  padding: 20px 10px;
345
346
  max-width: 98vw;
346
347
  }
347
348
  `;
348
- export const StyledToppyText = styled.p `
349
- text-align: center;
350
- color: #2559A5;
351
- font-size: 30px;
349
+ export const StyledToppyText = styled.p `
350
+ text-align: center;
351
+ color: #2559A5;
352
+ font-size: 30px;
352
353
  user-select: none;
354
+ margin: 0;
355
+
356
+ /* Stili per l'ellissi multiriga (soluzione più semplice e ampiamente supportata) */
357
+ display: -webkit-box;
358
+ -webkit-box-orient: vertical;
359
+ -webkit-line-clamp: 3; /* non è una proprietà standard ma è così diffusa e ben supportata che è considerata una "best practice pragmatica" */
360
+ overflow: hidden;
361
+ text-overflow: ellipsis;
362
+ white-space: normal;
363
+ word-break: break-word;
364
+ line-height: 1.2;
365
+ `;
366
+ export const StyledToppyImage = styled.img `
367
+ width: 100%;
368
+ max-width: 120px;
369
+ height: auto;
370
+ display: block;
353
371
  `;
@@ -27,28 +27,29 @@ const TMTreeSelector = ({ layoutMode = LayoutModes.Update, isVisible, onSelected
27
27
  const deviceType = useDeviceType();
28
28
  const isMobile = deviceType === DeviceType.MOBILE;
29
29
  const panelRef = useOutsideClick(() => setInfoDTD(undefined));
30
- useEffect(() => {
31
- if (treeItems.length > 0 && treeItems[0].id) {
32
- setSelectedRowKeys([treeItems[0].id]);
33
- }
34
- }, [treeItems]);
30
+ // useEffect(() => {
31
+ // if (treeItems.length > 0 && treeItems[0].id) {
32
+ // setSelectedRowKeys([treeItems[0].id])
33
+ // }
34
+ // }, [treeItems])
35
35
  useEffect(() => {
36
36
  const setResultCache = (result) => {
37
37
  if (result && result.length > 0) {
38
38
  setTrees(result);
39
39
  let defaultTree = SDKUI_Globals.userSettings.searchSettings.defaultTree;
40
+ let initialTreeId;
41
+ let treeToSelect;
40
42
  if (defaultTree > 0) {
41
- setDefaultTreeId(defaultTree);
42
- setSelectedTreeId(defaultTree);
43
- const treeItemDescriptor = result.find(o => o.id == defaultTree);
44
- if (treeItemDescriptor?.id)
45
- setSelectedRowKeys([treeItemDescriptor.id]);
43
+ initialTreeId = defaultTree;
44
+ treeToSelect = result.find(o => o.id == defaultTree);
46
45
  }
47
46
  else {
48
- setSelectedTreeId(result?.[0].id ?? 0);
49
- const treeItemDescriptor = result?.[0];
50
- if (treeItemDescriptor?.id)
51
- setSelectedRowKeys([treeItemDescriptor.id]);
47
+ initialTreeId = result[0]?.id ?? 0;
48
+ treeToSelect = result[0];
49
+ }
50
+ setSelectedTreeId(initialTreeId);
51
+ if (treeToSelect?.id) {
52
+ setSelectedRowKeys([treeToSelect.id]);
52
53
  }
53
54
  }
54
55
  };
@@ -58,12 +59,12 @@ const TMTreeSelector = ({ layoutMode = LayoutModes.Update, isVisible, onSelected
58
59
  else {
59
60
  TreeCacheService.GetAllArchiveAsync().then((result) => { setResultCache(result); });
60
61
  }
61
- }, []);
62
+ }, [layoutMode]);
62
63
  useEffect(() => {
63
64
  let newTreeItems = trees.find(o => o.id == selectedTreeId)?.items ?? [];
64
65
  setTreeItems(newTreeItems);
65
- }, [selectedTreeId]);
66
- const renderCell = (data) => {
66
+ }, [selectedTreeId, trees]);
67
+ const renderCell = useCallback((data) => {
67
68
  const treeItem = data.data;
68
69
  const [showInfo, setShowInfo] = useState(false);
69
70
  // Documento (DcmtType)
@@ -114,7 +115,7 @@ const TMTreeSelector = ({ layoutMode = LayoutModes.Update, isVisible, onSelected
114
115
  whiteSpace: 'nowrap',
115
116
  flex: 1,
116
117
  }, children: treeItem.nameLoc })] }));
117
- };
118
+ }, [isMobile, setInfoDTD]);
118
119
  // Handles selection change in the data grid
119
120
  const onSelectionChanged = useCallback((e) => {
120
121
  const selectedKeys = e.component.getSelectedRowKeys() ?? [];
@@ -144,11 +145,17 @@ const TMTreeSelector = ({ layoutMode = LayoutModes.Update, isVisible, onSelected
144
145
  }, []);
145
146
  return (_jsx(TMPanel, { title: SDK_Localizator.Trees, isVisible: isVisible, totalItems: trees.length, onClose: onClosePanel, allowMaximize: allowMaximize, onMaximize: onMaximizePanel, onHeaderDoubleClick: onMaximizePanel, toolbar: _jsx(TMButton, { btnStyle: 'icon', caption: defaultTreeId == selectedTreeId ? SDKUI_Localizator.TreeRemoveDefault : SDKUI_Localizator.SetAsDefault, icon: defaultTreeId == selectedTreeId ? _jsx(IconStarRemove, { color: 'rgb(243, 114, 92)' }) : _jsx(IconStar, { color: 'rgb(248, 215, 117)' }), onClick: () => {
146
147
  if (defaultTreeId == selectedTreeId) {
147
- SDKUI_Globals.userSettings.searchSettings.defaultTree = -1;
148
+ if (layoutMode == LayoutModes.Update)
149
+ SDKUI_Globals.userSettings.searchSettings.defaultTree = -1;
150
+ else
151
+ SDKUI_Globals.userSettings.archivingSettings.defaultTree = -1;
148
152
  setDefaultTreeId(-1);
149
153
  }
150
154
  else {
151
- SDKUI_Globals.userSettings.searchSettings.defaultTree = selectedTreeId;
155
+ if (layoutMode == LayoutModes.Update)
156
+ SDKUI_Globals.userSettings.searchSettings.defaultTree = selectedTreeId;
157
+ else
158
+ SDKUI_Globals.userSettings.archivingSettings.defaultTree = selectedTreeId;
152
159
  setDefaultTreeId(selectedTreeId);
153
160
  }
154
161
  } }), children: trees.length > 0
@@ -2,7 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
2
2
  import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';
3
3
  import { DcmtTypeListCacheService, LayoutModes, ResultTypes, SDK_Globals, WorkingGroupEngine } from "@topconsultnpm/sdk-ts-beta";
4
4
  import { ContextMenu, ScrollView } from 'devextreme-react';
5
- import { SDKUI_Localizator, IconAttachment, getExceptionMessage, Globalization, IconBoard } from '../../helper';
5
+ import { SDKUI_Localizator, IconAttachment, getExceptionMessage, Globalization, IconBoard, genUniqueId } from '../../helper';
6
6
  import { useDeviceType, DeviceType } from '../base/TMDeviceProvider';
7
7
  import { TMMessageBoxManager, ButtonNames } from '../base/TMPopUp';
8
8
  import TMTooltip from '../base/TMTooltip';
@@ -31,6 +31,7 @@ const TMBlogs = (props) => {
31
31
  isRefreshEnabled: false,
32
32
  isCreateContextualTask: false,
33
33
  }, refreshCallback, showCommentFormCallback, showTaskFormCallback, handleAttachmentFocus, showFloatingCommentButton = false, context, layoutMode = 'stacked', markBlogAsRead, shouldSelectLastBlog = false, updateShouldSelectLastBlog } = props;
34
+ const [uiId, setUiId] = useState('');
34
35
  // Get the current device type (e.g., mobile, tablet, desktop) using a custom hook.
35
36
  const deviceType = useDeviceType();
36
37
  const { abortController, showWaitPanel, waitPanelTitle, showPrimary, waitPanelTextPrimary, waitPanelValuePrimary, waitPanelMaxValuePrimary, showSecondary, waitPanelTextSecondary, waitPanelValueSecondary, waitPanelMaxValueSecondary, downloadDcmtsAsync } = useDcmtOperations();
@@ -288,6 +289,9 @@ const TMBlogs = (props) => {
288
289
  ];
289
290
  return menuItemsElements;
290
291
  }, [isHeaderHidden, localShowId, setLocalShowId, focusedBlog, focusedAttachment, showDcmtForm]);
292
+ useEffect(() => {
293
+ setUiId(genUniqueId());
294
+ }, []);
291
295
  useEffect(() => {
292
296
  if (showId !== undefined)
293
297
  setLocalShowId(showId);
@@ -403,7 +407,7 @@ const TMBlogs = (props) => {
403
407
  // Scroll the focused blog post into view
404
408
  useEffect(() => {
405
409
  if (focusedBlog && focusedBlog.id && containerRef.current) {
406
- const focusedElement = document.getElementById(id + "-" + focusedBlog.id.toString());
410
+ const focusedElement = document.getElementById(id + "-" + uiId + focusedBlog.id.toString());
407
411
  if (focusedElement) {
408
412
  focusedElement.scrollIntoView({ behavior: 'smooth', block: 'center' });
409
413
  }
@@ -413,7 +417,7 @@ const TMBlogs = (props) => {
413
417
  const scrollRef = useRef(null);
414
418
  useEffect(() => {
415
419
  if (focusedBlog && focusedBlog.id) { // containerRef.current
416
- const focusedElement = document.getElementById(id + "-" + focusedBlog.id.toString());
420
+ const focusedElement = document.getElementById(id + "-" + uiId + focusedBlog.id.toString());
417
421
  if (focusedElement) {
418
422
  focusedElement.scrollIntoView({ behavior: 'smooth', block: 'center' });
419
423
  }
@@ -496,7 +500,7 @@ const TMBlogs = (props) => {
496
500
  handleFocusedBlog(blogPost);
497
501
  handleFocusedAttachment(undefined);
498
502
  };
499
- return (_jsxs(BlogPostContainer, { className: "blog-post-container", id: id + "-" + blogPost.id.toString(), ref: containerRef, "$color": textColor, "$textDecoration": blogPost.isDel ? 'line-through' : 'none', "$backgroundColor": bgColor, "$paddingRight": layoutMode === 'chat' ? '50px' : '10px', "$canNavigate": canNavigate(), onClick: onClickCallback, onDoubleClick: headerClickCallback, tabIndex: 0, onKeyDown: handleKeyDown, onKeyUp: handleKeyUp, onContextMenu: onContextMenu, children: [_jsxs("div", { style: { display: "flex", alignItems: "center" }, children: [(layoutMode !== 'chat' || !isOwnComment) && OwnerInitialsBadge(blogPost), _jsx("div", { style: { flex: "1 1 auto", minWidth: "0" }, children: _jsxs("div", { style: { display: 'flex', justifyContent: 'space-between', alignItems: 'center', flexWrap: "wrap", /* overflow: "hidden" */ }, children: [_jsxs("div", { style: { flex: "1 1 auto", minWidth: "0" }, children: [_jsxs("div", { style: {
503
+ return (_jsxs(BlogPostContainer, { className: "blog-post-container", id: id + "-" + uiId + "-" + blogPost.id.toString(), ref: containerRef, "$color": textColor, "$textDecoration": blogPost.isDel ? 'line-through' : 'none', "$backgroundColor": bgColor, "$paddingRight": layoutMode === 'chat' ? '50px' : '10px', "$canNavigate": canNavigate(), onClick: onClickCallback, onDoubleClick: headerClickCallback, tabIndex: 0, onKeyDown: handleKeyDown, onKeyUp: handleKeyUp, onContextMenu: onContextMenu, children: [_jsxs("div", { style: { display: "flex", alignItems: "center" }, children: [(layoutMode !== 'chat' || !isOwnComment) && OwnerInitialsBadge(blogPost), _jsx("div", { style: { flex: "1 1 auto", minWidth: "0" }, children: _jsxs("div", { style: { display: 'flex', justifyContent: 'space-between', alignItems: 'center', flexWrap: "wrap", /* overflow: "hidden" */ }, children: [_jsxs("div", { style: { flex: "1 1 auto", minWidth: "0" }, children: [_jsxs("div", { style: {
500
504
  fontWeight: "bold",
501
505
  fontSize: '1rem',
502
506
  display: "flex",
@@ -551,7 +555,7 @@ const TMBlogs = (props) => {
551
555
  }, children: [(showIconHeader) && blogPost.header && blogPost.classID &&
552
556
  _jsxs(_Fragment, { children: [_jsx("span", { style: { marginLeft: showIconHeader ? "5px" : "0" }, children: blogPost.ownerName }), _jsx("span", { style: { margin: "0 5px" }, children: "\u2501" })] }), blogPost.creationTime && highlightText(`${Globalization.getDateTimeDisplayValue(blogPost.creationTime)} ${new Date(blogPost.creationTime).toDateString() === new Date().toDateString()
553
557
  ? `(${SDKUI_Localizator.Today})`
554
- : ''}`, searchText, isSelected), localShowId && (_jsxs(_Fragment, { children: [_jsx("span", { style: { margin: "0 5px" }, children: "\u2501" }), _jsxs("span", { children: ["(ID: ", blogPost.id, ")"] })] }))] })] }), blogPost.attachments && showExtendedAttachments === false && (_jsx("div", { style: { marginTop: "25px", fontSize: "13px", display: "flex", justifyContent: "flex-end" }, children: _jsx(TMTooltip, { content: `${SDKUI_Localizator.Attachments}: ${blogPost.attachments.length}`, children: _jsx(IconAttachment, { fontSize: 20, color: isSelected ? '#fff' : color }) }) }))] }) })] }), _jsx("div", { style: { marginTop: "10px", fontSize: '1rem' }, children: _jsx(TMHtmlContentDisplay, { markup: blogPost.description ?? '-', searchText: searchText, isSelected: isSelected }) }), showExtendedAttachments && blogPost.attachments && blogPost.attachments.length > 0 && attachmentDetails(blogPost.attachments, isSelected)] }, id + "-" + blogPost.id));
558
+ : ''}`, searchText, isSelected), localShowId && (_jsxs(_Fragment, { children: [_jsx("span", { style: { margin: "0 5px" }, children: "\u2501" }), _jsxs("span", { children: ["(ID: ", blogPost.id, ")"] })] }))] })] }), blogPost.attachments && showExtendedAttachments === false && (_jsx("div", { style: { marginTop: "25px", fontSize: "13px", display: "flex", justifyContent: "flex-end" }, children: _jsx(TMTooltip, { content: `${SDKUI_Localizator.Attachments}: ${blogPost.attachments.length}`, children: _jsx(IconAttachment, { fontSize: 20, color: isSelected ? '#fff' : color }) }) }))] }) })] }), _jsx("div", { style: { marginTop: "10px", fontSize: '1rem' }, children: _jsx(TMHtmlContentDisplay, { markup: blogPost.description ?? '-', searchText: searchText, isSelected: isSelected }) }), showExtendedAttachments && blogPost.attachments && blogPost.attachments.length > 0 && attachmentDetails(blogPost.attachments, isSelected)] }, id + "-" + uiId + "-" + blogPost.id));
555
559
  };
556
560
  return _jsx(TMLayoutWaitingContainer, { direction: 'vertical', showWaitPanel: showWaitPanel, showWaitPanelPrimary: showPrimary, showWaitPanelSecondary: showSecondary, waitPanelTitle: waitPanelTitle, waitPanelTextPrimary: waitPanelTextPrimary, waitPanelValuePrimary: waitPanelValuePrimary, waitPanelMaxValuePrimary: waitPanelMaxValuePrimary, waitPanelTextSecondary: waitPanelTextSecondary, waitPanelValueSecondary: waitPanelValueSecondary, waitPanelMaxValueSecondary: waitPanelMaxValueSecondary, isCancelable: true, abortController: abortController, children: _jsx("div", { ref: scrollRef, style: { backgroundColor: layoutMode === "stacked" ? "rgba(191, 191, 191, 0.15)" : '#fff', height: "100%", padding: "5px", overflowY: "auto", width: "100%" }, children: blogPosts.length === 0 ?
557
561
  _jsxs("div", { style: { display: 'flex', flexDirection: 'column', alignItems: 'center', justifyContent: 'center', height: '100%' }, children: [_jsx(IconBoard, { fontSize: 96 }), searchText.length > 0 ?
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@topconsultnpm/sdkui-react-beta",
3
- "version": "6.14.119",
3
+ "version": "6.14.121",
4
4
  "description": "",
5
5
  "scripts": {
6
6
  "test": "echo \"Error: no test specified\" && exit 1",