monaco-sql-languages
Advanced tools
Comparing version 0.12.0-beta.9 to 0.12.0-beta.10
@@ -95,17 +95,12 @@ var __assign = (this && this.__assign) || function () { | ||
} | ||
/** | ||
* TODO: diag is actually a type ParseError | ||
* @see {@link ParseError} | ||
*/ | ||
function toDiagnostics(resource, diag) { | ||
var code = typeof diag.code === 'number' ? String(diag.code) : diag.code; | ||
return { | ||
severity: toSeverity(diag.severity), | ||
severity: toSeverity(), | ||
startLineNumber: diag.startLine, | ||
startColumn: diag.startCol + 1, | ||
startColumn: diag.startColumn, | ||
endLineNumber: diag.endLine, | ||
endColumn: diag.endCol + 1, | ||
endColumn: diag.endColumn, | ||
message: diag.message, | ||
code: code, | ||
source: diag.source | ||
code: undefined, | ||
source: 'dt-sql-parser' | ||
}; | ||
@@ -112,0 +107,0 @@ } |
@@ -79,5 +79,10 @@ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { | ||
// The following languages are not support codeCompletion now. | ||
[constants_1.LanguageIdEnum.PG, constants_1.LanguageIdEnum.PL, constants_1.LanguageIdEnum.SQL].includes(languageId)) { | ||
[constants_1.LanguageIdEnum.PL].includes(languageId)) { | ||
finalConfiguration.completionItems = false; | ||
} | ||
if ( | ||
// The following languages are not support diagnostics now. | ||
[constants_1.LanguageIdEnum.SQL].includes(languageId)) { | ||
finalConfiguration.diagnostics = false; | ||
} | ||
// save current configurationMap | ||
@@ -84,0 +89,0 @@ configurationMap.set(languageId, finalConfiguration); |
@@ -79,17 +79,12 @@ import { editor, MarkerSeverity, Range, languages } from './fillers/monaco-editor-core'; | ||
} | ||
/** | ||
* TODO: diag is actually a type ParseError | ||
* @see {@link ParseError} | ||
*/ | ||
function toDiagnostics(resource, diag) { | ||
let code = typeof diag.code === 'number' ? String(diag.code) : diag.code; | ||
return { | ||
severity: toSeverity(diag.severity), | ||
severity: toSeverity(), | ||
startLineNumber: diag.startLine, | ||
startColumn: diag.startCol + 1, | ||
startColumn: diag.startColumn, | ||
endLineNumber: diag.endLine, | ||
endColumn: diag.endCol + 1, | ||
endColumn: diag.endColumn, | ||
message: diag.message, | ||
code: code, | ||
source: diag.source | ||
code: undefined, | ||
source: 'dt-sql-parser' | ||
}; | ||
@@ -96,0 +91,0 @@ } |
@@ -54,5 +54,10 @@ var __rest = (this && this.__rest) || function (s, e) { | ||
// The following languages are not support codeCompletion now. | ||
[LanguageIdEnum.PG, LanguageIdEnum.PL, LanguageIdEnum.SQL].includes(languageId)) { | ||
[LanguageIdEnum.PL].includes(languageId)) { | ||
finalConfiguration.completionItems = false; | ||
} | ||
if ( | ||
// The following languages are not support diagnostics now. | ||
[LanguageIdEnum.SQL].includes(languageId)) { | ||
finalConfiguration.diagnostics = false; | ||
} | ||
// save current configurationMap | ||
@@ -59,0 +64,0 @@ configurationMap.set(languageId, finalConfiguration); |
{ | ||
"name": "monaco-sql-languages", | ||
"version": "0.12.0-beta.9", | ||
"version": "0.12.0-beta.10", | ||
"description": "SQL languages for the Monaco Editor, based on monaco-languages.", | ||
@@ -63,3 +63,3 @@ "scripts": { | ||
"dependencies": { | ||
"dt-sql-parser": "4.0.0-beta.4.9" | ||
"dt-sql-parser": "4.0.0-beta.4.11" | ||
}, | ||
@@ -66,0 +66,0 @@ "peerDependencies": { |
215
README.md
@@ -55,3 +55,3 @@ # Monaco SQL Languages | ||
```shell | ||
```bash | ||
npm install monaco-sql-languages | ||
@@ -66,152 +66,5 @@ ``` | ||
- [Integrating the ESM version](https://github.com/microsoft/monaco-editor/blob/main/docs/integrate-esm.md) | ||
- [Integrating the AMD version](https://github.com/microsoft/monaco-editor/blob/main/docs/integrate-amd.md#integrating-the-amd-version-of-the-monaco-editor) | ||
- [Integrating the ESM version of Monaco SQL Languages](./documents/integrate-esm.md) | ||
- [Solving the problem of integrating](./documents/problem-solving.md) | ||
### Using the Monaco Editor Webpack Plugin | ||
- Install Monaco Editor Webpack Plugin | ||
```shell | ||
npm install monaco-editor-webpack-plugin | ||
``` | ||
- Apply Monaco Editor Webpack Plugin in webpack config | ||
```typescript | ||
const MonacoWebpackPlugin = require('monaco-editor-webpack-plugin'); | ||
const path = require('path'); | ||
const monacoWebpackPlugin = new MonacoWebpackPlugin({ | ||
features: [], // Include only a subset of the editor features | ||
languages: [], // Include only a subset of the monaco built-in languages | ||
customLanguages: [ | ||
// Include languages that provides by Monaco SQL Languages | ||
{ | ||
label: 'mysql', | ||
entry: 'monaco-sql-languages/out/esm/mysql/mysql.contribution', | ||
worker: { | ||
id: 'monaco-sql-languages/out/esm/mysql/mySQLWorker', | ||
entry: 'monaco-sql-languages/out/esm/mysql/mysql.worker' | ||
} | ||
}, | ||
{ | ||
label: 'flinksql', | ||
entry: 'monaco-sql-languages/out/esm/flinksql/flinksql.contribution', | ||
worker: { | ||
id: 'monaco-sql-languages/out/esm/flinksql/flinkSQLWorker', | ||
entry: 'monaco-sql-languages/out/esm/flinksql/flinksql.worker' | ||
} | ||
}, | ||
{ | ||
label: 'sparksql', | ||
entry: 'monaco-sql-languages/out/esm/sparksql/sparksql.contribution', | ||
worker: { | ||
id: 'monaco-sql-languages/out/esm/sparksql/sparkSQLWorker', | ||
entry: 'monaco-sql-languages/out/esm/sparksql/sparksql.worker' | ||
} | ||
}, | ||
{ | ||
label: 'hivesql', | ||
entry: 'monaco-sql-languages/out/esm/hivesql/hivesql.contribution', | ||
worker: { | ||
id: 'monaco-sql-languages/out/esm/hivesql/hiveSQLWorker', | ||
entry: 'monaco-sql-languages/out/esm/hivesql/hivesql.worker' | ||
} | ||
}, | ||
{ | ||
label: 'trinosql', | ||
entry: 'monaco-sql-languages/out/esm/trinosql/trinosql.contribution', | ||
worker: { | ||
id: 'monaco-sql-languages/out/esm/trinosql/TrinoSQLWorker', | ||
entry: 'monaco-sql-languages/out/esm/trinosql/trinosql.worker' | ||
} | ||
}, | ||
{ | ||
label: 'pgsql', | ||
entry: 'monaco-sql-languages/out/esm/pgsql/pgsql.contribution', | ||
worker: { | ||
id: 'monaco-sql-languages/out/esm/pgsql/PgSQLWorker', | ||
entry: 'monaco-sql-languages/out/esm/pgsql/pgsql.worker' | ||
} | ||
}, | ||
{ | ||
label: 'impalasql', | ||
entry: 'monaco-sql-languages/out/esm/impalasql/impalasql.contribution', | ||
worker: { | ||
id: 'monaco-sql-languages/out/esm/impalasql/impalaSQLWorker', | ||
entry: 'monaco-sql-languages/out/esm/impalasql/impalasql.worker' | ||
} | ||
} | ||
] | ||
}); | ||
module.exports = { | ||
entry: './index.js', | ||
output: { | ||
path: path.resolve(__dirname, 'dist'), | ||
filename: 'app.js' | ||
}, | ||
module: {}, | ||
plugins: [monacoEditorPlugin] // Apply monacoWebpackPlugin | ||
}; | ||
``` | ||
More options of Monaco Editor Webpack Plugin, see [here](https://github.com/microsoft/monaco-editor/tree/main/webpack-plugin#options). | ||
### Using Plain Webpack | ||
Output worker files via webpack entries. | ||
```typescript | ||
entry: { | ||
'mysql.worker': 'monaco-sql-languages/out/esm/mysql/mysql.worker.js', | ||
'flinksql.worker': 'monaco-sql-languages/out/esm/flinksql/flinksql.worker.js', | ||
'sparksql.worker': 'monaco-sql-languages/out/esm/sparksql/sparksql.worker.js', | ||
'hivesql.worker': 'monaco-sql-languages/out/esm/hivesql/hivesql.worker.js', | ||
'trinosql.worker': 'monaco-sql-languages/out/esm/trinosql/trinosql.worker.js', | ||
'pgsql.worker': 'monaco-sql-languages/out/esm/pgsql/pgsql.worker.js', | ||
'impalasql.worker': 'monaco-sql-languages/out/esm/impalasql/impalasql.worker.js', | ||
'editor.worker': 'monaco-editor/esm/vs/editor/editor.worker.js', | ||
}, | ||
``` | ||
Define the global variable `MonacoEnvironment` and specify the path of the worker file | ||
```typescript | ||
window.MonacoEnvironment = { | ||
getWorkerUrl: function (moduleId, label) { | ||
switch (label) { | ||
case 'mysql': { | ||
return './mysql.worker.js'; | ||
} | ||
case 'sparksql': { | ||
return './sparksql.worker.js'; | ||
} | ||
case 'flinksql': { | ||
return './flinksql.worker.js'; | ||
} | ||
case 'hivesql': { | ||
return './hivesql.worker.js'; | ||
} | ||
case 'trinosql': { | ||
return './trinosql.worker.js'; | ||
} | ||
case 'pgsql': { | ||
return './pgsql.worker.js'; | ||
} | ||
case 'impalasql': { | ||
return './impalasql.worker.js' | ||
} | ||
default: { | ||
return './editor.worker.js'; | ||
} | ||
} | ||
} | ||
}; | ||
``` | ||
### Using Vite | ||
Vite example see <https://github.com/DTStack/monaco-sql-languages/blob/main/website/src/languageWorker.ts> | ||
<br/> | ||
@@ -222,11 +75,11 @@ | ||
1. **Import language contributions** | ||
> Tips: If integrated via MonacoEditorWebpackPlugin, it will help us to import contribution files automatically. Otherwise, you need to import the contribution files manually. | ||
> Tips: If integrated via MonacoEditorWebpackPlugin, it will help us to import contribution files automatically. Otherwise, you need to import the contribution files manually. | ||
```typescript | ||
import 'monaco-sql-languages/out/esm/mysql/mysql.contribution'; | ||
import 'monaco-sql-languages/out/esm/flinksql/flinksql.contribution'; | ||
import 'monaco-sql-languages/out/esm/sparksql/sparksql.contribution'; | ||
import 'monaco-sql-languages/out/esm/hivesql/hivesql.contribution'; | ||
import 'monaco-sql-languages/out/esm/trinosql/trinosql.contribution'; | ||
import 'monaco-sql-languages/out/esm/impalasql/impalasql.contribution'; | ||
import 'monaco-sql-languages/out/esm/flinksql/flinksql.contribution'; | ||
import 'monaco-sql-languages/out/esm/sparksql/sparksql.contribution'; | ||
import 'monaco-sql-languages/out/esm/hivesql/hivesql.contribution'; | ||
import 'monaco-sql-languages/out/esm/trinosql/trinosql.contribution'; | ||
import 'monaco-sql-languages/out/esm/impalasql/impalasql.contribution'; | ||
import 'monaco-sql-languages/out/esm/pgsql/pgsql.contribution'; | ||
@@ -240,16 +93,16 @@ | ||
You can setup language features via `setupLanguageFeatures`. For example, disable code completion feature of flinkSQL language. | ||
```typescript | ||
import { | ||
setupLanguageFeatures, | ||
LanguageIdEnum, | ||
} from 'monaco-sql-languages'; | ||
You can setup language features via `setupLanguageFeatures`. For example, disable code completion feature of flinkSQL language. | ||
```typescript | ||
import { | ||
setupLanguageFeatures, | ||
LanguageIdEnum, | ||
} from 'monaco-sql-languages'; | ||
setupLanguageFeatures({ | ||
languageId: LanguageIdEnum.FLINK, | ||
completionItems: false | ||
}) | ||
``` | ||
setupLanguageFeatures({ | ||
languageId: LanguageIdEnum.FLINK, | ||
completionItems: false | ||
}) | ||
``` | ||
By default, MonacoSQLLanguages only provides keyword autocompletion, and you can customize your completionItem list via `completionService`. | ||
By default, Monaco SQL Languages only provides keyword autocompletion, and you can customize your completionItem list via `completionService`. | ||
@@ -259,8 +112,8 @@ ```typescript | ||
import { | ||
setupLanguageFeatures, | ||
LanguageIdEnum, | ||
CompletionService, | ||
ICompletionItem, | ||
SyntaxContextType | ||
} from 'monaco-sql-languages'; | ||
setupLanguageFeatures, | ||
LanguageIdEnum, | ||
CompletionService, | ||
ICompletionItem, | ||
SyntaxContextType | ||
} from 'monaco-sql-languages'; | ||
@@ -303,5 +156,5 @@ const completionService: CompletionService = function ( | ||
setupLanguageFeatures({ | ||
languageId: LanguageIdEnum.FLINK, | ||
completionService: completionService, | ||
}) | ||
languageId: LanguageIdEnum.FLINK, | ||
completionService: completionService, | ||
}) | ||
``` | ||
@@ -380,3 +233,3 @@ | ||
```shell | ||
```bash | ||
pnpm install | ||
@@ -387,3 +240,3 @@ ``` | ||
```shell | ||
```bash | ||
pnpm watch-esm | ||
@@ -397,3 +250,3 @@ cd website | ||
```shell | ||
```bash | ||
pnpm compile | ||
@@ -414,4 +267,6 @@ ``` | ||
<br/> | ||
## License | ||
[MIT](https://github.com/Microsoft/monaco-languages/blob/master/LICENSE.md) |
825031
263
+ Addeddt-sql-parser@4.0.0-beta.4.11(transitive)
- Removeddt-sql-parser@4.0.0-beta.4.9(transitive)