Skip to content

Commit bd20875

Browse files
committed
* #RI-5095 - [FE] Scrollbar is displayed for "No keys" panel in tree view when clicked
* #RI-5096 - [FE] Delete popup moved at the top left corner when hovering on the key below in list and delete popup opened * #RI-5097 - [FE] Multiple tooltips can be displayed at the same time when hovering over different namespaces after scrolling * #RI-5098 - [FE] Key details are opened for the key in tree view automatically when it wasn't opened in list view * #RI-5100 - [FE] Namespaces folders collapsed after refresh
1 parent 2999ab8 commit bd20875

File tree

7 files changed

+40
-62
lines changed

7 files changed

+40
-62
lines changed

redisinsight/ui/src/pages/browser/components/keys-header/KeysHeader.tsx

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,6 @@ const KeysHeader = (props: Props) => {
117117
}
118118

119119
const handleRefreshKeys = () => {
120-
dispatch(resetBrowserTree())
121120
dispatch(fetchKeys(
122121
{
123122
searchMode,

redisinsight/ui/src/pages/browser/components/no-keys-found/styles.module.scss

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
.container {
22
max-width: 400px;
3+
min-height: 440px;
34

45
margin: auto;
56
text-align: center;

redisinsight/ui/src/pages/browser/components/virtual-tree/VirtualTree.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -187,6 +187,7 @@ const VirtualTree = (props: Props) => {
187187
size: node.size,
188188
type: node.type,
189189
fullName: node.fullName,
190+
shortName: node.nameString?.split(delimiter).pop(),
190191
nestingLevel,
191192
deleting,
192193
path: node.path,

redisinsight/ui/src/pages/browser/components/virtual-tree/components/Node/Node.tsx

Lines changed: 31 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ const Node = ({
4141
path,
4242
type,
4343
ttl,
44+
shortName,
4445
size,
4546
deleting,
4647
nameString,
@@ -64,12 +65,6 @@ const Node = ({
6465
}
6566
}, [])
6667

67-
useEffect(() => {
68-
if (isSelected && nameBuffer) {
69-
updateStatusSelected?.(nameBuffer)
70-
}
71-
}, [isSelected])
72-
7368
const handleClick = () => {
7469
if (isLeaf && !isSelected) {
7570
updateStatusSelected?.(nameBuffer)
@@ -98,35 +93,41 @@ const Node = ({
9893
}
9994

10095
const Folder = () => (
101-
<>
102-
<div className={styles.nodeName}>
103-
<EuiIcon
104-
type={isOpen ? 'arrowDown' : 'arrowRight'}
105-
className={cx(styles.nodeIcon, styles.nodeIconArrow)}
106-
data-test-subj={`node-arrow-icon_${fullName}`}
107-
/>
108-
<EuiIcon
109-
type={isOpen ? 'folderOpen' : 'folderClosed'}
110-
className={styles.nodeIcon}
111-
data-test-subj={`node-folder-icon_${fullName}`}
112-
/>
113-
<span className="truncateText" data-testid={`folder-${nameString}`}>
114-
{nameString}
115-
</span>
116-
</div>
117-
<div className={styles.options}>
118-
<div className={styles.approximate} data-testid={`percentage_${fullName}`}>
119-
{keyApproximate ? `${keyApproximate < 1 ? '<1' : Math.round(keyApproximate)}%` : '' }
96+
<EuiToolTip
97+
content={tooltipContent}
98+
position="bottom"
99+
anchorClassName={styles.anchorTooltipNode}
100+
>
101+
<>
102+
<div className={styles.nodeName}>
103+
<EuiIcon
104+
type={isOpen ? 'arrowDown' : 'arrowRight'}
105+
className={cx(styles.nodeIcon, styles.nodeIconArrow)}
106+
data-test-subj={`node-arrow-icon_${fullName}`}
107+
/>
108+
<EuiIcon
109+
type={isOpen ? 'folderOpen' : 'folderClosed'}
110+
className={styles.nodeIcon}
111+
data-test-subj={`node-folder-icon_${fullName}`}
112+
/>
113+
<span className="truncateText" data-testid={`folder-${nameString}`}>
114+
{nameString}
115+
</span>
120116
</div>
121-
<div className={styles.keyCount} data-testid={`count_${fullName}`}>{keyCount ?? ''}</div>
122-
</div>
123-
</>
117+
<div className={styles.options}>
118+
<div className={styles.approximate} data-testid={`percentage_${fullName}`}>
119+
{keyApproximate ? `${keyApproximate < 1 ? '<1' : Math.round(keyApproximate)}%` : '' }
120+
</div>
121+
<div className={styles.keyCount} data-testid={`count_${fullName}`}>{keyCount ?? ''}</div>
122+
</div>
123+
</>
124+
</EuiToolTip>
124125
)
125126

126127
const Leaf = () => (
127128
<>
128129
<KeyRowType type={type} nameString={nameString} />
129-
<KeyRowName nameString={nameString} />
130+
<KeyRowName nameString={shortName} />
130131
<KeyRowTTL ttl={ttl} nameString={nameString} deletePopoverId={deletePopoverId} rowId={nodeId} />
131132
<KeyRowSize
132133
size={size}
@@ -181,16 +182,7 @@ const Node = ({
181182
}
182183
)}
183184
>
184-
{isLeaf && Node}
185-
{!isLeaf && (
186-
<EuiToolTip
187-
content={tooltipContent}
188-
position="bottom"
189-
anchorClassName={styles.anchorTooltipNode}
190-
>
191-
{Node}
192-
</EuiToolTip>
193-
)}
185+
{Node}
194186
</div>
195187
)
196188
}

redisinsight/ui/src/pages/browser/components/virtual-tree/components/Node/styles.module.scss

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
.anchorTooltipNode {
22
width: 100%;
33
height: 42px;
4-
display: inline-block;
4+
display: flex !important;
55
position: relative;
6+
align-items: center;
67
}
78

89
.nodeContainer {
@@ -39,13 +40,13 @@
3940

4041
:global(.moveOnHoverKey) {
4142
transition: transform ease 0.3s;
42-
&.hide {
43+
&:global(.hide) {
4344
transform: translateX(-8px);
4445
}
4546
}
4647
:global(.showOnHoverKey) {
4748
display: none !important;
48-
&.show {
49+
&:global(.show) {
4950
display: flex !important;
5051
}
5152
}

redisinsight/ui/src/pages/browser/components/virtual-tree/interfaces.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ export interface TreeData extends FixedSizeNodeData {
4242
keyCount: number
4343
keyApproximate: number
4444
fullName: string
45+
shortName?: string
4546
leafIcon: string
4647
type: KeyTypes | ModulesKeyTypes
4748
ttl: number

yarn.lock

Lines changed: 2 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -11797,22 +11797,14 @@ postcss-reduce-transforms@^5.1.0:
1179711797
dependencies:
1179811798
postcss-value-parser "^4.2.0"
1179911799

11800-
postcss-selector-parser@^6.0.2:
11800+
postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4, postcss-selector-parser@^6.0.5, postcss-selector-parser@^6.0.9:
1180111801
version "6.0.13"
1180211802
resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz#d05d8d76b1e8e173257ef9d60b706a8e5e99bf1b"
1180311803
integrity sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==
1180411804
dependencies:
1180511805
cssesc "^3.0.0"
1180611806
util-deprecate "^1.0.2"
1180711807

11808-
postcss-selector-parser@^6.0.4, postcss-selector-parser@^6.0.5, postcss-selector-parser@^6.0.9:
11809-
version "6.0.11"
11810-
resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz#2e41dc39b7ad74046e1615185185cd0b17d0c8dc"
11811-
integrity sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==
11812-
dependencies:
11813-
cssesc "^3.0.0"
11814-
util-deprecate "^1.0.2"
11815-
1181611808
postcss-svgo@^5.1.0:
1181711809
version "5.1.0"
1181811810
resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-5.1.0.tgz#0a317400ced789f233a28826e77523f15857d80d"
@@ -11833,7 +11825,7 @@ postcss-value-parser@^4.1.0, postcss-value-parser@^4.2.0:
1183311825
resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514"
1183411826
integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==
1183511827

11836-
postcss@^8.2.15:
11828+
postcss@^8.2.15, postcss@^8.2.9:
1183711829
version "8.4.31"
1183811830
resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.31.tgz#92b451050a9f914da6755af352bdc0192508656d"
1183911831
integrity sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==
@@ -11842,15 +11834,6 @@ postcss@^8.2.15:
1184211834
picocolors "^1.0.0"
1184311835
source-map-js "^1.0.2"
1184411836

11845-
postcss@^8.2.9:
11846-
version "8.4.23"
11847-
resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.23.tgz#df0aee9ac7c5e53e1075c24a3613496f9e6552ab"
11848-
integrity sha512-bQ3qMcpF6A/YjR55xtoTr0jGOlnPOKAIMdOWiv0EIT6HVPEaJiJB4NLljSbiHoC2RX7DN5Uvjtpbg1NPdwv1oA==
11849-
dependencies:
11850-
nanoid "^3.3.6"
11851-
picocolors "^1.0.0"
11852-
source-map-js "^1.0.2"
11853-
1185411837
postinstall-postinstall@^2.1.0:
1185511838
version "2.1.0"
1185611839
resolved "https://registry.yarnpkg.com/postinstall-postinstall/-/postinstall-postinstall-2.1.0.tgz#4f7f77441ef539d1512c40bd04c71b06a4704ca3"

0 commit comments

Comments
 (0)