Skip to content

Commit 71035f3

Browse files
committed
refactor createTableCandidates
1 parent 9947610 commit 71035f3

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
@@ -24,7 +24,7 @@ import {
2424
getNearestFromTableFromPos,
2525
} from './AstUtils'
2626
import { createBasicKeywordCandidates } from './candidates/createBasicKeywordCandidates'
27-
import { createTableCandidates } from './candidates/createTableCandidates'
27+
import { createCatalogDatabaseAndTableCandidates } from './candidates/createTableCandidates'
2828
import { createJoinCondidates } from './candidates/createJoinCandidates'
2929
import {
3030
createCandidatesForColumnsOfAnyTable,
@@ -181,11 +181,13 @@ class Completer {
181181
}
182182

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

191193
addCandidatesForColumnsOfAnyTable(tables: Table[]) {

0 commit comments

Comments
 (0)