Skip to content

Commit 7c107dc

Browse files
authored
Merge pull request #1197 from RedisInsight/fe/bugfix/RI-3371_user_cannot_open_Workbench
#RI-3371 - User cannot open Workbench
2 parents ee7ab37 + 6367d46 commit 7c107dc

File tree

4 files changed

+19
-10
lines changed

4 files changed

+19
-10
lines changed

redisinsight/ui/src/components/query-card/QueryCard.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ const QueryCard = (props: Props) => {
8181
const [viewTypeSelected, setViewTypeSelected] = useState<WBQueryType>(queryType)
8282
const [summaryText, setSummaryText] = useState<string>('')
8383
const [selectedViewValue, setSelectedViewValue] = useState<string>(
84-
getDefaultPlugin(visualizations, command) || queryType
84+
getDefaultPlugin(visualizations, command || '') || queryType
8585
)
8686

8787
const dispatch = useDispatch()

redisinsight/ui/src/components/query-card/QueryCardTooltip/QueryCardTooltip.spec.tsx

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import React from 'react'
22
import { instance, mock } from 'ts-mockito'
3+
import { EMPTY_COMMAND } from 'uiSrc/constants'
34
import { render } from 'uiSrc/utils/test-utils'
45
import QueryCardTooltip, { Props } from './QueryCardTooltip'
56

@@ -9,4 +10,12 @@ describe('QueryCardTooltip', () => {
910
it('should render', () => {
1011
expect(render(<QueryCardTooltip {...instance(mockedProps)} />)).toBeTruthy()
1112
})
13+
14+
it(`should show ${EMPTY_COMMAND} if command=null and summary=`, () => {
15+
const { queryByTestId } = render(
16+
<QueryCardTooltip {...instance(mockedProps)} query={null} summary={null} />
17+
)
18+
19+
expect(queryByTestId('query-card-tooltip-anchor')).toHaveTextContent(EMPTY_COMMAND)
20+
})
1221
})

redisinsight/ui/src/components/query-card/QueryCardTooltip/QueryCardTooltip.tsx

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,13 @@ import { EuiToolTip } from '@elastic/eui'
33
import { take } from 'lodash'
44
import cx from 'classnames'
55

6-
import { truncateText } from 'uiSrc/utils'
6+
import { Nullable, truncateText } from 'uiSrc/utils'
7+
import { EMPTY_COMMAND } from 'uiSrc/constants'
78
import styles from './styles.module.scss'
89

910
export interface Props {
10-
query: string
11-
summary?: string
11+
query: Nullable<string>
12+
summary?: Nullable<string>
1213
maxLinesNumber?: number
1314
}
1415

@@ -19,10 +20,9 @@ interface IQueryLine {
1920
}
2021

2122
const QueryCardTooltip = (props: Props) => {
22-
const { query = '', maxLinesNumber = 20, summary } = props
23+
const { query = '', maxLinesNumber = 20, summary = '' } = props
2324

24-
let queryLines: IQueryLine[] = query
25-
.split('\n')
25+
let queryLines: IQueryLine[] = (query || EMPTY_COMMAND).split('\n')
2626
.map((query: string, i) => ({
2727
value: truncateText(query, 497, '...'),
2828
index: i
@@ -56,7 +56,7 @@ const QueryCardTooltip = (props: Props) => {
5656
content={<>{contentItems}</>}
5757
position="bottom"
5858
>
59-
<span>{summary || query}</span>
59+
<span data-testid="query-card-tooltip-anchor">{summary || query || EMPTY_COMMAND}</span>
6060
</EuiToolTip>
6161
)
6262
}

redisinsight/ui/src/utils/plugins.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
import { IPluginVisualization } from 'uiSrc/slices/interfaces'
22
import { getBaseApiUrl } from 'uiSrc/utils/common'
33

4-
export const getVisualizationsByCommand = (query: string, visualizations: IPluginVisualization[]) =>
4+
export const getVisualizationsByCommand = (query: string = '', visualizations: IPluginVisualization[]) =>
55
visualizations.filter((visualization: IPluginVisualization) =>
66
visualization.matchCommands.some((matchCommand) =>
7-
query.startsWith(matchCommand) || (new RegExp(`^${matchCommand}`, 'i')).test(query)))
7+
query?.startsWith(matchCommand) || (new RegExp(`^${matchCommand}`, 'i')).test(query)))
88

99
export const urlForAsset = (basePluginUrl: string, path: string) => {
1010
const baseApiUrl = getBaseApiUrl()

0 commit comments

Comments
 (0)