vscode/build/lib/mangle/staticLanguageServiceHost.js

68 lines
2.7 KiB
JavaScript

"use strict";
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.StaticLanguageServiceHost = void 0;
const typescript_1 = __importDefault(require("typescript"));
const path_1 = __importDefault(require("path"));
class StaticLanguageServiceHost {
projectPath;
_cmdLine;
_scriptSnapshots = new Map();
constructor(projectPath) {
this.projectPath = projectPath;
const existingOptions = {};
const parsed = typescript_1.default.readConfigFile(projectPath, typescript_1.default.sys.readFile);
if (parsed.error) {
throw parsed.error;
}
this._cmdLine = typescript_1.default.parseJsonConfigFileContent(parsed.config, typescript_1.default.sys, path_1.default.dirname(projectPath), existingOptions);
if (this._cmdLine.errors.length > 0) {
throw parsed.error;
}
}
getCompilationSettings() {
return this._cmdLine.options;
}
getScriptFileNames() {
return this._cmdLine.fileNames;
}
getScriptVersion(_fileName) {
return '1';
}
getProjectVersion() {
return '1';
}
getScriptSnapshot(fileName) {
let result = this._scriptSnapshots.get(fileName);
if (result === undefined) {
const content = typescript_1.default.sys.readFile(fileName);
if (content === undefined) {
return undefined;
}
result = typescript_1.default.ScriptSnapshot.fromString(content);
this._scriptSnapshots.set(fileName, result);
}
return result;
}
getCurrentDirectory() {
return path_1.default.dirname(this.projectPath);
}
getDefaultLibFileName(options) {
return typescript_1.default.getDefaultLibFilePath(options);
}
directoryExists = typescript_1.default.sys.directoryExists;
getDirectories = typescript_1.default.sys.getDirectories;
fileExists = typescript_1.default.sys.fileExists;
readFile = typescript_1.default.sys.readFile;
readDirectory = typescript_1.default.sys.readDirectory;
// this is necessary to make source references work.
realpath = typescript_1.default.sys.realpath;
}
exports.StaticLanguageServiceHost = StaticLanguageServiceHost;
//# sourceMappingURL=staticLanguageServiceHost.js.map