diff --git a/packages/components/react/package.json b/packages/components/react/package.json index 905853090..d5269dbee 100644 --- a/packages/components/react/package.json +++ b/packages/components/react/package.json @@ -62,6 +62,7 @@ "@codemirror/lang-json": "^6.0.1", "@codemirror/lang-markdown": "^6.2.5", "@codemirror/lang-sass": "^6.0.2", + "@codemirror/lang-vue": "^0.1.3", "@codemirror/lang-wast": "^6.0.2", "@codemirror/language": "^6.10.2", "@codemirror/state": "^6.4.1", diff --git a/packages/components/react/src/core/CodeMirrorEditor/languages.ts b/packages/components/react/src/core/CodeMirrorEditor/languages.ts index 1b9369401..9f68c61b0 100644 --- a/packages/components/react/src/core/CodeMirrorEditor/languages.ts +++ b/packages/components/react/src/core/CodeMirrorEditor/languages.ts @@ -78,6 +78,13 @@ export const supportedLanguages = [ return import('@codemirror/lang-wast').then((module) => module.wast()); }, }), + LanguageDescription.of({ + name: 'Vue', + extensions: ['vue'], + async load() { + return import('@codemirror/lang-vue').then((module) => module.vue()); + }, + }), LanguageDescription.of({ name: 'Svelte', extensions: ['svelte'], diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index bebf8c762..4911772c4 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -442,6 +442,9 @@ importers: '@codemirror/lang-sass': specifier: ^6.0.2 version: 6.0.2(@codemirror/view@6.28.1) + '@codemirror/lang-vue': + specifier: ^0.1.3 + version: 0.1.3 '@codemirror/lang-wast': specifier: ^6.0.2 version: 6.0.2 @@ -1512,6 +1515,17 @@ packages: - '@codemirror/view' dev: false + /@codemirror/lang-vue@0.1.3: + resolution: {integrity: sha512-QSKdtYTDRhEHCfo5zOShzxCmqKJvgGrZwDQSdbvCRJ5pRLWBS7pD/8e/tH44aVQT6FKm0t6RVNoSUWHOI5vNug==} + dependencies: + '@codemirror/lang-html': 6.4.9 + '@codemirror/lang-javascript': 6.2.2 + '@codemirror/language': 6.10.2 + '@lezer/common': 1.2.1 + '@lezer/highlight': 1.2.0 + '@lezer/lr': 1.4.1 + dev: false + /@codemirror/lang-wast@6.0.2: resolution: {integrity: sha512-Imi2KTpVGm7TKuUkqyJ5NRmeFWF7aMpNiwHnLQe0x9kmrxElndyH0K6H/gXtWwY6UshMRAhpENsgfpSwsgmC6Q==} dependencies: