mirror of
https://github.com/microsoft/vscode.git
synced 2026-08-23 15:34:20 +01:00
* Bump default JS target for scripts in html For JS/TS files, we target ES2020 by default. However in html files we're still stuck targetting es6 This change aligns the two * use es2020.full (includes dom), fix web, avoid searching in node_modules Co-authored-by: Martin Aeschlimann <martinae@microsoft.com>
34 lines
1.2 KiB
TypeScript
34 lines
1.2 KiB
TypeScript
/*---------------------------------------------------------------------------------------------
|
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
*--------------------------------------------------------------------------------------------*/
|
|
|
|
import { join, basename, dirname } from 'path';
|
|
import { readFileSync } from 'fs';
|
|
|
|
const contents: { [name: string]: string } = {};
|
|
|
|
const serverFolder = basename(__dirname) === 'dist' ? dirname(__dirname) : dirname(dirname(__dirname));
|
|
const TYPESCRIPT_LIB_SOURCE = join(serverFolder, '../../node_modules/typescript/lib');
|
|
const JQUERY_PATH = join(serverFolder, 'lib/jquery.d.ts');
|
|
|
|
export function loadLibrary(name: string) {
|
|
let content = contents[name];
|
|
if (typeof content !== 'string') {
|
|
let libPath;
|
|
if (name === 'jquery') {
|
|
libPath = JQUERY_PATH;
|
|
} else {
|
|
libPath = join(TYPESCRIPT_LIB_SOURCE, name); // from source
|
|
}
|
|
try {
|
|
content = readFileSync(libPath).toString();
|
|
} catch (e) {
|
|
console.log(`Unable to load library ${name} at ${libPath}`);
|
|
content = '';
|
|
}
|
|
contents[name] = content;
|
|
}
|
|
return content;
|
|
}
|