diff --git a/src/vs/base/browser/ui/list/listView.ts b/src/vs/base/browser/ui/list/listView.ts index a4f93a958c7..5ab6d109c0d 100644 --- a/src/vs/base/browser/ui/list/listView.ts +++ b/src/vs/base/browser/ui/list/listView.ts @@ -63,7 +63,7 @@ const DefaultOptions = { setRowLineHeight: true, supportDynamicHeights: false, dnd: { - getDragElements(e) { return [e]; }, + getDragElements(e: T) { return [e]; }, getDragURI() { return null; }, onDragStart(): void { }, onDragOver() { return false; }, diff --git a/src/vs/base/browser/ui/tree/abstractTree.ts b/src/vs/base/browser/ui/tree/abstractTree.ts index 0354022045a..d7990894be1 100644 --- a/src/vs/base/browser/ui/tree/abstractTree.ts +++ b/src/vs/base/browser/ui/tree/abstractTree.ts @@ -805,7 +805,7 @@ class Trait { onDidModelSplice({ insertedNodes, deletedNodes }: ITreeModelSpliceEvent): void { if (!this.identityProvider) { const set = this.createNodeSet(); - const visit = node => set.delete(node); + const visit = (node: ITreeNode) => set.delete(node); deletedNodes.forEach(node => dfs(node, visit)); this.set(values(set)); return; @@ -816,8 +816,8 @@ class Trait { this.nodes.forEach(node => nodesByIdentity.set(identityProvider.getId(node.element).toString(), node)); const toDeleteByIdentity = new Map>(); - const toRemoveSetter = node => toDeleteByIdentity.set(identityProvider.getId(node.element).toString(), node); - const toRemoveDeleter = node => toDeleteByIdentity.delete(identityProvider.getId(node.element).toString()); + const toRemoveSetter = (node: ITreeNode) => toDeleteByIdentity.set(identityProvider.getId(node.element).toString(), node); + const toRemoveDeleter = (node: { element: T; }) => toDeleteByIdentity.delete(identityProvider.getId(node.element).toString()); deletedNodes.forEach(node => dfs(node, toRemoveSetter)); insertedNodes.forEach(node => dfs(node, toRemoveDeleter)); diff --git a/src/vs/base/test/node/extfs/extfs.test.ts b/src/vs/base/test/node/extfs/extfs.test.ts index fd044fac056..60126f5a716 100644 --- a/src/vs/base/test/node/extfs/extfs.test.ts +++ b/src/vs/base/test/node/extfs/extfs.test.ts @@ -17,7 +17,7 @@ import { CancellationTokenSource } from 'vs/base/common/cancellation'; const ignore = () => { }; -const mkdirp = (path: string, mode: number, callback: (error) => void) => { +const mkdirp = (path: string, mode: number, callback: (error: any) => void) => { extfs.mkdirp(path, mode).then(() => callback(null), error => callback(error)); }; diff --git a/src/vs/code/electron-main/app.ts b/src/vs/code/electron-main/app.ts index 783dfa59356..d64fbe9ea32 100644 --- a/src/vs/code/electron-main/app.ts +++ b/src/vs/code/electron-main/app.ts @@ -388,7 +388,7 @@ export class CodeApplication extends Disposable { this.logService.info(`Tracing: waiting for windows to get ready...`); let recordingStopped = false; - const stopRecording = (timeout) => { + const stopRecording = (timeout: boolean) => { if (recordingStopped) { return; } diff --git a/src/vs/editor/contrib/folding/foldingModel.ts b/src/vs/editor/contrib/folding/foldingModel.ts index eb0db3e5b3a..0375be9f13f 100644 --- a/src/vs/editor/contrib/folding/foldingModel.ts +++ b/src/vs/editor/contrib/folding/foldingModel.ts @@ -66,7 +66,7 @@ export class FoldingModel { public update(newRegions: FoldingRegions, blockedLineNumers: number[] = []): void { let newEditorDecorations: IModelDeltaDecoration[] = []; - let isBlocked = (startLineNumber, endLineNumber) => { + let isBlocked = (startLineNumber: number, endLineNumber: number) => { for (let blockedLineNumber of blockedLineNumers) { if (startLineNumber < blockedLineNumber && blockedLineNumber <= endLineNumber) { // first line is visible return true; diff --git a/src/vs/platform/extensionManagement/common/extensionNls.ts b/src/vs/platform/extensionManagement/common/extensionNls.ts index 92340624e2a..895f88d7bc4 100644 --- a/src/vs/platform/extensionManagement/common/extensionNls.ts +++ b/src/vs/platform/extensionManagement/common/extensionNls.ts @@ -13,7 +13,7 @@ export interface ITranslations { } export function localizeManifest(manifest: IExtensionManifest, translations: ITranslations): IExtensionManifest { - const patcher = value => { + const patcher = (value: string) => { if (typeof value !== 'string') { return undefined; } diff --git a/src/vs/platform/issue/electron-main/issueService.ts b/src/vs/platform/issue/electron-main/issueService.ts index 14c5715c810..fffbff2be7b 100644 --- a/src/vs/platform/issue/electron-main/issueService.ts +++ b/src/vs/platform/issue/electron-main/issueService.ts @@ -72,7 +72,7 @@ export class IssueService implements IIssueService { } }); - ipcMain.on('vscode:workbenchCommand', (_: unknown, commandInfo) => { + ipcMain.on('vscode:workbenchCommand', (_: unknown, commandInfo: { id: any; from: any; args: any; }) => { const { id, from, args } = commandInfo; let parentWindow: BrowserWindow | null; @@ -92,7 +92,7 @@ export class IssueService implements IIssueService { } }); - ipcMain.on('vscode:openExternal', (_: unknown, arg) => { + ipcMain.on('vscode:openExternal', (_: unknown, arg: string) => { this.windowsService.openExternal(arg); }); diff --git a/src/vs/platform/theme/common/styler.ts b/src/vs/platform/theme/common/styler.ts index f8377047e8e..33112d2ba2a 100644 --- a/src/vs/platform/theme/common/styler.ts +++ b/src/vs/platform/theme/common/styler.ts @@ -326,6 +326,6 @@ export const defaultMenuStyles = { separatorColor: menuSeparatorBackground }; -export function attachMenuStyler(widget: IThemable, themeService, style?: IMenuStyleOverrides): IDisposable { +export function attachMenuStyler(widget: IThemable, themeService: IThemeService, style?: IMenuStyleOverrides): IDisposable { return attachStyler(themeService, { ...defaultMenuStyles, ...style }, widget); } diff --git a/src/vs/platform/workspaces/test/electron-main/workspacesMainService.test.ts b/src/vs/platform/workspaces/test/electron-main/workspacesMainService.test.ts index 5e9d7d5de43..0319f83d554 100644 --- a/src/vs/platform/workspaces/test/electron-main/workspacesMainService.test.ts +++ b/src/vs/platform/workspaces/test/electron-main/workspacesMainService.test.ts @@ -64,7 +64,7 @@ suite('WorkspacesMainService', () => { return pfs.del(untitledWorkspacesHomePath, os.tmpdir()); }); - function assertPathEquals(p1: string, p2): void { + function assertPathEquals(p1: string, p2: string): void { if (isWindows) { p1 = normalizeDriveLetter(p1); p2 = normalizeDriveLetter(p2); diff --git a/src/vs/workbench/api/node/extHostApiCommands.ts b/src/vs/workbench/api/node/extHostApiCommands.ts index 92a88ce3067..1f05635a740 100644 --- a/src/vs/workbench/api/node/extHostApiCommands.ts +++ b/src/vs/workbench/api/node/extHostApiCommands.ts @@ -200,7 +200,7 @@ export class ExtHostApiCommands { description: 'Execute selection range provider.', args: [ { name: 'uri', description: 'Uri of a text document', constraint: URI }, - { name: 'positions', description: 'Positions in a text document', constraint: a => Array.isArray(a) } + { name: 'positions', description: 'Positions in a text document', constraint: Array.isArray } ], returns: 'A promise that resolves to an array of ranges.' }); diff --git a/src/vs/workbench/contrib/extensions/common/extensionQuery.ts b/src/vs/workbench/contrib/extensions/common/extensionQuery.ts index 23919a2f81b..25b9c3cf909 100644 --- a/src/vs/workbench/contrib/extensions/common/extensionQuery.ts +++ b/src/vs/workbench/contrib/extensions/common/extensionQuery.ts @@ -30,7 +30,7 @@ export class Query { return []; } if (subcommands[command]) { - return subcommands[command].map(subcommand => `@${command}:${subcommand}${subcommand === '' ? '' : ' '}`); + return subcommands[command].map((subcommand: string) => `@${command}:${subcommand}${subcommand === '' ? '' : ' '}`); } else { return [`@${command} `]; diff --git a/src/vs/workbench/contrib/extensions/electron-browser/extensionsWidgets.ts b/src/vs/workbench/contrib/extensions/electron-browser/extensionsWidgets.ts index fef07e755df..24e86db031c 100644 --- a/src/vs/workbench/contrib/extensions/electron-browser/extensionsWidgets.ts +++ b/src/vs/workbench/contrib/extensions/electron-browser/extensionsWidgets.ts @@ -12,7 +12,7 @@ import { localize } from 'vs/nls'; import { IExtensionManagementServerService, IExtensionTipsService } from 'vs/platform/extensionManagement/common/extensionManagement'; import { ILabelService } from 'vs/platform/label/common/label'; import { extensionButtonProminentBackground, extensionButtonProminentForeground } from 'vs/workbench/contrib/extensions/electron-browser/extensionsActions'; -import { IThemeService } from 'vs/platform/theme/common/themeService'; +import { IThemeService, ITheme } from 'vs/platform/theme/common/themeService'; import { STATUS_BAR_HOST_NAME_BACKGROUND, STATUS_BAR_FOREGROUND, STATUS_BAR_NO_FOLDER_FOREGROUND } from 'vs/workbench/common/theme'; import { IWorkspaceContextService, WorkbenchState } from 'vs/platform/workspace/common/workspace'; import { REMOTE_HOST_SCHEME } from 'vs/platform/remote/common/remoteHosts'; @@ -178,7 +178,7 @@ export class RecommendationWidget extends ExtensionWidget { this.element = append(this.parent, $('div.bookmark')); const recommendation = append(this.element, $('.recommendation')); append(recommendation, $('span.octicon.octicon-star')); - const applyBookmarkStyle = (theme) => { + const applyBookmarkStyle = (theme: ITheme) => { const bgColor = theme.getColor(extensionButtonProminentBackground); const fgColor = theme.getColor(extensionButtonProminentForeground); recommendation.style.borderTopColor = bgColor ? bgColor.toString() : 'transparent'; diff --git a/src/vs/workbench/contrib/files/browser/views/explorerViewer.ts b/src/vs/workbench/contrib/files/browser/views/explorerViewer.ts index 1c4d8c77fa4..6c219e140dd 100644 --- a/src/vs/workbench/contrib/files/browser/views/explorerViewer.ts +++ b/src/vs/workbench/contrib/files/browser/views/explorerViewer.ts @@ -67,7 +67,7 @@ export class ExplorerDataSource implements IAsyncDataSource { + const registerTelemetryChannel = (level: LogLevel) => { if (level === LogLevel.Trace && !outputChannelRegistry.getChannel(Constants.telemetryLogChannelId)) { outputChannelRegistry.registerChannel({ id: Constants.telemetryLogChannelId, label: nls.localize('telemetryLog', "Telemetry"), file: URI.file(join(environmentService.logsPath, `telemetry.log`)), log: true }); } diff --git a/src/vs/workbench/contrib/preferences/browser/settingsTreeModels.ts b/src/vs/workbench/contrib/preferences/browser/settingsTreeModels.ts index 4a5c96da7bb..c921692d541 100644 --- a/src/vs/workbench/contrib/preferences/browser/settingsTreeModels.ts +++ b/src/vs/workbench/contrib/preferences/browser/settingsTreeModels.ts @@ -378,7 +378,7 @@ function wordifyKey(key: string): string { } function trimCategoryForGroup(category: string, groupId: string): string { - const doTrim = forward => { + const doTrim = (forward: boolean) => { const parts = groupId.split('.'); while (parts.length) { const reg = new RegExp(`^${parts.join('\\.')}(\\.|$)`, 'i'); diff --git a/src/vs/workbench/contrib/tasks/common/taskService.ts b/src/vs/workbench/contrib/tasks/common/taskService.ts index 83180e1f43b..e8235e7877e 100644 --- a/src/vs/workbench/contrib/tasks/common/taskService.ts +++ b/src/vs/workbench/contrib/tasks/common/taskService.ts @@ -74,7 +74,7 @@ export interface ITaskService { getRecentlyUsedTasks(): LinkedMap; createSorter(): TaskSorter; - needsFolderQualification(); + needsFolderQualification(): boolean; canCustomize(task: ContributedTask | CustomTask): boolean; customize(task: ContributedTask | CustomTask, properties?: {}, openConfig?: boolean): Promise; openConfig(task: CustomTask | undefined): Promise; diff --git a/src/vs/workbench/contrib/tasks/node/processTaskSystem.ts b/src/vs/workbench/contrib/tasks/node/processTaskSystem.ts index f8c795e968e..6d27ba51b44 100644 --- a/src/vs/workbench/contrib/tasks/node/processTaskSystem.ts +++ b/src/vs/workbench/contrib/tasks/node/processTaskSystem.ts @@ -319,7 +319,7 @@ export class ProcessTaskSystem implements ITaskSystem { this.activeTask = task; const inactiveEvent = TaskEvent.create(TaskEventKind.Inactive, task); let processStartedSignaled: boolean = false; - const onProgress = (progress) => { + const onProgress = (progress: LineData) => { let line = Strings.removeAnsiEscapeCodes(progress.line); this.appendOutput(line + '\n'); startStopProblemMatcher.processLine(line); diff --git a/src/vs/workbench/contrib/themes/browser/themes.contribution.ts b/src/vs/workbench/contrib/themes/browser/themes.contribution.ts index 10167ea1196..b7742f81760 100644 --- a/src/vs/workbench/contrib/themes/browser/themes.contribution.ts +++ b/src/vs/workbench/contrib/themes/browser/themes.contribution.ts @@ -52,7 +52,7 @@ export class SelectColorThemeAction extends Action { configurationEntries(this.extensionGalleryService, localize('installColorThemes', "Install Additional Color Themes...")) ); - const selectTheme = (theme, applyTheme: boolean) => { + const selectTheme = (theme: IColorTheme, applyTheme: boolean) => { if (typeof theme.id === 'undefined') { // 'pick in marketplace' entry if (applyTheme) { openExtensionViewlet(this.viewletService, 'category:themes '); diff --git a/src/vs/workbench/contrib/webview/electron-browser/webviewElement.ts b/src/vs/workbench/contrib/webview/electron-browser/webviewElement.ts index 83b2774163a..896d9556f4a 100644 --- a/src/vs/workbench/contrib/webview/electron-browser/webviewElement.ts +++ b/src/vs/workbench/contrib/webview/electron-browser/webviewElement.ts @@ -101,7 +101,7 @@ class WebviewSession extends Disposable { this._onBeforeRequestDelegates.push(delegate); } - public onHeadersReceived(delegate) { + public onHeadersReceived(delegate: OnHeadersReceivedDelegate) { this._onHeadersReceivedDelegates.push(delegate); } } @@ -582,7 +582,7 @@ export class WebviewElement extends Disposable { if (!window || !window.webContents || window.webContents.isDestroyed()) { return; } - window.webContents.getZoomFactor(factor => { + window.webContents.getZoomFactor((factor: number) => { if (contents.isDestroyed()) { return; } diff --git a/src/vs/workbench/services/extensions/node/extensionHostProcess.ts b/src/vs/workbench/services/extensions/node/extensionHostProcess.ts index 21e8a77882e..faf866b4720 100644 --- a/src/vs/workbench/services/extensions/node/extensionHostProcess.ts +++ b/src/vs/workbench/services/extensions/node/extensionHostProcess.ts @@ -23,7 +23,7 @@ import { exit, ExtensionHostMain } from 'vs/workbench/services/extensions/node/e const Module = require.__$__nodeRequire('module') as any; const originalLoad = Module._load; - Module._load = function (request) { + Module._load = function (request: string) { if (request === 'natives') { throw new Error('Either the extension or a NPM dependency is using the "natives" node module which is unsupported as it can cause a crash of the extension host. Click [here](https://go.microsoft.com/fwlink/?linkid=871887) to find out more'); } diff --git a/src/vs/workbench/services/extensions/node/lazyPromise.ts b/src/vs/workbench/services/extensions/node/lazyPromise.ts index 412a2a2370e..6cd7ce76aa6 100644 --- a/src/vs/workbench/services/extensions/node/lazyPromise.ts +++ b/src/vs/workbench/services/extensions/node/lazyPromise.ts @@ -83,7 +83,7 @@ export class LazyPromise implements Promise { return this._ensureActual().then(undefined, error); } - public finally(callback): any { + public finally(callback: () => void): any { return this._ensureActual().finally(callback); } } diff --git a/src/vs/workbench/services/hash/common/hashService.ts b/src/vs/workbench/services/hash/common/hashService.ts index a8cbd8d9e6d..471a4b14fd3 100644 --- a/src/vs/workbench/services/hash/common/hashService.ts +++ b/src/vs/workbench/services/hash/common/hashService.ts @@ -24,7 +24,7 @@ export class HashService implements IHashService { createSHA1(content: string): Thenable { return crypto.subtle.digest('SHA-1', new TextEncoder().encode(content)).then(buffer => { // https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/digest#Converting_a_digest_to_a_hex_string - return Array.prototype.map.call(new Uint8Array(buffer), value => `00${value.toString(16)}`.slice(-2)).join(''); + return Array.prototype.map.call(new Uint8Array(buffer), (value: number) => `00${value.toString(16)}`.slice(-2)).join(''); }); } }