diff --git a/extensions/git/src/git.ts b/extensions/git/src/git.ts index 3de9f74b1e8..5a036628a57 100644 --- a/extensions/git/src/git.ts +++ b/extensions/git/src/git.ts @@ -2420,7 +2420,7 @@ export class Repository { return result.stdout.trim().split('\n') .map(line => line.trim().split('\0')) .filter(([_, upstream]) => upstream === upstreamBranch) - .map(([ref]) => ({ name: ref, type: RefType.Head } as Branch)); + .map(([ref]): Branch => ({ name: ref, type: RefType.Head })); } async getRefs(query: RefQuery, cancellationToken?: CancellationToken): Promise { diff --git a/extensions/git/src/operation.ts b/extensions/git/src/operation.ts index 5d3fe6f36c4..294c72f3206 100644 --- a/extensions/git/src/operation.ts +++ b/extensions/git/src/operation.ts @@ -2,6 +2,7 @@ * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ +/* eslint-disable local/code-no-dangerous-type-assertions */ import { LogOutputChannel } from 'vscode'; diff --git a/extensions/typescript-language-features/src/languageFeatures/fileConfigurationManager.ts b/extensions/typescript-language-features/src/languageFeatures/fileConfigurationManager.ts index 0b5a4c65d3b..5d92a3a6163 100644 --- a/extensions/typescript-language-features/src/languageFeatures/fileConfigurationManager.ts +++ b/extensions/typescript-language-features/src/languageFeatures/fileConfigurationManager.ts @@ -19,6 +19,13 @@ interface FileConfiguration { readonly preferences: Proto.UserPreferences; } +interface FormattingOptions { + + readonly tabSize: number | undefined; + + readonly insertSpaces: boolean | undefined; +} + function areFileConfigurationsEqual(a: FileConfiguration, b: FileConfiguration): boolean { return equals(a, b); } @@ -51,21 +58,21 @@ export default class FileConfigurationManager extends Disposable { } } - private getFormattingOptions( - document: vscode.TextDocument - ): vscode.FormattingOptions | undefined { - const editor = vscode.window.visibleTextEditors.find(editor => editor.document.fileName === document.fileName); - return editor - ? { - tabSize: editor.options.tabSize, - insertSpaces: editor.options.insertSpaces - } as vscode.FormattingOptions - : undefined; + private getFormattingOptions(document: vscode.TextDocument): FormattingOptions | undefined { + const editor = vscode.window.visibleTextEditors.find(editor => editor.document.uri.toString() === document.uri.toString()); + if (!editor) { + return undefined; + } + + return { + tabSize: typeof editor.options.tabSize === 'number' ? editor.options.tabSize : undefined, + insertSpaces: typeof editor.options.insertSpaces === 'boolean' ? editor.options.insertSpaces : undefined, + }; } public async ensureConfigurationOptions( document: vscode.TextDocument, - options: vscode.FormattingOptions, + options: FormattingOptions, token: vscode.CancellationToken ): Promise { const file = this.client.toOpenTsFilePath(document); @@ -122,7 +129,7 @@ export default class FileConfigurationManager extends Disposable { private getFileOptions( document: vscode.TextDocument, - options: vscode.FormattingOptions + options: FormattingOptions ): FileConfiguration { return { formatOptions: this.getFormatOptions(document, options), @@ -132,7 +139,7 @@ export default class FileConfigurationManager extends Disposable { private getFormatOptions( document: vscode.TextDocument, - options: vscode.FormattingOptions + options: FormattingOptions ): Proto.FormatCodeSettings { const config = vscode.workspace.getConfiguration( isTypeScriptDocument(document) ? 'typescript.format' : 'javascript.format', diff --git a/src/vs/base/common/event.ts b/src/vs/base/common/event.ts index 6a634e2cf54..33c834929c0 100644 --- a/src/vs/base/common/event.ts +++ b/src/vs/base/common/event.ts @@ -1354,6 +1354,7 @@ export class AsyncEmitter extends Emitter { const [listener, data] = this._asyncDeliveryQueue.shift()!; const thenables: Promise[] = []; + // eslint-disable-next-line local/code-no-dangerous-type-assertions const event = { ...data, token, diff --git a/src/vs/base/common/objects.ts b/src/vs/base/common/objects.ts index c27e37a1431..94c2fb717d2 100644 --- a/src/vs/base/common/objects.ts +++ b/src/vs/base/common/objects.ts @@ -258,6 +258,7 @@ export function createProxyObject(methodNames: string[], invok }; }; + // eslint-disable-next-line local/code-no-dangerous-type-assertions const result = {} as T; for (const methodName of methodNames) { (result)[methodName] = createProxyMethod(methodName); diff --git a/src/vs/base/common/uri.ts b/src/vs/base/common/uri.ts index 1a19a1e9e70..73a3aa6cd49 100644 --- a/src/vs/base/common/uri.ts +++ b/src/vs/base/common/uri.ts @@ -473,6 +473,7 @@ class Uri extends URI { } override toJSON(): UriComponents { + // eslint-disable-next-line local/code-no-dangerous-type-assertions const res = { $mid: MarshalledId.Uri }; diff --git a/src/vs/base/parts/ipc/node/ipc.cp.ts b/src/vs/base/parts/ipc/node/ipc.cp.ts index 1a88da972f5..2c5ef506bf1 100644 --- a/src/vs/base/parts/ipc/node/ipc.cp.ts +++ b/src/vs/base/parts/ipc/node/ipc.cp.ts @@ -102,6 +102,7 @@ export class Client implements IChannelClient, IDisposable { getChannel(channelName: string): T { const that = this; + // eslint-disable-next-line local/code-no-dangerous-type-assertions return { call(command: string, arg?: any, cancellationToken?: CancellationToken): Promise { return that.requestPromise(channelName, command, arg, cancellationToken); diff --git a/src/vs/platform/issue/electron-main/processMainService.ts b/src/vs/platform/issue/electron-main/processMainService.ts index 2dec13f76e3..bbf187a92b4 100644 --- a/src/vs/platform/issue/electron-main/processMainService.ts +++ b/src/vs/platform/issue/electron-main/processMainService.ts @@ -328,7 +328,7 @@ export class ProcessMainService implements IProcessMainService { } private createBrowserWindow(position: IWindowState, ipcObjectUrl: IIPCObjectUrl, options: IBrowserWindowOptions, windowKind: string): BrowserWindow { - const window = new BrowserWindow({ + const browserWindowOptions: BrowserWindowConstructorOptions & { experimentalDarkMode: boolean } = { fullscreen: false, skipTaskbar: false, resizable: true, @@ -351,7 +351,8 @@ export class ProcessMainService implements IProcessMainService { }, alwaysOnTop: options.alwaysOnTop, experimentalDarkMode: true - } as BrowserWindowConstructorOptions & { experimentalDarkMode: boolean }); + }; + const window = new BrowserWindow(browserWindowOptions); window.setMenuBarVisibility(false); diff --git a/src/vs/workbench/api/common/extHost.api.impl.ts b/src/vs/workbench/api/common/extHost.api.impl.ts index 8c04da5bb7c..3a110d486a8 100644 --- a/src/vs/workbench/api/common/extHost.api.impl.ts +++ b/src/vs/workbench/api/common/extHost.api.impl.ts @@ -1513,6 +1513,7 @@ export function createApiFactoryAndRegisterActors(accessor: ServicesAccessor): I } }; + // eslint-disable-next-line local/code-no-dangerous-type-assertions return { version: initData.version, // namespaces