diff --git a/frontend/src/lib/components/triggers/postgres/RelationPicker.svelte b/frontend/src/lib/components/triggers/postgres/RelationPicker.svelte
index c7079edd9b..42b1944720 100644
--- a/frontend/src/lib/components/triggers/postgres/RelationPicker.svelte
+++ b/frontend/src/lib/components/triggers/postgres/RelationPicker.svelte
@@ -128,19 +128,19 @@
selected={table_to_track.columns_name ?? []}
placeholder="Select columns"
--sms-options-margin="4px"
- on:change={(e) => {
- const option = e.detail.option?.toString()
- if (e.detail.type === 'add') {
+ onchange={(e) => {
+ const option = e.option?.toString()
+ if (e.type === 'add') {
option && table_to_track.columns_name?.push(option)
- } else if (e.detail.type === 'remove') {
+ } else if (e.type === 'remove') {
table_to_track.columns_name = table_to_track.columns_name?.filter(
(column) => column !== option
)
- } else if (e.detail.type === 'removeAll') {
+ } else if (e.type === 'removeAll') {
table_to_track.columns_name = []
} else {
console.error(
- `Priority tags multiselect - unknown event type: '${e.detail.type}'`
+ `Priority tags multiselect - unknown event type: '${e.type}'`
)
}
}}
diff --git a/frontend/src/lib/components/vscode.ts b/frontend/src/lib/components/vscode.ts
index c0ee224282..8836d080ba 100644
--- a/frontend/src/lib/components/vscode.ts
+++ b/frontend/src/lib/components/vscode.ts
@@ -9,6 +9,114 @@ import { editor as meditor } from 'monaco-editor/esm/vs/editor/editor.api'
export let isInitialized = false
export let isInitializing = false
+import { getEnhancedMonacoEnvironment } from 'monaco-languageclient/vscode/services'
+
+export function buildWorkerDefinition() {
+ const envEnhanced = getEnhancedMonacoEnvironment()
+
+ const getWorker = (moduleId: string, label: string) => {
+ console.log(`getWorker: moduleId: ${moduleId} label: ${label}`)
+
+ let selector = label
+
+ // const defaultTextEditorWorker = () => new Worker(
+ // new URL('@codingame/monaco-vscode-editor-api/esm/vs/editor/editor.worker.js', import.meta.url),
+ // { type: 'module' }
+ // );
+ // const defaultTextMateWorker = () => new Worker(
+ // new URL('@codingame/monaco-vscode-textmate-service-override/worker', import.meta.url),
+ // { type: 'module' }
+ // );
+
+ let workerLoaders = {
+ TextEditorWorker: () => {
+ return new Worker(
+ new URL(
+ '@codingame/monaco-vscode-editor-api/esm/vs/editor/editor.worker.js',
+ import.meta.url
+ ),
+ {
+ type: 'module'
+ }
+ )
+ },
+ // javascript: () => {
+ // return new Worker(new URL('monaco-editor-wrapper/workers/module/ts', import.meta.url), {
+ // type: 'module'
+ // })
+ // },
+ javascript: () => {
+ return new Worker(
+ new URL(
+ '@codingame/monaco-vscode-standalone-typescript-language-features/worker',
+ import.meta.url
+ ),
+ {
+ type: 'module'
+ }
+ )
+ },
+ typescript: () => {
+ return new Worker(
+ new URL(
+ '@codingame/monaco-vscode-standalone-typescript-language-features/worker',
+ import.meta.url
+ ),
+ {
+ type: 'module'
+ }
+ )
+ },
+ json: () => {
+ return new Worker(
+ new URL(
+ '@codingame/monaco-vscode-standalone-json-language-features/worker',
+ import.meta.url
+ ),
+ {
+ type: 'module'
+ }
+ )
+ },
+ html: () => {
+ return new Worker(
+ new URL(
+ '@codingame/monaco-vscode-standalone-html-language-features/worker',
+ import.meta.url
+ ),
+ {
+ type: 'module'
+ }
+ )
+ },
+ css: () => {
+ return new Worker(
+ new URL(
+ '@codingame/monaco-vscode-standalone-css-language-features/worker',
+ import.meta.url
+ ),
+ {
+ type: 'module'
+ }
+ )
+ },
+ graphql: () => {
+ console.log('Creating graphql worker')
+ return new Worker(new URL(`../monaco_workers/graphql.worker.bundle.js`, import.meta.url), {
+ name: 'graphql'
+ })
+ }
+ }
+ const workerFunc = workerLoaders[selector]
+ if (workerFunc !== undefined) {
+ return workerFunc()
+ } else {
+ throw new Error(`Unimplemented worker ${label} (${moduleId})`)
+ }
+ }
+ envEnhanced.getWorker = getWorker
+}
+
export async function initializeVscode(caller?: string, htmlContainer?: HTMLElement) {
if (!isInitialized && !isInitializing) {
console.log(`Initializing vscode-api from ${caller ?? 'unknown'}`)
@@ -16,20 +124,25 @@ export async function initializeVscode(caller?: string, htmlContainer?: HTMLElem
try {
// init vscode-api
- await initServices({
- serviceOverrides: {
- // ...getThemeServiceOverride(),
- // ...getTextmateServiceOverride()
- ...getConfigurationServiceOverride(),
- ...getMonarchServiceOverride()
+ await initServices(
+ {
+ serviceOverrides: {
+ // ...getThemeServiceOverride(),
+ // ...getTextmateServiceOverride()
+ ...getConfigurationServiceOverride(),
+ ...getMonarchServiceOverride()
+ },
+ enableExtHostWorker: false,
+ userConfiguration: {
+ json: JSON.stringify({
+ 'editor.experimental.asyncTokenization': true
+ })
+ }
},
- enableExtHostWorker: false,
- userConfiguration: {
- json: JSON.stringify({
- 'editor.experimental.asyncTokenization': true
- })
+ {
+ monacoWorkerFactory: buildWorkerDefinition
}
- })
+ )
isInitialized = true
meditor.defineTheme('nord', {
diff --git a/frontend/src/lib/editorUtils.ts b/frontend/src/lib/editorUtils.ts
index f2679df653..89fe341936 100644
--- a/frontend/src/lib/editorUtils.ts
+++ b/frontend/src/lib/editorUtils.ts
@@ -1,5 +1,7 @@
import { languages } from 'monaco-editor/esm/vs/editor/editor.api'
-import { ShowLightbulbIconMode } from 'vscode/vscode/vs/editor/common/config/editorOptions'
+
+import { editor as meditor } from 'monaco-editor/esm/vs/editor/editor.api'
+
export function editorConfig(
code: string,
lang: string,
@@ -22,7 +24,7 @@ export function editorConfig(
enabled: false
},
lightbulb: {
- enabled: ShowLightbulbIconMode.On
+ enabled: meditor.ShowLightbulbIconMode.On
},
suggest: {
showKeywords: true
diff --git a/frontend/src/lib/monaco_workers/build_workers.ts b/frontend/src/lib/monaco_workers/build_workers.ts
deleted file mode 100644
index 814254dce4..0000000000
--- a/frontend/src/lib/monaco_workers/build_workers.ts
+++ /dev/null
@@ -1,61 +0,0 @@
-import { initEnhancedMonacoEnvironment } from 'monaco-languageclient/vscode/services'
-
-// import cssWorker from 'monaco-editor-wrapper/workers/module/css?worker&url'
-// import htmlWorker from 'monaco-editor-wrapper/workers/module/html?worker&url'
-// import jsonWorker from 'monaco-editor-wrapper/workers/module/json?worker&url'
-// import editorWorker from 'monaco-editor-wrapper/workers/module/editor?worker&url'
-
-export function buildWorkerDefinition() {
- const envEnhanced = initEnhancedMonacoEnvironment()
-
- const getWorker = (moduleId: string, label: string) => {
- console.log(`getWorker: moduleId: ${moduleId} label: ${label}`)
-
- let selector = label
- let workerLoaders = {
- editorWorkerService: () => {
- return new Worker(new URL('monaco-editor-wrapper/workers/module/editor', import.meta.url), {
- type: 'module'
- })
- },
- javascript: () => {
- return new Worker(new URL('monaco-editor-wrapper/workers/module/ts', import.meta.url), {
- type: 'module'
- })
- },
- typescript: () => {
- return new Worker(new URL('monaco-editor-wrapper/workers/module/ts', import.meta.url), {
- type: 'module'
- })
- },
- json: () => {
- return new Worker(new URL('monaco-editor-wrapper/workers/module/json', import.meta.url), {
- type: 'module'
- })
- },
- html: () => {
- return new Worker(new URL('monaco-editor-wrapper/workers/module/html', import.meta.url), {
- type: 'module'
- })
- },
- css: () => {
- return new Worker(new URL('monaco-editor-wrapper/workers/module/css', import.meta.url), {
- type: 'module'
- })
- },
- graphql: () => {
- console.log('Creating graphql worker')
- return new Worker(new URL(`./graphql.worker.bundle.js`, import.meta.url), {
- name: 'graphql'
- })
- }
- }
- const workerFunc = workerLoaders[selector]
- if (workerFunc !== undefined) {
- return workerFunc()
- } else {
- throw new Error(`Unimplemented worker ${label} (${moduleId})`)
- }
- }
- envEnhanced.getWorker = getWorker
-}
diff --git a/frontend/vite.config.js b/frontend/vite.config.js
index 463bb00661..c9a7d7d5c9 100644
--- a/frontend/vite.config.js
+++ b/frontend/vite.config.js
@@ -48,7 +48,7 @@ const config = {
__pkg__: version
},
optimizeDeps: {
- include: ['highlight.js', 'highlight.js/lib/core', 'monaco-vim'],
+ include: ['highlight.js', 'highlight.js/lib/core', 'monaco-vim', 'monaco-editor-wrapper'],
exclude: [
'@codingame/monaco-vscode-standalone-typescript-language-features',
'@codingame/monaco-vscode-standalone-languages'
@@ -64,7 +64,7 @@ const config = {
alias: {
path: 'path-browserify',
'monaco-editor/esm/vs/editor/contrib/hover/browser/hover':
- 'vscode/vscode/vs/editor/contrib/hover/browser/hoverContribution'
+ 'monaco-editor/esm/vs/editor/contrib/hover/browser/hoverContribution'
},
dedupe: ['vscode', 'monaco-editor']
},