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

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 (125) 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/TMAreaManager.js +23 -23
  42. package/lib/components/base/TMButton.js +130 -130
  43. package/lib/components/base/TMClosableList.js +46 -46
  44. package/lib/components/base/TMConfirm.js +20 -20
  45. package/lib/components/base/TMContextMenu.js +4 -4
  46. package/lib/components/base/TMContextMenuOLD.js +25 -25
  47. package/lib/components/base/TMCounterBar.js +32 -32
  48. package/lib/components/base/TMCounterContainer.js +30 -30
  49. package/lib/components/base/TMCustomButton.js +7 -7
  50. package/lib/components/base/TMDropDownMenu.js +24 -24
  51. package/lib/components/base/TMFileManagerUtils.js +19 -19
  52. package/lib/components/base/TMFloatingToolbar.js +34 -34
  53. package/lib/components/base/TMLayout.js +44 -44
  54. package/lib/components/base/TMList.js +34 -34
  55. package/lib/components/base/TMModal.js +31 -31
  56. package/lib/components/base/TMPanel.js +57 -57
  57. package/lib/components/base/TMPopUp.js +114 -114
  58. package/lib/components/base/TMProgressBar.js +20 -20
  59. package/lib/components/base/TMResizableMenu.js +28 -28
  60. package/lib/components/base/TMRightSidebar.js +40 -40
  61. package/lib/components/base/TMSpinner.js +121 -121
  62. package/lib/components/base/TMTab.js +11 -11
  63. package/lib/components/base/TMToggleButton.js +36 -36
  64. package/lib/components/base/TMToolbarCard.js +35 -35
  65. package/lib/components/base/TMTreeView.js +16 -16
  66. package/lib/components/base/TMUserAvatar.js +7 -7
  67. package/lib/components/base/TMWaitPanel.js +22 -22
  68. package/lib/components/choosers/TMCultureIDPicker.js +35 -35
  69. package/lib/components/choosers/TMDataListItemPicker.js +54 -54
  70. package/lib/components/editors/TMCheckBox.js +24 -24
  71. package/lib/components/editors/TMDropDown.js +43 -43
  72. package/lib/components/editors/TMEditorStyled.js +71 -71
  73. package/lib/components/editors/TMHtmlContentDisplay.js +16 -16
  74. package/lib/components/editors/TMLocalizedTextBox.js +31 -31
  75. package/lib/components/editors/TMMetadataValues.js +17 -17
  76. package/lib/components/editors/TMRadioButton.js +39 -39
  77. package/lib/components/editors/TMSummary.js +39 -39
  78. package/lib/components/editors/TMTextArea.js +12 -12
  79. package/lib/components/editors/TMTextBox.js +19 -19
  80. package/lib/components/features/assistant/ToppyHelpCenter.js +114 -114
  81. package/lib/components/features/blog/TMBlogCommentForm.js +3 -3
  82. package/lib/components/features/documents/TMDcmtIcon.js +8 -8
  83. package/lib/components/features/documents/TMDcmtPreview.js +30 -30
  84. package/lib/components/features/documents/TMFileUploader.js +21 -21
  85. package/lib/components/features/search/TMSavedQuerySelector.js +51 -51
  86. package/lib/components/features/search/TMSearchQueryEditor.js +13 -13
  87. package/lib/components/features/search/TMSearchQueryPanel.js +30 -30
  88. package/lib/components/features/search/TMSearchResult.js +3 -3
  89. package/lib/components/features/search/TMTreeSelector.js +66 -66
  90. package/lib/components/features/tasks/TMTaskForm.js +31 -31
  91. package/lib/components/features/wg/TMWGsCopyMoveForm.js +9 -9
  92. package/lib/components/features/workflow/TMWorkflowPopup.js +41 -41
  93. package/lib/components/features/workflow/diagram/ConnectionComponent.js +29 -29
  94. package/lib/components/features/workflow/diagram/ConnectionForm.js +10 -10
  95. package/lib/components/features/workflow/diagram/DiagramItemComponent.js +57 -57
  96. package/lib/components/features/workflow/diagram/DiagramItemForm.js +29 -29
  97. package/lib/components/features/workflow/diagram/DiagramItemSvgContent.js +12 -12
  98. package/lib/components/features/workflow/diagram/RecipientList.js +38 -38
  99. package/lib/components/features/workflow/diagram/WFDiagram.js +278 -278
  100. package/lib/components/features/workflow/diagram/WorkitemRecipientsEditor.js +4 -4
  101. package/lib/components/forms/Login/Chooser.js +35 -35
  102. package/lib/components/forms/Login/Menu.js +22 -22
  103. package/lib/components/forms/Login/SelectBox.js +46 -46
  104. package/lib/components/forms/Login/TMLoginForm.js +14 -14
  105. package/lib/components/forms/Login/TextBox.js +57 -57
  106. package/lib/components/grids/TMBlogsPostUtils.js +5 -5
  107. package/lib/components/grids/TMRecentsManager.js +50 -50
  108. package/lib/components/grids/TMValidationItemsList.js +48 -48
  109. package/lib/components/layout/panelManager/TMPanelManagerContainer.js +12 -12
  110. package/lib/components/layout/panelManager/TMPanelManagerToolbar.js +34 -34
  111. package/lib/components/query/TMQueryEditor.js +17 -17
  112. package/lib/components/query/TMQuerySummary.js +12 -12
  113. package/lib/components/settings/SettingsAppearance.js +0 -8
  114. package/lib/components/sidebar/TMCommandsPanel.js +10 -10
  115. package/lib/components/sidebar/TMHeader.js +307 -307
  116. package/lib/components/sidebar/TMSidebar.js +24 -24
  117. package/lib/components/sidebar/TMSidebarItem.js +21 -21
  118. package/lib/components/wizard/TMStepIndicator.js +102 -102
  119. package/lib/components/wizard/TMWizard.js +29 -29
  120. package/lib/helper/SDKUI_Globals.d.ts +0 -2
  121. package/lib/helper/SDKUI_Globals.js +1 -9
  122. package/lib/helper/TMIcons.js +1 -1
  123. package/lib/helper/TMToppyMessage.js +30 -30
  124. package/lib/helper/TMUtils.js +37 -37
  125. package/package.json +54 -54
@@ -2,51 +2,51 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { FontSize, TMColors } from '../../utils/theme';
3
3
  import styled from 'styled-components';
4
4
  import { makeID } from '../../helper/helpers';
5
- const StyledWrapper = styled.label `
6
- color: ${props => !props.$disabled ? props.$isModifiedWhen ? TMColors.isModified : TMColors.text_normal : TMColors.disabled};
7
- display: flex;
8
- flex-direction: ${props => props.$direction};
9
- align-items: ${props => props.$direction === 'row' ? 'center' : 'flex-start'};
10
- font-size: ${props => props.$fontSize};
11
- gap: ${props => props.$direction === 'row' ? '20px' : "10px"};
5
+ const StyledWrapper = styled.label `
6
+ color: ${props => !props.$disabled ? props.$isModifiedWhen ? TMColors.isModified : TMColors.text_normal : TMColors.disabled};
7
+ display: flex;
8
+ flex-direction: ${props => props.$direction};
9
+ align-items: ${props => props.$direction === 'row' ? 'center' : 'flex-start'};
10
+ font-size: ${props => props.$fontSize};
11
+ gap: ${props => props.$direction === 'row' ? '20px' : "10px"};
12
12
  `;
13
- const StyledRadioGroupLabel = styled.div `
14
- flex: ${props => props.$flexBase};
13
+ const StyledRadioGroupLabel = styled.div `
14
+ flex: ${props => props.$flexBase};
15
15
  `;
16
- const StyledRadioGroupContainer = styled.div `
17
- flex: ${props => 10 - props.$flexBase};
16
+ const StyledRadioGroupContainer = styled.div `
17
+ flex: ${props => 10 - props.$flexBase};
18
18
  `;
19
- const StyledRadioButtonWrapper = styled.div `
20
- display: flex;
21
- flex-direction: ${props => props.$direction};
22
- align-items: ${props => props.$direction === 'row' ? 'center' : 'flex-start'};
23
- justify-content: flex-start;
24
- gap: ${props => props.$direction === 'row' ? '10px' : '5px'};
19
+ const StyledRadioButtonWrapper = styled.div `
20
+ display: flex;
21
+ flex-direction: ${props => props.$direction};
22
+ align-items: ${props => props.$direction === 'row' ? 'center' : 'flex-start'};
23
+ justify-content: flex-start;
24
+ gap: ${props => props.$direction === 'row' ? '10px' : '5px'};
25
25
  `;
26
- const StyledRadioButtoncontainer = styled.div `
27
- display: flex;
28
- flex-direction: row;
29
- align-items: center;
30
- justify-content: flex-start;
31
- gap: 5px;
32
- height: 18px;
26
+ const StyledRadioButtoncontainer = styled.div `
27
+ display: flex;
28
+ flex-direction: row;
29
+ align-items: center;
30
+ justify-content: flex-start;
31
+ gap: 5px;
32
+ height: 18px;
33
33
  `;
34
- const StyledRadioButton = styled.input `
35
- accent-color: ${props => !props.$disabled ? props.$isModifiedWhen ? TMColors.isModified : TMColors.primary : TMColors.disabled};
36
- cursor: ${props => !props.$disabled && 'pointer'};
34
+ const StyledRadioButton = styled.input `
35
+ accent-color: ${props => !props.$disabled ? props.$isModifiedWhen ? TMColors.isModified : TMColors.primary : TMColors.disabled};
36
+ cursor: ${props => !props.$disabled && 'pointer'};
37
37
  `;
38
- const StyledradioButtonLabel = styled.label `
39
- font-size: ${props => props.$fontSize};
40
- color: ${props => !props.$disabled ? props.$isModifiedWhen ? TMColors.isModified : TMColors.text_normal : TMColors.disabled};
41
- user-select: none;
42
- width: 100%;
43
- cursor: ${props => !props.$disabled && 'pointer'};
44
- &:focus{
45
- outline: none;
46
- background-image: linear-gradient(white, #E4E9F7);
47
- border-bottom: 2px solid ;
48
- border-bottom-color: ${props => !props.$isModifiedWhen ? TMColors.primary : TMColors.isModified};
49
- }
38
+ const StyledradioButtonLabel = styled.label `
39
+ font-size: ${props => props.$fontSize};
40
+ color: ${props => !props.$disabled ? props.$isModifiedWhen ? TMColors.isModified : TMColors.text_normal : TMColors.disabled};
41
+ user-select: none;
42
+ width: 100%;
43
+ cursor: ${props => !props.$disabled && 'pointer'};
44
+ &:focus{
45
+ outline: none;
46
+ background-image: linear-gradient(white, #E4E9F7);
47
+ border-bottom: 2px solid ;
48
+ border-bottom-color: ${props => !props.$isModifiedWhen ? TMColors.primary : TMColors.isModified};
49
+ }
50
50
  `;
51
51
  const TMRadioButton = ({ isModifiedWhen, flexBase = 1, elementStyle, label, value, fontSize = FontSize.defaultFontSize, dataSource = [], direction = 'row', onValueChanged, disabled = false }) => {
52
52
  const renderedRadioButtons = () => {
@@ -7,46 +7,46 @@ import { IconClearButton, IconPencil, SDKUI_Localizator } from '../../helper';
7
7
  import TMLayoutContainer, { TMLayoutItem } from '../base/TMLayout';
8
8
  import TMVilViewer from '../base/TMVilViewer';
9
9
  import TMTooltip from '../base/TMTooltip';
10
- const StyledSummaryTemplateInput = styled.div `
11
- width: ${props => props.$width};
12
- height: ${props => props.$height};
13
- padding: ${props => !props.$showBorder ? '4px 5px' : '5px 5px 5px 13px'};
14
- border: ${props => !props.$showBorder ? '' : '1px solid'};
15
- background: ${props => props.$readOnly ? 'linear-gradient(white 20%, #d6d6d6 80%)' : props.$backgroundColor};
16
- border-color: ${props => props.$isModified ? TMColors.isModified : TMColors.border_normal};
17
- border-bottom: ${props => !props.$showBorder ? '' : (props.$vil.length > 0) ? '3px solid' : '1px solid'} ;
18
- border-bottom-color: ${props => (props.$vil.length === 0) ? !props.$isModified ? TMColors.border_normal : TMColors.isModified : editorColorManager(props.$vil)};
19
- color: ${props => props.$readOnly ? '#525252' : !props.$disabled ? (props.$vil.length === 0) ? !props.$isModified ? 'black' : TMColors.isModified : editorColorManager(props.$vil) : TMColors.disabled};
20
- border-radius: ${props => !props.$showBorder ? props.$borderRadius : TMEditorsDefaultBorderRadius};
21
- display: flex;
22
- align-items: center;
23
- overflow: hidden;
24
-
25
- &:focus{
26
- outline: none;
27
- background-image: ${props => !props.$showBorder ? '' : 'linear-gradient(white, #E4E9F7)'};
28
- border: ${props => !props.$showBorder ? '' : props.$isModified ? `1px solid ${TMColors.isModified}` : '1px solid rgb(180,180,180)'};
29
- border-bottom: ${props => !props.$showBorder ? '' : '2px solid'};
30
- border-bottom-color: ${props => !props.$showBorder ? '' : (props.$vil.length === 0) ? !props.$isModified ? TMColors.primary : TMColors.isModified : editorColorManager(props.$vil)};
31
- }
32
- font-size: ${props => props.$fontSize};
33
- &::placeholder {
34
- /* color: ${props => (props.$vil.length === 0) ? 'gray' : editorColorManager(props.$vil)}; */
35
- font-size: ${props => props.$fontSize};
36
- }
10
+ const StyledSummaryTemplateInput = styled.div `
11
+ width: ${props => props.$width};
12
+ height: ${props => props.$height};
13
+ padding: ${props => !props.$showBorder ? '4px 5px' : '5px 5px 5px 13px'};
14
+ border: ${props => !props.$showBorder ? '' : '1px solid'};
15
+ background: ${props => props.$readOnly ? 'linear-gradient(white 20%, #d6d6d6 80%)' : props.$backgroundColor};
16
+ border-color: ${props => props.$isModified ? TMColors.isModified : TMColors.border_normal};
17
+ border-bottom: ${props => !props.$showBorder ? '' : (props.$vil.length > 0) ? '3px solid' : '1px solid'} ;
18
+ border-bottom-color: ${props => (props.$vil.length === 0) ? !props.$isModified ? TMColors.border_normal : TMColors.isModified : editorColorManager(props.$vil)};
19
+ color: ${props => props.$readOnly ? '#525252' : !props.$disabled ? (props.$vil.length === 0) ? !props.$isModified ? 'black' : TMColors.isModified : editorColorManager(props.$vil) : TMColors.disabled};
20
+ border-radius: ${props => !props.$showBorder ? props.$borderRadius : TMEditorsDefaultBorderRadius};
21
+ display: flex;
22
+ align-items: center;
23
+ overflow: hidden;
24
+
25
+ &:focus{
26
+ outline: none;
27
+ background-image: ${props => !props.$showBorder ? '' : 'linear-gradient(white, #E4E9F7)'};
28
+ border: ${props => !props.$showBorder ? '' : props.$isModified ? `1px solid ${TMColors.isModified}` : '1px solid rgb(180,180,180)'};
29
+ border-bottom: ${props => !props.$showBorder ? '' : '2px solid'};
30
+ border-bottom-color: ${props => !props.$showBorder ? '' : (props.$vil.length === 0) ? !props.$isModified ? TMColors.primary : TMColors.isModified : editorColorManager(props.$vil)};
31
+ }
32
+ font-size: ${props => props.$fontSize};
33
+ &::placeholder {
34
+ /* color: ${props => (props.$vil.length === 0) ? 'gray' : editorColorManager(props.$vil)}; */
35
+ font-size: ${props => props.$fontSize};
36
+ }
37
37
  `;
38
- const StyledEditorButtonIcon2 = styled.div `
39
- color: ${TMColors.button_icon};
40
- display: flex;
41
- align-items: center;
42
- position: relative;
43
- cursor: pointer;
44
- &:focus{
45
- outline: none;
46
- background-image: linear-gradient(white, #E4E9F7);
47
- border-bottom: 2px solid;
48
- border-bottom-color: ${TMColors.primary};
49
- }
38
+ const StyledEditorButtonIcon2 = styled.div `
39
+ color: ${TMColors.button_icon};
40
+ display: flex;
41
+ align-items: center;
42
+ position: relative;
43
+ cursor: pointer;
44
+ &:focus{
45
+ outline: none;
46
+ background-image: linear-gradient(white, #E4E9F7);
47
+ border-bottom: 2px solid;
48
+ border-bottom-color: ${TMColors.primary};
49
+ }
50
50
  `;
51
51
  const TMSummary = forwardRef(({ placeHolder, readOnly, labelColor, hasValue, borderRadius = '4px', validationItems = [], buttons = [], label = '', onClearClick, openEditorOnSummaryClick = true, onEditorClick, backgroundColor = 'transparent', showBorder = true, isModifiedWhen, elementStyle, width = '100%', height = '100%', fontSize = FontSize.defaultFontSize, icon, showEditButton = true, showClearButton, iconEditButton, iconeEditTooltip, labelPosition = 'left', template, disabled = false, onValueChanged }, ref) => {
52
52
  const summaryElementRef = useRef(null); // Ref all'elemento DOM div principale
@@ -10,18 +10,18 @@ import TMTooltip from '../base/TMTooltip';
10
10
  import { DeviceType, useDeviceType } from '../base/TMDeviceProvider';
11
11
  import { IconClearButton } from '../../helper';
12
12
  import styled from 'styled-components';
13
- const StyledTextAreaEditorButton = styled.div `
14
- color: ${TMColors.button_icon};
15
- display: flex;
16
- align-items: center;
17
- position: relative;
18
- cursor: pointer;
19
- &:focus{
20
- outline: none;
21
- background-image: linear-gradient(white, #E4E9F7);
22
- border-bottom: 2px solid;
23
- border-bottom-color: ${TMColors.primary};
24
- }
13
+ const StyledTextAreaEditorButton = styled.div `
14
+ color: ${TMColors.button_icon};
15
+ display: flex;
16
+ align-items: center;
17
+ position: relative;
18
+ cursor: pointer;
19
+ &:focus{
20
+ outline: none;
21
+ background-image: linear-gradient(white, #E4E9F7);
22
+ border-bottom: 2px solid;
23
+ border-bottom-color: ${TMColors.primary};
24
+ }
25
25
  `;
26
26
  // Define the TMTextArea component
27
27
  const TMTextArea = (props) => {
@@ -11,26 +11,26 @@ import TMVilViewer from '../base/TMVilViewer';
11
11
  import TMTooltip from '../base/TMTooltip';
12
12
  import { ContextMenu } from 'devextreme-react';
13
13
  import { DeviceType, useDeviceType } from '../base/TMDeviceProvider';
14
- const StyledShowPasswordIcon = styled.div `
15
- color: ${props => !props.$disabled ? (props.$vil.length === 0) ? !props.$isModified ? TMColors.text_normal : TMColors.isModified : editorColorManager(props.$vil) : TMColors.disabled};
16
- position: absolute;
17
- right: 10px;
18
- font-size: 18px;
19
- transform: translateY(-25px);
20
- cursor: pointer;
14
+ const StyledShowPasswordIcon = styled.div `
15
+ color: ${props => !props.$disabled ? (props.$vil.length === 0) ? !props.$isModified ? TMColors.text_normal : TMColors.isModified : editorColorManager(props.$vil) : TMColors.disabled};
16
+ position: absolute;
17
+ right: 10px;
18
+ font-size: 18px;
19
+ transform: translateY(-25px);
20
+ cursor: pointer;
21
21
  `;
22
- const StyledTextBoxEditorButton = styled.div `
23
- color: ${TMColors.button_icon};
24
- display: flex;
25
- align-items: center;
26
- position: relative;
27
- cursor: pointer;
28
- &:focus{
29
- outline: none;
30
- background-image: linear-gradient(white, #E4E9F7);
31
- border-bottom: 2px solid;
32
- border-bottom-color: ${TMColors.primary};
33
- }
22
+ const StyledTextBoxEditorButton = styled.div `
23
+ color: ${TMColors.button_icon};
24
+ display: flex;
25
+ align-items: center;
26
+ position: relative;
27
+ cursor: pointer;
28
+ &:focus{
29
+ outline: none;
30
+ background-image: linear-gradient(white, #E4E9F7);
31
+ border-bottom: 2px solid;
32
+ border-bottom-color: ${TMColors.primary};
33
+ }
34
34
  `;
35
35
  const TMTextBox = ({ autoFocus, maxLength, labelColor, precision, fromModal = false, scale, showClearButton, validationItems = [], label = '', readOnly = false, formulaItems = [], buttons = [], isModifiedWhen, placeHolder, elementStyle, width = '100%', maxValue, minValue, fontSize = FontSize.defaultFontSize, icon, labelPosition = 'left', value, disabled = false, type = 'text', onValueChanged, onBlur, borderRadius, allowedPattern }) => {
36
36
  const [initialType, setInitialType] = useState(type);
@@ -4,138 +4,138 @@ import ReactDOM from 'react-dom';
4
4
  import styled, { keyframes, css } from 'styled-components';
5
5
  import Toppy from '../../../assets/Toppy-generico.png';
6
6
  import { DeviceType } from '../../base/TMDeviceProvider';
7
- const toppyEntrance = keyframes `
8
- 0% { right: -200px; opacity: 0; }
9
- 60% { opacity: 1; }
10
- 100% { right: 10px; opacity: 1; }
7
+ const toppyEntrance = keyframes `
8
+ 0% { right: -200px; opacity: 0; }
9
+ 60% { opacity: 1; }
10
+ 100% { right: 10px; opacity: 1; }
11
11
  `;
12
- const pulseAnimation = keyframes `
13
- 0% { transform: scale(1); }
14
- 50% { transform: scale(1.05); }
15
- 100% { transform: scale(1); }
12
+ const pulseAnimation = keyframes `
13
+ 0% { transform: scale(1); }
14
+ 50% { transform: scale(1.05); }
15
+ 100% { transform: scale(1); }
16
16
  `;
17
- const bounceAnimation = keyframes `
18
- 0%, 20%, 50%, 80%, 100% {
19
- transform: translateY(0);
20
- }
21
- 40% {
22
- transform: translateY(-10px);
23
- }
24
- 60% {
25
- transform: translateY(-5px);
26
- }
17
+ const bounceAnimation = keyframes `
18
+ 0%, 20%, 50%, 80%, 100% {
19
+ transform: translateY(0);
20
+ }
21
+ 40% {
22
+ transform: translateY(-10px);
23
+ }
24
+ 60% {
25
+ transform: translateY(-5px);
26
+ }
27
27
  `;
28
- const wiggle = keyframes `
29
- 0% { transform: rotate(-5deg) scale(1.1); }
30
- 10% { transform: rotate(5deg) scale(0.95); }
31
- 20% { transform: rotate(-5deg) scale(1.1); }
32
- 30% { transform: rotate(5deg) scale(1.05); }
33
- 40% { transform: rotate(-5deg) scale(1); }
34
- 50% { transform: rotate(5deg) scale(0.96); }
35
- 60% { transform: rotate(-5deg) scale(1.15); }
36
- 70% { transform: rotate(5deg) scale(0.99); }
37
- 80% { transform: rotate(-5deg) scale(1.05); }
38
- 90% { transform: rotate(5deg) scale(1); }
39
- 100% { transform: rotate(-5deg) scale(1.08); }
28
+ const wiggle = keyframes `
29
+ 0% { transform: rotate(-5deg) scale(1.1); }
30
+ 10% { transform: rotate(5deg) scale(0.95); }
31
+ 20% { transform: rotate(-5deg) scale(1.1); }
32
+ 30% { transform: rotate(5deg) scale(1.05); }
33
+ 40% { transform: rotate(-5deg) scale(1); }
34
+ 50% { transform: rotate(5deg) scale(0.96); }
35
+ 60% { transform: rotate(-5deg) scale(1.15); }
36
+ 70% { transform: rotate(5deg) scale(0.99); }
37
+ 80% { transform: rotate(-5deg) scale(1.05); }
38
+ 90% { transform: rotate(5deg) scale(1); }
39
+ 100% { transform: rotate(-5deg) scale(1.08); }
40
40
  `;
41
- const ToppyContainer = styled.div `
42
- position: ${({ $fixed }) => ($fixed ? 'fixed' : 'absolute')};
43
- bottom: ${({ $isCollapsed, $isMobile }) => $isMobile ? '5px' : $isCollapsed ? '5px' : '-20px'};
41
+ const ToppyContainer = styled.div `
42
+ position: ${({ $fixed }) => ($fixed ? 'fixed' : 'absolute')};
43
+ bottom: ${({ $isCollapsed, $isMobile }) => $isMobile ? '5px' : $isCollapsed ? '5px' : '-20px'};
44
44
  ${({ $align, $isCollapsed }) => $align === 'left'
45
45
  ? `left: ${$isCollapsed ? '5px' : '10px'}; right: auto;`
46
- : `right: ${$isCollapsed ? '5px' : '10px'}; left: auto;`}
47
- display: flex;
48
- flex-direction: column-reverse; /* Il contenuto è sopra l'immagine */
49
- align-items: ${({ $align }) => $align === 'left' ? 'flex-start' : 'flex-end'};
50
- animation: ${({ $fixed }) => $fixed && css `${toppyEntrance} 0.5s cubic-bezier(0.23, 1, 0.32, 1)`};
51
- z-index: ${({ $fixed }) => ($fixed ? 2147483647 : 10)};
46
+ : `right: ${$isCollapsed ? '5px' : '10px'}; left: auto;`}
47
+ display: flex;
48
+ flex-direction: column-reverse; /* Il contenuto è sopra l'immagine */
49
+ align-items: ${({ $align }) => $align === 'left' ? 'flex-start' : 'flex-end'};
50
+ animation: ${({ $fixed }) => $fixed && css `${toppyEntrance} 0.5s cubic-bezier(0.23, 1, 0.32, 1)`};
51
+ z-index: ${({ $fixed }) => ($fixed ? 2147483647 : 10)};
52
52
  `;
53
- const ToppyImage = styled.img `
54
- width: ${({ $isMobile, $isCollapsed }) => $isCollapsed ? '60px' : $isMobile ? '90px' : '120px'};
55
- height: ${({ $isMobile, $isCollapsed }) => $isCollapsed ? '70px' : $isMobile ? '105px' : '140px'};
56
- cursor: pointer;
57
- object-fit: cover;
58
- object-position: top center;
59
- clip-path: inset(0 0 22% 0 round 10px);
53
+ const ToppyImage = styled.img `
54
+ width: ${({ $isMobile, $isCollapsed }) => $isCollapsed ? '60px' : $isMobile ? '90px' : '120px'};
55
+ height: ${({ $isMobile, $isCollapsed }) => $isCollapsed ? '70px' : $isMobile ? '105px' : '140px'};
56
+ cursor: pointer;
57
+ object-fit: cover;
58
+ object-position: top center;
59
+ clip-path: inset(0 0 22% 0 round 10px);
60
60
  transform: ${({ $isCollapsed, $align }) => $isCollapsed
61
61
  ? 'none'
62
62
  : $align === 'left'
63
63
  ? 'rotate(20deg)'
64
- : 'rotate(-20deg)'};
65
-
64
+ : 'rotate(-20deg)'};
65
+
66
66
  ${({ $isCollapsed }) => $isCollapsed &&
67
- css `
68
- /* animation: ${bounceAnimation} 2s infinite; */
69
- /* animation: ${pulseAnimation} 2s infinite; */
70
- animation: ${wiggle} 4s infinite;
71
- `}
67
+ css `
68
+ /* animation: ${bounceAnimation} 2s infinite; */
69
+ /* animation: ${pulseAnimation} 2s infinite; */
70
+ animation: ${wiggle} 4s infinite;
71
+ `}
72
72
  `;
73
- const ToppyContent = styled.div `
73
+ const ToppyContent = styled.div `
74
74
  margin-bottom: ${({ $isMobile, $align }) => $align === 'left'
75
75
  ? '30px' // Spazio tra ToppyContent e ToppyImage
76
76
  : $isMobile
77
77
  ? '30px'
78
- : '20px'};
79
-
80
-
81
- display: ${props => (props.$isCollapsed ? 'none' : 'block')};
82
- width: max-content;
83
- max-width: 250px;
84
- background: linear-gradient(
85
- 180deg,
86
- rgba(0, 113, 188, 0.45) 0%,
87
- rgba(27, 20, 100, 0.65) 100%
88
- );
89
- color: white;
90
- padding: 10px;
91
- border-radius: 10px;
92
- border: 1px solid #FFFFFF;
93
- opacity: ${props => (props.$isCollapsed ? 0 : 1)};
94
- transform: ${props => (props.$isCollapsed ? 'translateY(20px)' : 'translateY(0)')};
95
- transition: opacity 0.3s ease, transform 0.3s ease;
96
- pointer-events: ${props => (props.$isCollapsed ? 'none' : 'auto')};
97
- position: relative;
98
-
78
+ : '20px'};
79
+
80
+
81
+ display: ${props => (props.$isCollapsed ? 'none' : 'block')};
82
+ width: max-content;
83
+ max-width: 250px;
84
+ background: linear-gradient(
85
+ 180deg,
86
+ rgba(0, 113, 188, 0.45) 0%,
87
+ rgba(27, 20, 100, 0.65) 100%
88
+ );
89
+ color: white;
90
+ padding: 10px;
91
+ border-radius: 10px;
92
+ border: 1px solid #FFFFFF;
93
+ opacity: ${props => (props.$isCollapsed ? 0 : 1)};
94
+ transform: ${props => (props.$isCollapsed ? 'translateY(20px)' : 'translateY(0)')};
95
+ transition: opacity 0.3s ease, transform 0.3s ease;
96
+ pointer-events: ${props => (props.$isCollapsed ? 'none' : 'auto')};
97
+ position: relative;
98
+
99
99
  ${({ $align, $isMobile }) => $align === 'left' &&
100
- css `
101
- position: absolute;
102
- left: 50px;
103
- right: auto;
104
- bottom: 100%;
105
- transform: translateY(-${$isMobile ? '10px' : '20px'});
106
- `}
107
-
108
- &::after {
109
- transform: ${({ $align }) => $align === 'left' ? 'skewX(15deg)' : 'skewX(-15deg)'};
110
- content: "";
111
- position: absolute;
112
- top: 100%;
113
-
114
- ${({ $align }) => $align === 'left' ? 'left: 20px; right: auto;' : 'right: 15px; left: auto;'}
115
- border-width: 32px 32px 0 0;
116
- border-style: solid;
117
- border-color: #FFFFFF transparent;
118
- display: block;
119
- width: 0;
120
- height: 0;
121
- z-index: 1;
122
- }
123
-
124
- &::before {
125
- transform: ${({ $align }) => $align === 'left' ? 'skewX(15deg)' : 'skewX(-15deg)'};
126
- content: "";
127
- position: absolute;
128
- top: 100%;
129
-
130
- ${({ $align }) => $align === 'left' ? 'left: 20px; right: auto;' : 'right: 15px; left: auto;'}
131
- border-width: 32px 32px 0 0;
132
- border-style: solid;
133
- border-color: rgba(27, 20, 100, 0.65) transparent;
134
- display: block;
135
- width: 0;
136
- height: 0;
137
- z-index: 2;
138
- }
100
+ css `
101
+ position: absolute;
102
+ left: 50px;
103
+ right: auto;
104
+ bottom: 100%;
105
+ transform: translateY(-${$isMobile ? '10px' : '20px'});
106
+ `}
107
+
108
+ &::after {
109
+ transform: ${({ $align }) => $align === 'left' ? 'skewX(15deg)' : 'skewX(-15deg)'};
110
+ content: "";
111
+ position: absolute;
112
+ top: 100%;
113
+
114
+ ${({ $align }) => $align === 'left' ? 'left: 20px; right: auto;' : 'right: 15px; left: auto;'}
115
+ border-width: 32px 32px 0 0;
116
+ border-style: solid;
117
+ border-color: #FFFFFF transparent;
118
+ display: block;
119
+ width: 0;
120
+ height: 0;
121
+ z-index: 1;
122
+ }
123
+
124
+ &::before {
125
+ transform: ${({ $align }) => $align === 'left' ? 'skewX(15deg)' : 'skewX(-15deg)'};
126
+ content: "";
127
+ position: absolute;
128
+ top: 100%;
129
+
130
+ ${({ $align }) => $align === 'left' ? 'left: 20px; right: auto;' : 'right: 15px; left: auto;'}
131
+ border-width: 32px 32px 0 0;
132
+ border-style: solid;
133
+ border-color: rgba(27, 20, 100, 0.65) transparent;
134
+ display: block;
135
+ width: 0;
136
+ height: 0;
137
+ z-index: 2;
138
+ }
139
139
  `;
140
140
  const ToppyHelpCenter = ({ content, deviceType, usePortal = true, align = 'right', initialIsCollapsed, onToppyImageClick }) => {
141
141
  const [isCollapsed, setIsCollapsed] = useState(initialIsCollapsed ?? false);
@@ -89,9 +89,9 @@ const TMBlogCommentForm = (props) => {
89
89
  displayExpr: 'text',
90
90
  valueExpr: 'text',
91
91
  itemTemplate: function (itemData) {
92
- return `<div style="display: flex; align-items: center; justify-content: center; gap: 8px; height: 100%;">
93
- ${itemData.icon}
94
- <span>${itemData.text}</span>
92
+ return `<div style="display: flex; align-items: center; justify-content: center; gap: 8px; height: 100%;">
93
+ ${itemData.icon}
94
+ <span>${itemData.text}</span>
95
95
  </div>`;
96
96
  },
97
97
  }];
@@ -7,13 +7,13 @@ import { DownloadTypes } from '../../../ts';
7
7
  import { DeviceType, useDeviceType } from '../../base/TMDeviceProvider';
8
8
  import { useDcmtOperations } from '../../../hooks/useDcmtOperations';
9
9
  import { TMWaitPanel } from '../../base/TMWaitPanel';
10
- const StyledCellRenderDcmtIcon = styled.div `
11
- display: flex;
12
- flex-direction: row;
13
- align-items: center;
14
- justify-content: center;
15
- overflow: visible;
16
- position: relative;
10
+ const StyledCellRenderDcmtIcon = styled.div `
11
+ display: flex;
12
+ flex-direction: row;
13
+ align-items: center;
14
+ justify-content: center;
15
+ overflow: visible;
16
+ position: relative;
17
17
  `;
18
18
  const TMDcmtIcon = ({ fileExtension, fileCount, isLexProt, isSigned, isMail, isShared, tid, did, downloadMode = "none", tooltipContent, openInOffice, onDownloadDcmtsAsync }) => {
19
19
  const { downloadDcmtsAsync, showWaitPanel, waitPanelTitle, showSecondary, waitPanelTextSecondary, waitPanelValueSecondary, waitPanelMaxValueSecondary, abortController } = useDcmtOperations();
@@ -56,7 +56,7 @@ const TMDcmtIcon = ({ fileExtension, fileCount, isLexProt, isSigned, isMail, isS
56
56
  };
57
57
  export default TMDcmtIcon;
58
58
  function IconLexProtLock(props) {
59
- return (_jsxs("svg", { viewBox: "0 0 512 512", height: "1em", width: "1em", ...props, children: [_jsx("path", { fill: "#455A64", d: "M256,0c-76.544,0.094-138.573,62.122-138.667,138.667V224c0,5.891,4.776,10.667,10.667,10.667h42.667\r\n c5.891,0,10.667-4.776,10.667-10.667v-85.333C181.333,97.429,214.763,64,256,64s74.667,33.429,74.667,74.667V224\r\n c0,5.891,4.776,10.667,10.667,10.667H384c5.891,0,10.667-4.776,10.667-10.667v-85.333C394.573,62.122,332.544,0.094,256,0z" }), _jsx("path", { fill: "#FFC107", d: "M128,213.333h256c29.455,0,53.333,23.878,53.333,53.333v192C437.333,488.122,413.455,512,384,512H128\r\n c-29.455,0-53.333-23.878-53.333-53.333v-192C74.667,237.211,98.545,213.333,128,213.333z" }), _jsx("path", { fill: "#455A64", d: "M309.333,330.667c0.124-29.455-23.653-53.434-53.108-53.558\r\n c-29.455-0.124-53.434,23.653-53.558,53.108c-0.086,20.36,11.427,38.992,29.674,48.023l-8.235,57.6\r\n c-0.825,5.833,3.235,11.23,9.068,12.055c0.494,0.07,0.993,0.105,1.492,0.105h42.667c5.891,0.06,10.715-4.667,10.774-10.558\r\n c0.005-0.543-0.03-1.086-0.108-1.623l-8.235-57.6C297.788,369.199,309.216,350.82,309.333,330.667z" }), _jsx("g", { children: " " }), " ", _jsx("g", { children: " " }), " ", _jsx("g", { children: " " }), " ", _jsx("g", { children: " " }), " ", _jsx("g", { children: " " }), " ", _jsx("g", { children: " " }), " ", _jsx("g", { children: " " }), " ", _jsx("g", { children: " " }), " ", _jsx("g", { children: " " }), " ", _jsx("g", { children: " " }), " ", _jsx("g", { children: " " }), " ", _jsx("g", { children: " " }), " ", _jsx("g", { children: " " }), " ", _jsx("g", { children: " " }), " ", _jsx("g", { children: " " })] })
59
+ return (_jsxs("svg", { viewBox: "0 0 512 512", height: "1em", width: "1em", ...props, children: [_jsx("path", { fill: "#455A64", d: "M256,0c-76.544,0.094-138.573,62.122-138.667,138.667V224c0,5.891,4.776,10.667,10.667,10.667h42.667\n c5.891,0,10.667-4.776,10.667-10.667v-85.333C181.333,97.429,214.763,64,256,64s74.667,33.429,74.667,74.667V224\n c0,5.891,4.776,10.667,10.667,10.667H384c5.891,0,10.667-4.776,10.667-10.667v-85.333C394.573,62.122,332.544,0.094,256,0z" }), _jsx("path", { fill: "#FFC107", d: "M128,213.333h256c29.455,0,53.333,23.878,53.333,53.333v192C437.333,488.122,413.455,512,384,512H128\n c-29.455,0-53.333-23.878-53.333-53.333v-192C74.667,237.211,98.545,213.333,128,213.333z" }), _jsx("path", { fill: "#455A64", d: "M309.333,330.667c0.124-29.455-23.653-53.434-53.108-53.558\n c-29.455-0.124-53.434,23.653-53.558,53.108c-0.086,20.36,11.427,38.992,29.674,48.023l-8.235,57.6\n c-0.825,5.833,3.235,11.23,9.068,12.055c0.494,0.07,0.993,0.105,1.492,0.105h42.667c5.891,0.06,10.715-4.667,10.774-10.558\n c0.005-0.543-0.03-1.086-0.108-1.623l-8.235-57.6C297.788,369.199,309.216,350.82,309.333,330.667z" }), _jsx("g", { children: " " }), " ", _jsx("g", { children: " " }), " ", _jsx("g", { children: " " }), " ", _jsx("g", { children: " " }), " ", _jsx("g", { children: " " }), " ", _jsx("g", { children: " " }), " ", _jsx("g", { children: " " }), " ", _jsx("g", { children: " " }), " ", _jsx("g", { children: " " }), " ", _jsx("g", { children: " " }), " ", _jsx("g", { children: " " }), " ", _jsx("g", { children: " " }), " ", _jsx("g", { children: " " }), " ", _jsx("g", { children: " " }), " ", _jsx("g", { children: " " })] })
60
60
  // <svg
61
61
  // viewBox="0 0 24 24"
62
62
  // fill="currentColor"
@@ -364,29 +364,29 @@ const ImageViewer = ({ fileBlob, alt = 'Image', className }) => {
364
364
  if (!doc)
365
365
  return;
366
366
  doc.open();
367
- doc.write(`
368
- <html>
369
- <head>
370
- <title>Print Image</title>
371
- <style>
372
- body, html {
373
- margin: 0;
374
- padding: 0;
375
- height: 100%;
376
- display: flex;
377
- justify-content: center;
378
- align-items: center;
379
- }
380
- img {
381
- max-width: 100%;
382
- max-height: 100%;
383
- }
384
- </style>
385
- </head>
386
- <body>
387
- <img src="${dataUrl}" onload="setTimeout(() => { window.print(); window.close(); }, 100);" />
388
- </body>
389
- </html>
367
+ doc.write(`
368
+ <html>
369
+ <head>
370
+ <title>Print Image</title>
371
+ <style>
372
+ body, html {
373
+ margin: 0;
374
+ padding: 0;
375
+ height: 100%;
376
+ display: flex;
377
+ justify-content: center;
378
+ align-items: center;
379
+ }
380
+ img {
381
+ max-width: 100%;
382
+ max-height: 100%;
383
+ }
384
+ </style>
385
+ </head>
386
+ <body>
387
+ <img src="${dataUrl}" onload="setTimeout(() => { window.print(); window.close(); }, 100);" />
388
+ </body>
389
+ </html>
390
390
  `);
391
391
  doc.close();
392
392
  iframe.contentWindow?.addEventListener('afterprint', () => {
@@ -436,11 +436,11 @@ const StyledImage = styled.img.attrs(props => ({
436
436
  style: {
437
437
  transform: `translate(${props.$tx}px, ${props.$ty}px) scale(${props.$scale}) rotate(${props.$rotate}deg)`,
438
438
  },
439
- })) `
440
- display: block;
441
- max-width: none;
442
- max-height: none;
443
- transform-origin: top left;
444
- pointer-events: none;
445
- position: absolute;
439
+ })) `
440
+ display: block;
441
+ max-width: none;
442
+ max-height: none;
443
+ transform-origin: top left;
444
+ pointer-events: none;
445
+ position: absolute;
446
446
  `;