@volar/monaco 2.1.4 → 2.2.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/package.json +4 -4
  2. package/worker.d.ts +5 -5
  3. package/worker.js +20 -13
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@volar/monaco",
3
- "version": "2.1.4",
3
+ "version": "2.2.0-alpha.0",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "files": [
@@ -13,8 +13,8 @@
13
13
  "directory": "packages/monaco"
14
14
  },
15
15
  "dependencies": {
16
- "@volar/language-service": "2.1.4",
17
- "@volar/typescript": "2.1.4",
16
+ "@volar/language-service": "2.2.0-alpha.0",
17
+ "@volar/typescript": "2.2.0-alpha.0",
18
18
  "monaco-languageserver-types": "^0.3.3",
19
19
  "monaco-types": "^0.1.0",
20
20
  "vscode-uri": "^3.0.8"
@@ -22,5 +22,5 @@
22
22
  "devDependencies": {
23
23
  "monaco-editor-core": "latest"
24
24
  },
25
- "gitHead": "cc46289ff6be015ee41a1896fdaef6aa68cee755"
25
+ "gitHead": "95ffe51f944ee87f570be113541e17ddfe75f588"
26
26
  }
package/worker.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { LanguagePlugin, ServicePlugin, type ServiceEnvironment } from '@volar/language-service';
1
+ import { LanguagePlugin, LanguageServicePlugin, type ServiceEnvironment } from '@volar/language-service';
2
2
  import type * as monaco from 'monaco-types';
3
3
  import type * as ts from 'typescript';
4
4
  export * from '@volar/language-service';
@@ -7,7 +7,7 @@ export declare function createSimpleWorkerService<T = {}>({ env, workerContext,
7
7
  env: ServiceEnvironment;
8
8
  workerContext: monaco.worker.IWorkerContext<any>;
9
9
  languagePlugins?: LanguagePlugin[];
10
- servicePlugins?: ServicePlugin[];
10
+ servicePlugins?: LanguageServicePlugin[];
11
11
  extraApis?: T;
12
12
  }): {
13
13
  getTriggerCharacters: () => string[];
@@ -26,7 +26,7 @@ export declare function createSimpleWorkerService<T = {}>({ env, workerContext,
26
26
  getColorPresentations: (uri: string, color: import("@volar/language-service").Color, range: import("@volar/language-service").Range, token?: import("@volar/language-service").CancellationToken | undefined) => Promise<import("@volar/language-service").ColorPresentation[] | undefined>;
27
27
  doValidation: (uri: string, token?: import("@volar/language-service").CancellationToken | undefined, response?: ((result: import("@volar/language-service").Diagnostic[]) => void) | undefined) => Promise<import("@volar/language-service").Diagnostic[]>;
28
28
  findReferences: (uri: string, position: import("@volar/language-service").Position, referenceContext: import("@volar/language-service").ReferenceContext, token?: import("@volar/language-service").CancellationToken | undefined) => Promise<import("@volar/language-service").Location[] | undefined>;
29
- findFileReferences: (uri: string, token?: import("@volar/language-service").CancellationToken | undefined) => import("@volar/language-service").NullableResult<import("@volar/language-service").Location[]>;
29
+ findFileReferences: (uri: string, token?: import("@volar/language-service").CancellationToken | undefined) => import("@volar/language-service").NullableProviderResult<import("@volar/language-service").Location[]>;
30
30
  findDefinition: (uri: string, position: import("@volar/language-service").Position, token?: import("@volar/language-service").CancellationToken | undefined) => Promise<import("@volar/language-service").LocationLink[] | undefined>;
31
31
  findTypeDefinition: (uri: string, position: import("@volar/language-service").Position, token?: import("@volar/language-service").CancellationToken | undefined) => Promise<import("@volar/language-service").LocationLink[] | undefined>;
32
32
  findImplementations: (uri: string, position: import("@volar/language-service").Position, token?: import("@volar/language-service").CancellationToken | undefined) => Promise<import("@volar/language-service").LocationLink[] | undefined>;
@@ -72,7 +72,7 @@ export declare function createTypeScriptWorkerService<T = {}>({ typescript: ts,
72
72
  env: ServiceEnvironment;
73
73
  workerContext: monaco.worker.IWorkerContext<any>;
74
74
  languagePlugins?: LanguagePlugin[];
75
- servicePlugins?: ServicePlugin[];
75
+ servicePlugins?: LanguageServicePlugin[];
76
76
  extraApis?: T;
77
77
  }): {
78
78
  getTriggerCharacters: () => string[];
@@ -91,7 +91,7 @@ export declare function createTypeScriptWorkerService<T = {}>({ typescript: ts,
91
91
  getColorPresentations: (uri: string, color: import("@volar/language-service").Color, range: import("@volar/language-service").Range, token?: import("@volar/language-service").CancellationToken | undefined) => Promise<import("@volar/language-service").ColorPresentation[] | undefined>;
92
92
  doValidation: (uri: string, token?: import("@volar/language-service").CancellationToken | undefined, response?: ((result: import("@volar/language-service").Diagnostic[]) => void) | undefined) => Promise<import("@volar/language-service").Diagnostic[]>;
93
93
  findReferences: (uri: string, position: import("@volar/language-service").Position, referenceContext: import("@volar/language-service").ReferenceContext, token?: import("@volar/language-service").CancellationToken | undefined) => Promise<import("@volar/language-service").Location[] | undefined>;
94
- findFileReferences: (uri: string, token?: import("@volar/language-service").CancellationToken | undefined) => import("@volar/language-service").NullableResult<import("@volar/language-service").Location[]>;
94
+ findFileReferences: (uri: string, token?: import("@volar/language-service").CancellationToken | undefined) => import("@volar/language-service").NullableProviderResult<import("@volar/language-service").Location[]>;
95
95
  findDefinition: (uri: string, position: import("@volar/language-service").Position, token?: import("@volar/language-service").CancellationToken | undefined) => Promise<import("@volar/language-service").LocationLink[] | undefined>;
96
96
  findTypeDefinition: (uri: string, position: import("@volar/language-service").Position, token?: import("@volar/language-service").CancellationToken | undefined) => Promise<import("@volar/language-service").LocationLink[] | undefined>;
97
97
  findImplementations: (uri: string, position: import("@volar/language-service").Position, token?: import("@volar/language-service").CancellationToken | undefined) => Promise<import("@volar/language-service").LocationLink[] | undefined>;
package/worker.js CHANGED
@@ -1,10 +1,10 @@
1
- import { createLanguageService as _createLanguageService, createFileRegistry, resolveCommonLanguageId, } from '@volar/language-service';
2
- import { createLanguage, createSys } from '@volar/typescript';
1
+ import { createLanguageService as _createLanguageService, createLanguage, resolveCommonLanguageId, } from '@volar/language-service';
2
+ import { createTypeScriptLanguage, createSys } from '@volar/typescript';
3
3
  export * from '@volar/language-service';
4
4
  export * from './lib/ata.js';
5
5
  export function createSimpleWorkerService({ env, workerContext, languagePlugins = [], servicePlugins = [], extraApis = {} }) {
6
6
  const snapshots = new Map();
7
- const files = createFileRegistry(languagePlugins, false, uri => {
7
+ const language = createLanguage(languagePlugins, false, uri => {
8
8
  const model = workerContext.getMirrorModels().find(model => model.uri.toString() === uri);
9
9
  if (model) {
10
10
  const cache = snapshots.get(model);
@@ -18,13 +18,13 @@ export function createSimpleWorkerService({ env, workerContext, languagePlugins
18
18
  getChangeRange: () => undefined,
19
19
  };
20
20
  snapshots.set(model, [model.version, snapshot]);
21
- files.set(uri, resolveCommonLanguageId(uri), snapshot);
21
+ language.scripts.set(uri, resolveCommonLanguageId(uri), snapshot);
22
22
  }
23
23
  else {
24
- files.delete(uri);
24
+ language.scripts.delete(uri);
25
25
  }
26
26
  });
27
- return createWorkerService({ files }, servicePlugins, env, extraApis);
27
+ return createWorkerService(language, servicePlugins, env, extraApis);
28
28
  }
29
29
  export function createTypeScriptWorkerService({ typescript: ts, compilerOptions, env, workerContext, languagePlugins = [], servicePlugins = [], extraApis = {} }) {
30
30
  let projectVersion = 0;
@@ -32,6 +32,14 @@ export function createTypeScriptWorkerService({ typescript: ts, compilerOptions,
32
32
  const modelVersions = new Map();
33
33
  const sys = createSys(ts, env, env.typescript.uriToFileName(env.workspaceFolder));
34
34
  const host = {
35
+ ...sys,
36
+ configFileName: undefined,
37
+ syncSystem() {
38
+ return sys.sync();
39
+ },
40
+ getSystemVersion() {
41
+ return sys.version;
42
+ },
35
43
  getCurrentDirectory() {
36
44
  return env.typescript.uriToFileName(env.workspaceFolder);
37
45
  },
@@ -73,15 +81,14 @@ export function createTypeScriptWorkerService({ typescript: ts, compilerOptions,
73
81
  return compilerOptions;
74
82
  },
75
83
  getLanguageId: id => resolveCommonLanguageId(id),
84
+ fileNameToScriptId: env.typescript.fileNameToUri,
85
+ scriptIdToFileName: env.typescript.uriToFileName,
76
86
  };
77
- const languageContext = createLanguage(ts, sys, languagePlugins, undefined, host, {
78
- fileNameToFileId: env.typescript.fileNameToUri,
79
- fileIdToFileName: env.typescript.uriToFileName,
80
- });
81
- return createWorkerService(languageContext, servicePlugins, env, extraApis);
87
+ const language = createTypeScriptLanguage(ts, languagePlugins, host);
88
+ return createWorkerService(language, servicePlugins, env, extraApis);
82
89
  }
83
- function createWorkerService(languageContext, servicePlugins, env, extraApis = {}) {
84
- const languageService = _createLanguageService(languageContext, servicePlugins, env);
90
+ function createWorkerService(language, servicePlugins, env, extraApis = {}) {
91
+ const languageService = _createLanguageService(language, servicePlugins, env);
85
92
  class WorkerService {
86
93
  }
87
94
  ;