flink-sql-language-server
TypeScript icon, indicating that this package has built-in type declarations

0.6.0 • Public • Published

Flink SQL Language Server

flink version npm version weekly downloads

A browser language server (LSP) for Apache Flink SQL, in addition to a simple vscode extension.

The language features are mainly implemented by Antlr4ts.

Functionality

This Language Server works for Flink SQL file. It has the following language features:

  • Completions
  • Diagnostics regenerated on each file change or configuration change
  • Rename
  • References
  • FoldingRanges
  • Hover
  • DocumentFormatting
  • CodeAction: QuickFix
  • Custom Command
    • extract SQL structure
    • register schemas: auto-completion will include registered schemas
import { EXTRACT_SQL_STRUCTURE } from 'flink-sql-language-server/out-tsc/constants';

// structure would be undefined if uri is invalid
const structure = await commands.executeCommand<StructureResult>(
  EXTRACT_SQL_STRUCTURE,
  window.activeTextEditor.document.uri.toString()
);

if (structure) {
  // Do something
}

await commands.executeCommand<void>('extension.flinkSQL.registerSchemas', {
  catalogs: [{ kind: 'catalog', label: 'testCatalog' }],
  databases: [{ kind: 'database', catalog: 'testCatalog', label: 'testDatabase' }],
  tables: [{ kind: 'table', catalog: 'testCatalog', database: 'testDatabase', label: 'testTable' }]
});

Package Sidebar

Install

npm i flink-sql-language-server

Weekly Downloads

15

Version

0.6.0

License

MIT

Unpacked Size

8.47 MB

Total Files

65

Last publish

Collaborators

  • laffery
  • junhany