@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
@@ -3,64 +3,64 @@ import { useEffect, useState } from 'react';
3
3
  import styled, { keyframes } from 'styled-components';
4
4
  import { DataListCacheService, SDK_Localizator } from '@topconsultnpm/sdk-ts';
5
5
  import { SDKUI_Localizator, TMImageLibrary } from '../../helper';
6
- const PickerContainer = styled.div `
7
- display: flex;
8
- flex-direction: column;
9
- gap: 10px;
10
- padding: 5px;
11
- border: 1px solid #ccc;
12
- border-radius: 4px;
6
+ const PickerContainer = styled.div `
7
+ display: flex;
8
+ flex-direction: column;
9
+ gap: 10px;
10
+ padding: 5px;
11
+ border: 1px solid #ccc;
12
+ border-radius: 4px;
13
13
  `;
14
- const ItemsContainer = styled.div `
15
- display: flex;
16
- flex-direction: row;
17
- flex-wrap: nowrap;
18
- gap: 3px;
19
- align-items: center;
20
- overflow-x: auto;
21
- padding: 10px;
14
+ const ItemsContainer = styled.div `
15
+ display: flex;
16
+ flex-direction: row;
17
+ flex-wrap: nowrap;
18
+ gap: 3px;
19
+ align-items: center;
20
+ overflow-x: auto;
21
+ padding: 10px;
22
22
  `;
23
- const slideIn = keyframes `
24
- from {
25
- opacity: 0;
26
- transform: translateX(-50px);
27
- }
28
- to {
29
- opacity: 1;
30
- transform: translateX(0);
31
- }
23
+ const slideIn = keyframes `
24
+ from {
25
+ opacity: 0;
26
+ transform: translateX(-50px);
27
+ }
28
+ to {
29
+ opacity: 1;
30
+ transform: translateX(0);
31
+ }
32
32
  `;
33
- const StatusItem = styled.div `
34
- display: flex;
35
- flex-direction: column;
36
- align-items: center;
37
- justify-content: center;
38
- cursor: pointer;
39
- text-align: center;
40
- font-size: 0.8em;
41
- padding: 5px 10px;
42
- border-radius: 8px;
43
- border: 2px solid transparent;
44
- transition: all 0.2s ease-in-out;
45
- flex-shrink: 0;
46
-
47
- // Aggiungi l'animazione con un ritardo basato sull'indice
48
- animation: ${slideIn} 0.5s ease-out forwards;
49
- animation-delay: ${props => props.$index * 0.1}s;
50
- opacity: 0; // Inizialmente l'elemento è invisibile
51
-
52
- &:hover {
53
- background-color: #f0f0f0;
54
- }
55
-
56
- ${props => props.$isSelected && `
57
- border-color: #007bff;
58
- background-color: #e6f2ff;
59
- `}
33
+ const StatusItem = styled.div `
34
+ display: flex;
35
+ flex-direction: column;
36
+ align-items: center;
37
+ justify-content: center;
38
+ cursor: pointer;
39
+ text-align: center;
40
+ font-size: 0.8em;
41
+ padding: 5px 10px;
42
+ border-radius: 8px;
43
+ border: 2px solid transparent;
44
+ transition: all 0.2s ease-in-out;
45
+ flex-shrink: 0;
46
+
47
+ // Aggiungi l'animazione con un ritardo basato sull'indice
48
+ animation: ${slideIn} 0.5s ease-out forwards;
49
+ animation-delay: ${props => props.$index * 0.1}s;
50
+ opacity: 0; // Inizialmente l'elemento è invisibile
51
+
52
+ &:hover {
53
+ background-color: #f0f0f0;
54
+ }
55
+
56
+ ${props => props.$isSelected && `
57
+ border-color: #007bff;
58
+ background-color: #e6f2ff;
59
+ `}
60
60
  `;
61
- const Label = styled.div `
62
- font-weight: bold;
63
- margin-bottom: 5px;
61
+ const Label = styled.div `
62
+ font-weight: bold;
63
+ margin-bottom: 5px;
64
64
  `;
65
65
  const TMDataListItemPicker = ({ dataListID, selectedValue, onItemSelect }) => {
66
66
  const [dataList, setDataList] = useState(undefined);
@@ -2,32 +2,32 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useEffect, useState } from 'react';
3
3
  import { FontSize, TMColors } from '../../utils/theme';
4
4
  import styled from 'styled-components';
5
- const StyledCheckBoxContainer = styled.div `
6
- display: flex;
7
- flex-direction: ${props => props.$labelPosition === 'right' ? 'row-reverse' : 'row'} ;
8
- justify-content: flex-start;
9
- align-items: center;
10
- width: fit-content;
11
- cursor: ${props => !props.$disabled && 'pointer'};
5
+ const StyledCheckBoxContainer = styled.div `
6
+ display: flex;
7
+ flex-direction: ${props => props.$labelPosition === 'right' ? 'row-reverse' : 'row'} ;
8
+ justify-content: flex-start;
9
+ align-items: center;
10
+ width: fit-content;
11
+ cursor: ${props => !props.$disabled && 'pointer'};
12
12
  `;
13
- const StyledCheckBoxLabel = styled.div `
14
- margin-right: ${props => props.$labelPosition === 'left' ? '5px' : '0'};
15
- margin-left: ${props => props.$labelPosition === 'right' ? '5px' : '0'};
16
- color: ${props => !props.$disabled ? props.$isModifiedWhen ? TMColors.isModified : props.$labelColor ? props.$labelColor : TMColors.text_normal : TMColors.disabled};
17
- font-size: ${props => props.$fontSize};
18
- user-select: none;
19
- &:focus{
20
- outline: none;
21
- background-image: linear-gradient(white, #E4E9F7);
22
- border-bottom: 2px solid;
23
- border-bottom-color: ${props => !props.$isModifiedWhen ? TMColors.primary : TMColors.isModified};
24
- }
13
+ const StyledCheckBoxLabel = styled.div `
14
+ margin-right: ${props => props.$labelPosition === 'left' ? '5px' : '0'};
15
+ margin-left: ${props => props.$labelPosition === 'right' ? '5px' : '0'};
16
+ color: ${props => !props.$disabled ? props.$isModifiedWhen ? TMColors.isModified : props.$labelColor ? props.$labelColor : TMColors.text_normal : TMColors.disabled};
17
+ font-size: ${props => props.$fontSize};
18
+ user-select: none;
19
+ &:focus{
20
+ outline: none;
21
+ background-image: linear-gradient(white, #E4E9F7);
22
+ border-bottom: 2px solid;
23
+ border-bottom-color: ${props => !props.$isModifiedWhen ? TMColors.primary : TMColors.isModified};
24
+ }
25
25
  `;
26
- const StyledCheckbox = styled.input `
27
- accent-color: ${props => !props.$disabled ? props.$isModifiedWhen ? TMColors.isModified : TMColors.primary : TMColors.disabled};
28
- width: 14px;
29
- height: 14px;
30
- cursor: ${props => !props.$disabled && 'pointer'};
26
+ const StyledCheckbox = styled.input `
27
+ accent-color: ${props => !props.$disabled ? props.$isModifiedWhen ? TMColors.isModified : TMColors.primary : TMColors.disabled};
28
+ width: 14px;
29
+ height: 14px;
30
+ cursor: ${props => !props.$disabled && 'pointer'};
31
31
  `;
32
32
  const TMCheckBox = ({ labelColor, isModifiedWhen, elementStyle, disabled = false, label, value, labelPosition = 'right', fontSize = FontSize.defaultFontSize, onValueChanged }) => {
33
33
  const [initialValue, setInitialValue] = useState(value);
@@ -6,53 +6,53 @@ import { StyledEditorContainer, StyledEditorIcon, StyledEditorLabel, TMEditorsDe
6
6
  import TMLayoutContainer, { TMLayoutItem } from "../base/TMLayout";
7
7
  import TMVilViewer from "../base/TMVilViewer";
8
8
  import TMTooltip from "../base/TMTooltip";
9
- const StyledDropDownWrapper = styled.div `
10
- position: relative;
11
- width: ${props => props.$width};
12
- display: flex;
13
- align-items: center;
9
+ const StyledDropDownWrapper = styled.div `
10
+ position: relative;
11
+ width: ${props => props.$width};
12
+ display: flex;
13
+ align-items: center;
14
14
  `;
15
- const StyledDropDown = styled.select `
16
- width: 100%;
17
- padding: 5px 35px 3px 9px; /* padding-right leaves space for buttons + custom arrow */
18
- border: 1px solid;
19
- border-color: ${props => props.$isModified ? TMColors.isModified : TMColors.border_normal};
20
- border-bottom: ${props => (props.$vil.length > 0) ? '3px' : '1px'} solid;
21
- border-bottom-color: ${props => (props.$vil.length === 0) ? !props.$isModified ? TMColors.border_normal : TMColors.isModified : editorColorManager(props.$vil)};
22
- color: ${props => !props.$disabled ? (props.$vil.length === 0 ? (!props.$isModified ? TMColors.text_normal : TMColors.isModified) : editorColorManager(props.$vil)) : TMColors.disabled};
23
- border-radius: ${props => props.$borderRadius ?? TMEditorsDefaultBorderRadius};
24
- font-size: ${props => props.$fontSize};
25
- appearance: none; /* remove native arrow */
26
- background-color: white;
27
-
28
- &:focus {
29
- outline: none;
30
- background-image: linear-gradient(white, #E4E9F7);
31
- border: ${props => props.$isModified ? `1px solid ${TMColors.isModified}` : '1px solid rgb(180,180,180)'};
32
- border-bottom: 2px solid;
33
- border-bottom-color: ${props => (props.$vil.length === 0) ? !props.$isModified ? TMColors.primary : TMColors.isModified : editorColorManager(props.$vil)};
34
- }
15
+ const StyledDropDown = styled.select `
16
+ width: 100%;
17
+ padding: 5px 35px 3px 9px; /* padding-right leaves space for buttons + custom arrow */
18
+ border: 1px solid;
19
+ border-color: ${props => props.$isModified ? TMColors.isModified : TMColors.border_normal};
20
+ border-bottom: ${props => (props.$vil.length > 0) ? '3px' : '1px'} solid;
21
+ border-bottom-color: ${props => (props.$vil.length === 0) ? !props.$isModified ? TMColors.border_normal : TMColors.isModified : editorColorManager(props.$vil)};
22
+ color: ${props => !props.$disabled ? (props.$vil.length === 0 ? (!props.$isModified ? TMColors.text_normal : TMColors.isModified) : editorColorManager(props.$vil)) : TMColors.disabled};
23
+ border-radius: ${props => props.$borderRadius ?? TMEditorsDefaultBorderRadius};
24
+ font-size: ${props => props.$fontSize};
25
+ appearance: none; /* remove native arrow */
26
+ background-color: white;
27
+
28
+ &:focus {
29
+ outline: none;
30
+ background-image: linear-gradient(white, #E4E9F7);
31
+ border: ${props => props.$isModified ? `1px solid ${TMColors.isModified}` : '1px solid rgb(180,180,180)'};
32
+ border-bottom: 2px solid;
33
+ border-bottom-color: ${props => (props.$vil.length === 0) ? !props.$isModified ? TMColors.primary : TMColors.isModified : editorColorManager(props.$vil)};
34
+ }
35
35
  `;
36
- const ButtonsContainer = styled.div `
37
- position: absolute;
38
- right: 20px; /* adjust depending on arrow size */
39
- display: flex;
40
- align-items: center;
41
- gap: 5px; /* spacing between buttons */
36
+ const ButtonsContainer = styled.div `
37
+ position: absolute;
38
+ right: 20px; /* adjust depending on arrow size */
39
+ display: flex;
40
+ align-items: center;
41
+ gap: 5px; /* spacing between buttons */
42
42
  `;
43
- const CustomArrow = styled.div `
44
- position: absolute;
45
- right: 5px;
46
- pointer-events: none;
47
- border-left: 5px solid transparent;
48
- border-right: 5px solid transparent;
49
- border-top: 5px solid ${TMColors.text_normal};
43
+ const CustomArrow = styled.div `
44
+ position: absolute;
45
+ right: 5px;
46
+ pointer-events: none;
47
+ border-left: 5px solid transparent;
48
+ border-right: 5px solid transparent;
49
+ border-top: 5px solid ${TMColors.text_normal};
50
50
  `;
51
- const StyledDropDownEditorButton = styled.div `
52
- color: ${TMColors.button_icon};
53
- display: flex;
54
- align-items: center;
55
- cursor: pointer;
51
+ const StyledDropDownEditorButton = styled.div `
52
+ color: ${TMColors.button_icon};
53
+ display: flex;
54
+ align-items: center;
55
+ cursor: pointer;
56
56
  `;
57
57
  const TMDropDown = ({ validationItems = [], disabled = false, elementStyle, isModifiedWhen, labelPosition = 'left', label, icon, width = '100%', fontSize = FontSize.defaultFontSize, dataSource, value, onValueChanged, buttons = [], }) => {
58
58
  const [isFocused, setIsFocused] = useState(false);
@@ -12,79 +12,79 @@ export const editorColorManager = (validationItems) => {
12
12
  return TMColors.info;
13
13
  return '';
14
14
  };
15
- export const StyledEditorContainer = styled.div `
16
- width: ${props => props.$width};
17
- position: relative;
15
+ export const StyledEditorContainer = styled.div `
16
+ width: ${props => props.$width};
17
+ position: relative;
18
18
  `;
19
- export const StyledEditor = styled.input `
20
- width: ${props => props.$width};
21
- padding: ${props => props.$type === 'password' ? '4px 10px 4px 13px' : props.$type === 'number' ? '4px 4px 5px 13px' : '4px 10px 4px 13px'};
22
- border: 1px solid;
23
- border-color: ${props => props.$isModified ? TMColors.isModified : TMColors.border_normal};
24
- border-bottom: ${props => (props.$vil.length > 0) ? '3px' : '1px'} solid ;
25
- border-bottom-color: ${props => (props.$vil.length === 0) ? !props.$isModified ? TMColors.border_normal : TMColors.isModified : editorColorManager(props.$vil)};
26
- color: ${props => props.readOnly ? '#525252' : !props.$disabled ? (props.$vil.length === 0) ? !props.$isModified ? 'black' : TMColors.isModified : editorColorManager(props.$vil) : TMColors.disabled};
27
- border-radius: ${props => props.$borderRadius ?? TMEditorsDefaultBorderRadius};
28
- min-width: ${props => props.$isMobile && '70px'};
29
- background: ${props => props.readOnly ? 'linear-gradient(white 20%, #d6d6d6 80%)' : 'white'};
30
- &:focus{
31
- outline: none;
32
- background-image: linear-gradient(white, #E4E9F7);
33
- border: ${props => props.$isModified ? `1px solid ${TMColors.isModified}` : '1px solid rgb(180,180,180)'};
34
- border-bottom: 2px solid ;
35
- border-bottom-color: ${props => (props.$vil.length === 0) ? !props.$isModified ? TMColors.primary : TMColors.isModified : editorColorManager(props.$vil)};
36
- }
37
-
38
- font-size: ${props => props.$fontSize};
39
- &::placeholder {
40
- /* color: ${props => (props.$vil.length === 0) ? 'gray' : editorColorManager(props.$vil)}; */
41
- font-size: ${props => props.$fontSize};
42
- }
19
+ export const StyledEditor = styled.input `
20
+ width: ${props => props.$width};
21
+ padding: ${props => props.$type === 'password' ? '4px 10px 4px 13px' : props.$type === 'number' ? '4px 4px 5px 13px' : '4px 10px 4px 13px'};
22
+ border: 1px solid;
23
+ border-color: ${props => props.$isModified ? TMColors.isModified : TMColors.border_normal};
24
+ border-bottom: ${props => (props.$vil.length > 0) ? '3px' : '1px'} solid ;
25
+ border-bottom-color: ${props => (props.$vil.length === 0) ? !props.$isModified ? TMColors.border_normal : TMColors.isModified : editorColorManager(props.$vil)};
26
+ color: ${props => props.readOnly ? '#525252' : !props.$disabled ? (props.$vil.length === 0) ? !props.$isModified ? 'black' : TMColors.isModified : editorColorManager(props.$vil) : TMColors.disabled};
27
+ border-radius: ${props => props.$borderRadius ?? TMEditorsDefaultBorderRadius};
28
+ min-width: ${props => props.$isMobile && '70px'};
29
+ background: ${props => props.readOnly ? 'linear-gradient(white 20%, #d6d6d6 80%)' : 'white'};
30
+ &:focus{
31
+ outline: none;
32
+ background-image: linear-gradient(white, #E4E9F7);
33
+ border: ${props => props.$isModified ? `1px solid ${TMColors.isModified}` : '1px solid rgb(180,180,180)'};
34
+ border-bottom: 2px solid ;
35
+ border-bottom-color: ${props => (props.$vil.length === 0) ? !props.$isModified ? TMColors.primary : TMColors.isModified : editorColorManager(props.$vil)};
36
+ }
37
+
38
+ font-size: ${props => props.$fontSize};
39
+ &::placeholder {
40
+ /* color: ${props => (props.$vil.length === 0) ? 'gray' : editorColorManager(props.$vil)}; */
41
+ font-size: ${props => props.$fontSize};
42
+ }
43
43
  `;
44
- export const StyledEditorIcon = styled.div `
45
- color: ${props => !props.$disabled ? (props.$vil.length === 0) ? !props.$isModified ? 'rgb(80,80,80)' : TMColors.tertiary : editorColorManager(props.$vil) : 'rgb(180,180,180)'};
46
- width: 25px;
47
- height: 25px;
48
- margin-right: 2px;
49
- font-size: 18px;
50
- user-select: none;
51
- transform: translateY(18px);
44
+ export const StyledEditorIcon = styled.div `
45
+ color: ${props => !props.$disabled ? (props.$vil.length === 0) ? !props.$isModified ? 'rgb(80,80,80)' : TMColors.tertiary : editorColorManager(props.$vil) : 'rgb(180,180,180)'};
46
+ width: 25px;
47
+ height: 25px;
48
+ margin-right: 2px;
49
+ font-size: 18px;
50
+ user-select: none;
51
+ transform: translateY(18px);
52
52
  `;
53
- export const StyledEditorLabel = styled.div `
54
- font-size: ${props => props.$fontSize ?? TMEditorsDefaultLabelFontSize} ;
55
- color:${props => !props.$disabled ? props.$isFocused ? TMColors.primary : props.$color ? props.$color : TMColors.label_normal : TMColors.disabled};
56
- padding: 0 3px;
57
- user-select: none;
58
- transform: ${props => props.$labelPosition === 'left' && 'translateY(5px)'};
59
- width: max-content;
60
- transform: translate(10px, 6px);
61
- background-color: ${TMColors.default_background};
62
- position: relative;
63
- z-index: 1;
53
+ export const StyledEditorLabel = styled.div `
54
+ font-size: ${props => props.$fontSize ?? TMEditorsDefaultLabelFontSize} ;
55
+ color:${props => !props.$disabled ? props.$isFocused ? TMColors.primary : props.$color ? props.$color : TMColors.label_normal : TMColors.disabled};
56
+ padding: 0 3px;
57
+ user-select: none;
58
+ transform: ${props => props.$labelPosition === 'left' && 'translateY(5px)'};
59
+ width: max-content;
60
+ transform: translate(10px, 6px);
61
+ background-color: ${TMColors.default_background};
62
+ position: relative;
63
+ z-index: 1;
64
64
  `;
65
- export const StyledTextareaEditor = styled.textarea `
66
- width: ${props => props.$width};
67
- padding: 4px 5px 4px 13px;
68
- border: 1px solid;
69
- border-color: ${props => props.$isModified ? TMColors.isModified : TMColors.border_normal};
70
- border-bottom: ${props => (props.$vil.length > 0) ? '3px' : '1px'} solid;
71
- border-bottom-color: ${props => props.$vil.length === 0 ? !props.$isModified ? TMColors.border_normal : TMColors.isModified : editorColorManager(props.$vil)};
72
- color: ${props => props.readOnly ? '#525252' : !props.$disabled ? (props.$vil.length === 0) ? !props.$isModified ? 'black' : TMColors.isModified : editorColorManager(props.$vil) : TMColors.disabled};
73
- background: ${props => props.readOnly ? 'linear-gradient(white 20%, #d6d6d6 80%)' : 'white'};
74
- border-radius: ${props => props.$borderRadius ?? TMEditorsDefaultBorderRadius}; /* Slightly increased radius for smoother corners */
75
- min-width: ${props => (props.$isMobile ? '70px' : '100%')}; /* Adjust for mobile */
76
- max-height: ${props => props.$maxHeight ?? 'auto'};
77
- resize: ${props => (props.$resize === false ? 'none' : 'both')};
78
- &:focus {
79
- outline: none;
80
- background-image: linear-gradient(white, #E4E9F7);
81
- border: ${props => props.$isModified ? `1px solid ${TMColors.isModified}` : '1px solid rgb(180,180,180)'};
82
- border-bottom: 2px solid;
83
- border-bottom-color: ${props => props.$vil.length === 0 ? !props.$isModified ? TMColors.primary : TMColors.isModified : editorColorManager(props.$vil)};
84
- }
85
- font-size: ${props => props.$fontSize};
86
- &::placeholder {
87
- color: ${props => (props.$vil.length === 0) ? 'gray' : editorColorManager(props.$vil)};
88
- font-size: ${props => props.$fontSize};
89
- }
65
+ export const StyledTextareaEditor = styled.textarea `
66
+ width: ${props => props.$width};
67
+ padding: 4px 5px 4px 13px;
68
+ border: 1px solid;
69
+ border-color: ${props => props.$isModified ? TMColors.isModified : TMColors.border_normal};
70
+ border-bottom: ${props => (props.$vil.length > 0) ? '3px' : '1px'} solid;
71
+ border-bottom-color: ${props => props.$vil.length === 0 ? !props.$isModified ? TMColors.border_normal : TMColors.isModified : editorColorManager(props.$vil)};
72
+ color: ${props => props.readOnly ? '#525252' : !props.$disabled ? (props.$vil.length === 0) ? !props.$isModified ? 'black' : TMColors.isModified : editorColorManager(props.$vil) : TMColors.disabled};
73
+ background: ${props => props.readOnly ? 'linear-gradient(white 20%, #d6d6d6 80%)' : 'white'};
74
+ border-radius: ${props => props.$borderRadius ?? TMEditorsDefaultBorderRadius}; /* Slightly increased radius for smoother corners */
75
+ min-width: ${props => (props.$isMobile ? '70px' : '100%')}; /* Adjust for mobile */
76
+ max-height: ${props => props.$maxHeight ?? 'auto'};
77
+ resize: ${props => (props.$resize === false ? 'none' : 'both')};
78
+ &:focus {
79
+ outline: none;
80
+ background-image: linear-gradient(white, #E4E9F7);
81
+ border: ${props => props.$isModified ? `1px solid ${TMColors.isModified}` : '1px solid rgb(180,180,180)'};
82
+ border-bottom: 2px solid;
83
+ border-bottom-color: ${props => props.$vil.length === 0 ? !props.$isModified ? TMColors.primary : TMColors.isModified : editorColorManager(props.$vil)};
84
+ }
85
+ font-size: ${props => props.$fontSize};
86
+ &::placeholder {
87
+ color: ${props => (props.$vil.length === 0) ? 'gray' : editorColorManager(props.$vil)};
88
+ font-size: ${props => props.$fontSize};
89
+ }
90
90
  `;
@@ -3,22 +3,22 @@ import { useEffect, useState } from 'react';
3
3
  import { UserListCacheService } from '@topconsultnpm/sdk-ts';
4
4
  import styled from 'styled-components';
5
5
  import { TMColors } from '../../utils/theme';
6
- const Wrapper = styled.div `
7
- * {
8
- color: ${(props) => props.$isSelected && '#fff !important'};
9
- }
10
- ul li {
11
- list-style-position: inside;
12
- }
13
- ol li {
14
- list-style-position: inside;
15
- }
16
- .highlight {
17
- background-color: ${(props) => props.$isSelected ? '#6c9023' : 'yellow'};
18
- }
19
- a {
20
- color: ${(props) => (props.$isSelected ? '#fff' : 'rgb(26, 13, 171)')};
21
- }
6
+ const Wrapper = styled.div `
7
+ * {
8
+ color: ${(props) => props.$isSelected && '#fff !important'};
9
+ }
10
+ ul li {
11
+ list-style-position: inside;
12
+ }
13
+ ol li {
14
+ list-style-position: inside;
15
+ }
16
+ .highlight {
17
+ background-color: ${(props) => props.$isSelected ? '#6c9023' : 'yellow'};
18
+ }
19
+ a {
20
+ color: ${(props) => (props.$isSelected ? '#fff' : 'rgb(26, 13, 171)')};
21
+ }
22
22
  `;
23
23
  const convertLinksToAnchors = (markup) => {
24
24
  const urlRegex = /(?<!href=["'])(https?:\/\/[^\s"'<>]+[^\s"'<>.,;:!?)])/g;
@@ -26,40 +26,40 @@ const Portal = ({ children, popoverRef }) => {
26
26
  }, [popoverRef]);
27
27
  return createPortal(children, elRef.current);
28
28
  };
29
- const LocalizedContainer = styled.div `
30
- position: relative;
31
- width: 100%;
29
+ const LocalizedContainer = styled.div `
30
+ position: relative;
31
+ width: 100%;
32
32
  `;
33
- const Popover = styled.div `
34
- display: ${props => props.$isVisible ? 'flex' : 'none'};
35
- flex-direction: column;
36
- position: fixed; /* Usa 'fixed' o 'absolute' a seconda del comportamento desiderato */
37
- top: ${props => props.$top}px;
38
- left: ${props => props.$left}px;
39
- width: ${props => props.$width}px;
40
- border: 1px solid #ccc;
41
- border-radius: 4px;
42
- background-color: #fff;
43
- box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
44
- z-index: 2000;
45
- padding: 8px;
33
+ const Popover = styled.div `
34
+ display: ${props => props.$isVisible ? 'flex' : 'none'};
35
+ flex-direction: column;
36
+ position: fixed; /* Usa 'fixed' o 'absolute' a seconda del comportamento desiderato */
37
+ top: ${props => props.$top}px;
38
+ left: ${props => props.$left}px;
39
+ width: ${props => props.$width}px;
40
+ border: 1px solid #ccc;
41
+ border-radius: 4px;
42
+ background-color: #fff;
43
+ box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
44
+ z-index: 2000;
45
+ padding: 8px;
46
46
  `;
47
- const Badge = styled.span `
48
- position: absolute;
49
- top: -8px;
50
- right: -8px;
51
- background-color: #ff9800;
52
- color: white;
53
- border-radius: 50%;
54
- padding: 2px 6px;
55
- font-size: 10px;
56
- font-weight: bold;
57
- pointer-events: none;
47
+ const Badge = styled.span `
48
+ position: absolute;
49
+ top: -8px;
50
+ right: -8px;
51
+ background-color: #ff9800;
52
+ color: white;
53
+ border-radius: 50%;
54
+ padding: 2px 6px;
55
+ font-size: 10px;
56
+ font-weight: bold;
57
+ pointer-events: none;
58
58
  `;
59
- const IconContainer = styled.div `
60
- position: relative;
61
- display: flex;
62
- align-items: center;
59
+ const IconContainer = styled.div `
60
+ position: relative;
61
+ display: flex;
62
+ align-items: center;
63
63
  `;
64
64
  // Helper function to get image path
65
65
  export const getCultureIDImg = (cultureID) => {
@@ -508,23 +508,23 @@ const TMMetadataValues = ({ showCheckBoxes = ShowCheckBoxesMode.Never, checkPerm
508
508
  };
509
509
  export default TMMetadataValues;
510
510
  //#region Styled Components
511
- const StyledMetadataValuesContainer = styled.div `
512
- display: flex;
513
- flex-direction: column;
514
- width: 100%;
515
- height: 100%;
516
- overflow: auto;
517
- padding: 0 10px 10px 10px;
511
+ const StyledMetadataValuesContainer = styled.div `
512
+ display: flex;
513
+ flex-direction: column;
514
+ width: 100%;
515
+ height: 100%;
516
+ overflow: auto;
517
+ padding: 0 10px 10px 10px;
518
518
  `;
519
- const StyledRow = styled.div `
520
- display: flex;
521
- flex-direction: row;
522
- width: 100%;
523
- gap: 5px;
519
+ const StyledRow = styled.div `
520
+ display: flex;
521
+ flex-direction: row;
522
+ width: 100%;
523
+ gap: 5px;
524
524
  `;
525
- const StyledSeparator = styled.hr `
526
- width: 100%;
527
- margin: 10px 0;
528
- border: none;
529
- border-top: 1px solid #e0e0e0;
525
+ const StyledSeparator = styled.hr `
526
+ width: 100%;
527
+ margin: 10px 0;
528
+ border: none;
529
+ border-top: 1px solid #e0e0e0;
530
530
  `;