diff --git a/frontend/src/lib/monaco_workers/build_workers.ts b/frontend/src/lib/monaco_workers/build_workers.ts
index f9b1d53c7b45e..814254dce43ae 100644
--- a/frontend/src/lib/monaco_workers/build_workers.ts
+++ b/frontend/src/lib/monaco_workers/build_workers.ts
@@ -1,4 +1,4 @@
-import { useWorkerFactory } from 'monaco-editor-wrapper/workerFactory'
+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'
@@ -6,50 +6,56 @@ import { useWorkerFactory } from 'monaco-editor-wrapper/workerFactory'
// import editorWorker from 'monaco-editor-wrapper/workers/module/editor?worker&url'
export function buildWorkerDefinition() {
- useWorkerFactory({
- workerOverrides: {
- ignoreMapping: true,
- 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 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/src/routes/test_dev_page/+page.svelte b/frontend/src/routes/test_dev_page/+page.svelte
index 4858437d89256..267bd4f2c6899 100644
--- a/frontend/src/routes/test_dev_page/+page.svelte
+++ b/frontend/src/routes/test_dev_page/+page.svelte
@@ -2,7 +2,8 @@
// import EditableSchemaWrapper from '$lib/components/schema/EditableSchemaWrapper.svelte'
// import FlowBuilder from '$lib/components/FlowBuilder.svelte'
- import ScriptBuilder from '$lib/components/ScriptBuilder.svelte'
+ // import ScriptBuilder from '$lib/components/ScriptBuilder.svelte'
+ import ScriptEditor from '$lib/components/ScriptEditor.svelte'
// import type { OpenFlow } from '$lib/gen'
// import { writable, type Writable } from 'svelte/store'
@@ -50,7 +51,7 @@
}}
/> -->
-