Skip to content

Commit 2928b24

Browse files
committed
refactor createTableCandidates
1 parent 1c3c5b3 commit 2928b24

File tree

3 files changed

+14
-14
lines changed

3 files changed

+14
-14
lines changed

packages/server/src/complete/candidates/createJoinCandidates.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import { getNearestFromTableFromPos } from '../AstUtils'
44
import { Table } from '../../database_libs/AbstractClient'
55
import { toCompletionItemForKeyword } from '../CompletionItemUtils'
66
import { Pos } from '../complete'
7-
import { createTableCandidates } from './createTableCandidates'
7+
import { createCatalogDatabaseAndTableCandidates } from './createTableCandidates'
88

99
export function createJoinCondidates(
1010
ast: SelectStatement,
@@ -18,7 +18,7 @@ export function createJoinCondidates(
1818
const result: CompletionItem[] = []
1919
const fromTable = getNearestFromTableFromPos(ast.from?.tables || [], pos)
2020
if (fromTable && fromTable.type === 'table') {
21-
result.push(...createTableCandidates(tables, token, true))
21+
result.push(...createCatalogDatabaseAndTableCandidates(tables, token, true))
2222
result.push(toCompletionItemForKeyword('INNER JOIN'))
2323
result.push(toCompletionItemForKeyword('LEFT JOIN'))
2424
result.push(toCompletionItemForKeyword('ON'))

packages/server/src/complete/candidates/createTableCandidates.ts

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ function getFullyQualifiedTableName(table: Table): string {
1919
return table.tableName
2020
}
2121

22-
export function createTableCandidates(
22+
export function createCatalogDatabaseAndTableCandidates(
2323
tables: Table[],
2424
lastToken: string,
2525
onFromClause?: boolean
@@ -55,13 +55,11 @@ export function createTableCandidates(
5555
return []
5656
})
5757

58-
const uniqueEntities = [...new Set(qualifiedEntities)]
59-
60-
return uniqueEntities
61-
.map((aTableNameVariant) => {
58+
return qualifiedEntities
59+
.map((databaseEntity) => {
6260
return new Identifier(
6361
lastToken,
64-
aTableNameVariant,
62+
databaseEntity,
6563
'',
6664
ICONS.TABLE,
6765
onFromClause ? 'FROM' : 'OTHERS'

packages/server/src/complete/complete.ts

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ import {
2323
getNearestFromTableFromPos,
2424
} from './AstUtils'
2525
import { createBasicKeywordCandidates } from './candidates/createBasicKeywordCandidates'
26-
import { createTableCandidates } from './candidates/createTableCandidates'
26+
import { createCatalogDatabaseAndTableCandidates } from './candidates/createTableCandidates'
2727
import { createJoinCondidates } from './candidates/createJoinCandidates'
2828
import {
2929
createCandidatesForColumnsOfAnyTable,
@@ -180,11 +180,13 @@ class Completer {
180180
}
181181

182182
addCandidatesForTables(tables: Table[], onFromClause: boolean) {
183-
createTableCandidates(tables, this.lastToken, onFromClause).forEach(
184-
(item) => {
185-
this.addCandidate(item)
186-
}
187-
)
183+
createCatalogDatabaseAndTableCandidates(
184+
tables,
185+
this.lastToken,
186+
onFromClause
187+
).forEach((item) => {
188+
this.addCandidate(item)
189+
})
188190
}
189191

190192
addCandidatesForColumnsOfAnyTable(tables: Table[]) {

0 commit comments

Comments
 (0)