Skip to content
This repository has been archived by the owner on Nov 5, 2021. It is now read-only.

Commit

Permalink
register multiple extra libs at once (#24)
Browse files Browse the repository at this point in the history
register multiple extra libs at once
  • Loading branch information
alexdima committed Dec 17, 2019
2 parents 07cbd6d + 1f15497 commit 7232182
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 1 deletion.
18 changes: 18 additions & 0 deletions src/monaco.contribution.ts
Expand Up @@ -93,6 +93,24 @@ export class LanguageServiceDefaultsImpl implements monaco.languages.typescript.
};
}

setExtraLibs(libs: { content: string; filePath?: string }[]): void {
// clear out everything
this._extraLibs = Object.create(null);

if (libs && libs.length > 0) {
for (const lib of libs) {
const filePath = lib.filePath || `ts:extralib-${Math.random().toString(36).substring(2, 15)}`;
const content = lib.content;
this._extraLibs[filePath] = {
content: content,
version: 1
};
}
}

this._fireOnDidExtraLibsChangeSoon();
}

private _fireOnDidExtraLibsChangeSoon(): void {
if (this._onDidExtraLibsChangeTimeout !== -1) {
// already scheduled
Expand Down
10 changes: 9 additions & 1 deletion src/monaco.d.ts
Expand Up @@ -136,7 +136,7 @@ declare module monaco.languages.typescript {
/**
* Add an additional source file to the language service. Use this
* for typescript (definition) files that won't be loaded as editor
* document, like `jquery.d.ts`.
* documents, like `jquery.d.ts`.
*
* @param content The file content
* @param filePath An optional file path
Expand All @@ -145,6 +145,14 @@ declare module monaco.languages.typescript {
*/
addExtraLib(content: string, filePath?: string): IDisposable;

/**
* Remove all existing extra libs and set the additional source
* files to the language service. Use this for typescript definition
* files that won't be loaded as editor documents, like `jquery.d.ts`.
* @param libs An array of entries to register.
*/
setExtraLibs(libs: { content: string; filePath?: string }[]): void;

/**
* Set TypeScript compiler options.
*/
Expand Down

0 comments on commit 7232182

Please sign in to comment.