mirror of
https://github.com/microsoft/monaco-editor.git
synced 2025-12-22 22:02:55 +01:00
Expose TypeScript version via monaco.languages.typescript.typeScriptVersion
This commit is contained in:
parent
7625391590
commit
d199064a4b
4 changed files with 13 additions and 0 deletions
|
|
@ -5,6 +5,7 @@
|
||||||
|
|
||||||
const path = require('path');
|
const path = require('path');
|
||||||
const fs = require('fs');
|
const fs = require('fs');
|
||||||
|
const child_process = require('child_process');
|
||||||
|
|
||||||
const TYPESCRIPT_LIB_SOURCE = path.join(__dirname, '../node_modules/typescript/lib');
|
const TYPESCRIPT_LIB_SOURCE = path.join(__dirname, '../node_modules/typescript/lib');
|
||||||
const TYPESCRIPT_LIB_DESTINATION = path.join(__dirname, '../src/lib');
|
const TYPESCRIPT_LIB_DESTINATION = path.join(__dirname, '../src/lib');
|
||||||
|
|
@ -17,6 +18,13 @@ const TYPESCRIPT_LIB_DESTINATION = path.join(__dirname, '../src/lib');
|
||||||
}
|
}
|
||||||
importLibs();
|
importLibs();
|
||||||
|
|
||||||
|
const npmLsOutput = JSON.parse(child_process.execSync("npm ls typescript --depth=0 --json=true").toString());
|
||||||
|
const typeScriptDependencyVersion = npmLsOutput.dependencies.typescript.version;
|
||||||
|
|
||||||
|
fs.writeFileSync(path.join(TYPESCRIPT_LIB_DESTINATION, 'typescriptServicesMetadata.ts'),
|
||||||
|
`export const typeScriptVersion = "${typeScriptDependencyVersion}";
|
||||||
|
`);
|
||||||
|
|
||||||
var tsServices = fs.readFileSync(path.join(TYPESCRIPT_LIB_SOURCE, 'typescriptServices.js')).toString();
|
var tsServices = fs.readFileSync(path.join(TYPESCRIPT_LIB_SOURCE, 'typescriptServices.js')).toString();
|
||||||
|
|
||||||
// Ensure we never run into the node system...
|
// Ensure we never run into the node system...
|
||||||
|
|
|
||||||
1
src/lib/typescriptServicesMetadata.ts
Normal file
1
src/lib/typescriptServicesMetadata.ts
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
export const typeScriptVersion = "3.3.3333";
|
||||||
|
|
@ -5,6 +5,7 @@
|
||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
import * as mode from './tsMode';
|
import * as mode from './tsMode';
|
||||||
|
import { typeScriptVersion } from './lib/typescriptServicesMetadata'; // do not import the whole typescriptServices here
|
||||||
|
|
||||||
import Emitter = monaco.Emitter;
|
import Emitter = monaco.Emitter;
|
||||||
import IEvent = monaco.IEvent;
|
import IEvent = monaco.IEvent;
|
||||||
|
|
@ -204,6 +205,7 @@ function createAPI(): typeof monaco.languages.typescript {
|
||||||
NewLineKind: NewLineKind,
|
NewLineKind: NewLineKind,
|
||||||
ScriptTarget: ScriptTarget,
|
ScriptTarget: ScriptTarget,
|
||||||
ModuleResolutionKind: ModuleResolutionKind,
|
ModuleResolutionKind: ModuleResolutionKind,
|
||||||
|
typeScriptVersion,
|
||||||
typescriptDefaults: typescriptDefaults,
|
typescriptDefaults: typescriptDefaults,
|
||||||
javascriptDefaults: javascriptDefaults,
|
javascriptDefaults: javascriptDefaults,
|
||||||
getTypeScriptWorker: getTypeScriptWorker,
|
getTypeScriptWorker: getTypeScriptWorker,
|
||||||
|
|
|
||||||
2
src/monaco.d.ts
vendored
2
src/monaco.d.ts
vendored
|
|
@ -166,6 +166,8 @@ declare module monaco.languages.typescript {
|
||||||
setEagerModelSync(value: boolean): void;
|
setEagerModelSync(value: boolean): void;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export var typeScriptVersion: string;
|
||||||
|
|
||||||
export var typescriptDefaults: LanguageServiceDefaults;
|
export var typescriptDefaults: LanguageServiceDefaults;
|
||||||
export var javascriptDefaults: LanguageServiceDefaults;
|
export var javascriptDefaults: LanguageServiceDefaults;
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue