diff --git a/src/tsconfig.strictNullChecks.json b/src/tsconfig.strictNullChecks.json index b1e76fd29e7..9e4af5f51df 100644 --- a/src/tsconfig.strictNullChecks.json +++ b/src/tsconfig.strictNullChecks.json @@ -534,6 +534,7 @@ "./vs/workbench/browser/parts/quickinput/quickInputUtils.ts", "./vs/workbench/browser/parts/quickopen/quickopen.ts", "./vs/workbench/browser/parts/statusbar/statusbar.ts", + "./vs/workbench/browser/parts/statusbar/statusbarPart.ts", "./vs/workbench/common/actions.ts", "./vs/workbench/common/activity.ts", "./vs/workbench/common/component.ts", @@ -569,6 +570,8 @@ "./vs/workbench/parts/codeEditor/electron-browser/toggleWordWrap.ts", "./vs/workbench/parts/comments/common/commentModel.ts", "./vs/workbench/parts/comments/electron-browser/commentGlyphWidget.ts", + "./vs/workbench/parts/debug/browser/debugANSIHandling.ts", + "./vs/workbench/parts/debug/browser/linkDetector.ts", "./vs/workbench/parts/emmet/browser/actions/showEmmetCommands.ts", "./vs/workbench/parts/emmet/browser/emmet.browser.contribution.ts", "./vs/workbench/parts/emmet/electron-browser/actions/expandAbbreviation.ts", diff --git a/src/vs/monaco.d.ts b/src/vs/monaco.d.ts index 15bb107fb17..0a0edec247e 100644 --- a/src/vs/monaco.d.ts +++ b/src/vs/monaco.d.ts @@ -5355,7 +5355,7 @@ declare namespace monaco.languages { } export interface WorkspaceEdit { - edits?: Array; + edits: Array; } export interface Rejection { diff --git a/src/vs/platform/statusbar/common/statusbar.ts b/src/vs/platform/statusbar/common/statusbar.ts index 19a9a4ac50c..a14dc163806 100644 --- a/src/vs/platform/statusbar/common/statusbar.ts +++ b/src/vs/platform/statusbar/common/statusbar.ts @@ -23,37 +23,37 @@ export interface IStatusbarEntry { * * `My text ${icon name} contains icons like ${icon name} this one.` */ - text: string; + readonly text: string; /** * An optional tooltip text to show when you hover over the entry */ - tooltip?: string; + readonly tooltip?: string; /** * An optional color to use for the entry */ - color?: string | ThemeColor; + readonly color?: string | ThemeColor; /** * An optional id of a command that is known to the workbench to execute on click */ - command?: string; + readonly command?: string; /** * Optional arguments for the command. */ - arguments?: any[]; + readonly arguments?: any[]; /** * An optional extension ID if this entry is provided from an extension. */ - extensionId?: string; + readonly extensionId?: string; /** * Wether to show a beak above the status bar entry. */ - showBeak?: boolean; + readonly showBeak?: boolean; } export interface IStatusbarService { diff --git a/src/vs/workbench/browser/parts/statusbar/statusbarPart.ts b/src/vs/workbench/browser/parts/statusbar/statusbarPart.ts index abbd124edcc..cc601c33b01 100644 --- a/src/vs/workbench/browser/parts/statusbar/statusbarPart.ts +++ b/src/vs/workbench/browser/parts/statusbar/statusbarPart.ts @@ -191,7 +191,7 @@ export class StatusbarPart extends Part implements IStatusbarService { // Create new let statusDispose: IDisposable; - let showHandle = setTimeout(() => { + let showHandle: any = setTimeout(() => { statusDispose = this.addEntry({ text: message }, StatusbarAlignment.LEFT, -Number.MAX_VALUE /* far right on left hand side */); showHandle = null; }, delayBy); @@ -252,7 +252,7 @@ class StatusBarEntryItem implements IStatusbarItem { if (this.entry.command) { textContainer = document.createElement('a'); - toDispose.push(addDisposableListener(textContainer, 'click', () => this.executeCommand(this.entry.command, this.entry.arguments))); + toDispose.push(addDisposableListener(textContainer, 'click', () => this.executeCommand(this.entry.command!, this.entry.arguments))); } else { textContainer = document.createElement('span'); } diff --git a/src/vs/workbench/parts/debug/browser/linkDetector.ts b/src/vs/workbench/parts/debug/browser/linkDetector.ts index 7e4e7adbe60..a795c92dbc2 100644 --- a/src/vs/workbench/parts/debug/browser/linkDetector.ts +++ b/src/vs/workbench/parts/debug/browser/linkDetector.ts @@ -38,7 +38,7 @@ export class LinkDetector { return text; } - let linkContainer: HTMLElement; + let linkContainer: HTMLElement | undefined; for (let pattern of LinkDetector.FILE_LOCATION_PATTERNS) { pattern.lastIndex = 0; // the holy grail of software development let lastMatchIndex = 0; @@ -67,7 +67,7 @@ export class LinkDetector { linkContainer.appendChild(link); const line = Number(match[3]); const column = match[4] ? Number(match[4]) : undefined; - link.onclick = (e) => this.onLinkClick(new StandardMouseEvent(e), resource, line, column); + link.onclick = (e) => this.onLinkClick(new StandardMouseEvent(e), resource!, line, column); lastMatchIndex = pattern.lastIndex; const currentMatch = match;