diff --git a/src/vs/base/common/types.ts b/src/vs/base/common/types.ts index c79bf915eac41f7c90f22f122bb378e67ad04b16..becfb359e7c0fb2d3697b4d12236df1abe534bc6 100644 --- a/src/vs/base/common/types.ts +++ b/src/vs/base/common/types.ts @@ -174,7 +174,7 @@ export function create(ctor: Function, ...args: any[]): any { } // https://stackoverflow.com/a/32235645/1499159 -function isNativeClass(thing): boolean { +function isNativeClass(thing: any): boolean { return typeof thing === 'function' && thing.hasOwnProperty('prototype') && !thing.hasOwnProperty('arguments'); diff --git a/src/vs/code/electron-main/windows.ts b/src/vs/code/electron-main/windows.ts index 5f1d6722ab13ed47ab6b083d4b74364b6709f15d..6f8fba6a407dffc4db2371a1e1c27bbab49c8e81 100644 --- a/src/vs/code/electron-main/windows.ts +++ b/src/vs/code/electron-main/windows.ts @@ -746,7 +746,7 @@ export class WindowsManager implements IWindowsMainService { private doOpenFilesInExistingWindow(configuration: IOpenConfiguration, window: ICodeWindow, fileInputs?: IFileInputs): ICodeWindow { window.focus(); // make sure window has focus - const params: { filesToOpen?, filesToCreate?, filesToDiff?, filesToWait?, termProgram?} = {}; + const params: { filesToOpen?: IPath[], filesToCreate?: IPath[], filesToDiff?: IPath[], filesToWait?: IPathsToWaitFor, termProgram?: string } = {}; if (fileInputs) { params.filesToOpen = fileInputs.filesToOpen; params.filesToCreate = fileInputs.filesToCreate; diff --git a/src/vs/platform/extensionManagement/common/extensionManagementUtil.ts b/src/vs/platform/extensionManagement/common/extensionManagementUtil.ts index 1099a0be9ba409e38ac1fae1e5585d2b9f18d631..162cf268b71b429fed17ede9fd8fe4571983ced8 100644 --- a/src/vs/platform/extensionManagement/common/extensionManagementUtil.ts +++ b/src/vs/platform/extensionManagement/common/extensionManagementUtil.ts @@ -26,7 +26,7 @@ export function getGalleryExtensionId(publisher: string, name: string): string { export function groupByExtension(extensions: T[], getExtensionIdentifier: (t: T) => IExtensionIdentifier): T[][] { const byExtension: T[][] = []; - const findGroup = extension => { + const findGroup = (extension: T) => { for (const group of byExtension) { if (group.some(e => areSameExtensions(getExtensionIdentifier(e), getExtensionIdentifier(extension)))) { return group; diff --git a/src/vs/platform/extensionManagement/node/extensionLifecycle.ts b/src/vs/platform/extensionManagement/node/extensionLifecycle.ts index 57b5112f8f427f57a05c9a2429d58abe0b744948..d252d404a60de9f82338e982b6614a19301d26b4 100644 --- a/src/vs/platform/extensionManagement/node/extensionLifecycle.ts +++ b/src/vs/platform/extensionManagement/node/extensionLifecycle.ts @@ -54,7 +54,7 @@ export class ExtensionsLifecycle extends Disposable { return new Promise((c, e) => { const extensionLifecycleProcess = this.start(lifecycleHook, lifecycleType, args, extension); - let timeoutHandler; + let timeoutHandler: any; const onexit = (error?: string) => { if (timeoutHandler) { diff --git a/src/vs/platform/extensionManagement/node/extensionManagementIpc.ts b/src/vs/platform/extensionManagement/node/extensionManagementIpc.ts index 8d4232a2bbc1fbf0a4e6d052f4be031d3dd7f49d..9937ddec04cf24e25dd5655c5c68238c28095fec 100644 --- a/src/vs/platform/extensionManagement/node/extensionManagementIpc.ts +++ b/src/vs/platform/extensionManagement/node/extensionManagementIpc.ts @@ -44,7 +44,7 @@ export class ExtensionManagementChannel implements IServerChannel { this.onDidUninstallExtension = Event.buffer(service.onDidUninstallExtension, true); } - listen(context, event: string): Event { + listen(context: any, event: string): Event { const uriTransformer = this.getUriTransformer(context); switch (event) { case 'onInstallExtension': return this.onInstallExtension; @@ -56,7 +56,7 @@ export class ExtensionManagementChannel implements IServerChannel { throw new Error('Invalid listen'); } - call(context, command: string, args?: any): Promise { + call(context: any, command: string, args?: any): Promise { const uriTransformer: IURITransformer | null = this.getUriTransformer(context); switch (command) { case 'zip': return this.service.zip(transformIncomingExtension(args[0], uriTransformer)).then(uri => transformOutgoingURI(uri, uriTransformer)); diff --git a/src/vs/workbench/api/electron-browser/mainThreadWebview.ts b/src/vs/workbench/api/electron-browser/mainThreadWebview.ts index a16e2ddd5c75367e7a958a6a34842dd6fc3b7a4d..16433f0a226df6e9448d938e43e9efacbdae64e8 100644 --- a/src/vs/workbench/api/electron-browser/mainThreadWebview.ts +++ b/src/vs/workbench/api/electron-browser/mainThreadWebview.ts @@ -272,8 +272,8 @@ export class MainThreadWebviews extends Disposable implements MainThreadWebviews private createWebviewEventDelegate(handle: WebviewPanelHandle) { return { - onDidClickLink: uri => this.onDidClickLink(handle, uri), - onMessage: message => this._proxy.$onMessage(handle, message), + onDidClickLink: (uri: URI) => this.onDidClickLink(handle, uri), + onMessage: (message: any) => this._proxy.$onMessage(handle, message), onDispose: () => { this._proxy.$onDidDisposeWebviewPanel(handle).finally(() => { this._webviews.delete(handle); diff --git a/src/vs/workbench/api/node/extHostQuickOpen.ts b/src/vs/workbench/api/node/extHostQuickOpen.ts index 7afc9378df32a102edcc3b2d41a952ae948ff9fb..f08a48ec5a1f08843ab5bd025bc9971832504c0e 100644 --- a/src/vs/workbench/api/node/extHostQuickOpen.ts +++ b/src/vs/workbench/api/node/extHostQuickOpen.ts @@ -175,13 +175,13 @@ export class ExtHostQuickOpen implements ExtHostQuickOpenShape { // ---- QuickInput createQuickPick(extensionId: ExtensionIdentifier, enableProposedApi: boolean): QuickPick { - const session = new ExtHostQuickPick(this._proxy, extensionId, enableProposedApi, () => this._sessions.delete(session._id)); + const session: ExtHostQuickPick = new ExtHostQuickPick(this._proxy, extensionId, enableProposedApi, () => this._sessions.delete(session._id)); this._sessions.set(session._id, session); return session; } createInputBox(extensionId: ExtensionIdentifier): InputBox { - const session = new ExtHostInputBox(this._proxy, extensionId, () => this._sessions.delete(session._id)); + const session: ExtHostInputBox = new ExtHostInputBox(this._proxy, extensionId, () => this._sessions.delete(session._id)); this._sessions.set(session._id, session); return session; } @@ -379,7 +379,7 @@ class ExtHostQuickInput implements QuickInput { this._onDidAcceptEmitter.fire(); } - _fireDidChangeValue(value) { + _fireDidChangeValue(value: string) { this._value = value; this._onDidChangeValueEmitter.fire(value); } diff --git a/src/vs/workbench/api/node/extHostTreeViews.ts b/src/vs/workbench/api/node/extHostTreeViews.ts index 860d11ffb64ccc886cca2d4d7b100d16cfc9401a..bb2dae917379aecdef9445232314ab3a7a7ed5ba 100644 --- a/src/vs/workbench/api/node/extHostTreeViews.ts +++ b/src/vs/workbench/api/node/extHostTreeViews.ts @@ -186,7 +186,8 @@ class ExtHostTreeView extends Disposable { this._register(this.dataProvider.onDidChangeTreeData(element => this._onDidChangeData.fire({ message: false, element }))); } - let refreshingPromise, promiseCallback; + let refreshingPromise: Promise | null; + let promiseCallback: () => void; this._register(Event.debounce, { message: boolean, elements: (T | Root)[] }>(this._onDidChangeData.event, (result, current) => { if (!result) { result = { message: false, elements: [] }; @@ -195,7 +196,7 @@ class ExtHostTreeView extends Disposable { if (!refreshingPromise) { // New refresh has started refreshingPromise = new Promise(c => promiseCallback = c); - this.refreshPromise = this.refreshPromise.then(() => refreshingPromise); + this.refreshPromise = this.refreshPromise.then(() => refreshingPromise!); } result.elements.push(current.element); } diff --git a/src/vs/workbench/browser/nodeless.simpleservices.ts b/src/vs/workbench/browser/nodeless.simpleservices.ts index e08fe1645db700f0c7a82e99bbb01d2ceb01b169..297d4d64554209a7d9332d5929968317fedcd0b5 100644 --- a/src/vs/workbench/browser/nodeless.simpleservices.ts +++ b/src/vs/workbench/browser/nodeless.simpleservices.ts @@ -791,7 +791,7 @@ export class SimpleRemoteFileService implements IFileService { return Promise.resolve(createFolder(parent, basename(_resource.path))); } - registerProvider(_scheme: string, _provider) { return { dispose() { } }; } + registerProvider() { return { dispose() { } }; } activateProvider(_scheme: string): Promise { return Promise.resolve(undefined); } @@ -1059,14 +1059,14 @@ export const IRequestService = createDecorator('requestService' export interface IRequestService { _serviceBrand: any; - request(options, token: CancellationToken): Promise; + request(options: any, token: CancellationToken): Promise; } export class SimpleRequestService implements IRequestService { _serviceBrand: any; - request(options, token: CancellationToken): Promise { + request(options: any, token: CancellationToken): Promise { return Promise.resolve(Object.create(null)); } } diff --git a/src/vs/workbench/browser/parts/quickinput/quickInput.ts b/src/vs/workbench/browser/parts/quickinput/quickInput.ts index 67f3da5e76912672679b856cbc616c4738c2d08e..95febd67b8cfcb88f675c4b23f21eef78f63a325 100644 --- a/src/vs/workbench/browser/parts/quickinput/quickInput.ts +++ b/src/vs/workbench/browser/parts/quickinput/quickInput.ts @@ -309,7 +309,7 @@ class QuickPick extends QuickInput implements IQuickPi private static INPUT_BOX_ARIA_LABEL = localize('quickInputBox.ariaLabel', "Type to narrow down results."); private _value = ''; - private _placeholder; + private _placeholder: string; private onDidChangeValueEmitter = new Emitter(); private onDidAcceptEmitter = new Emitter(); private _items: Array = []; diff --git a/src/vs/workbench/common/actions.ts b/src/vs/workbench/common/actions.ts index fa82000a8cbbf4eaeb0b17fcca903d3220537a05..8db73d85924f83fef4e8f44633a585df28b4a226 100644 --- a/src/vs/workbench/common/actions.ts +++ b/src/vs/workbench/common/actions.ts @@ -6,7 +6,7 @@ import { Registry } from 'vs/platform/registry/common/platform'; import { KeybindingsRegistry, KeybindingWeight } from 'vs/platform/keybinding/common/keybindingsRegistry'; import { ICommandHandler, CommandsRegistry } from 'vs/platform/commands/common/commands'; -import { SyncActionDescriptor, MenuRegistry, MenuId } from 'vs/platform/actions/common/actions'; +import { SyncActionDescriptor, MenuRegistry, MenuId, ICommandAction } from 'vs/platform/actions/common/actions'; import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation'; import { IDisposable, combinedDisposable } from 'vs/base/common/lifecycle'; import { ILifecycleService, LifecyclePhase } from 'vs/platform/lifecycle/common/lifecycle'; @@ -58,16 +58,16 @@ Registry.add(Extensions.WorkbenchActions, new class implements IWorkbenchActionR if (descriptor.label) { let idx = alias.indexOf(': '); - let categoryOriginal; + let categoryOriginal = ''; if (idx > 0) { categoryOriginal = alias.substr(0, idx); alias = alias.substr(idx + 2); } - const command = { + const command: ICommandAction = { id: descriptor.id, title: { value: descriptor.label, original: alias }, - category: category && { value: category, original: categoryOriginal } + category: category ? { value: category, original: categoryOriginal } : undefined }; MenuRegistry.addCommand(command); diff --git a/src/vs/workbench/contrib/comments/electron-browser/commentThreadWidget.ts b/src/vs/workbench/contrib/comments/electron-browser/commentThreadWidget.ts index 5232665916976c1101d976ff04a7daf85cfd693f..502fb85a5fbba071ded08720f5434ef99723a021 100644 --- a/src/vs/workbench/contrib/comments/electron-browser/commentThreadWidget.ts +++ b/src/vs/workbench/contrib/comments/electron-browser/commentThreadWidget.ts @@ -60,7 +60,7 @@ export class ReviewZoneWidget extends ZoneWidget implements ICommentThreadWidget private _resizeObserver: any; private _onDidClose = new Emitter(); private _onDidCreateThread = new Emitter(); - private _isCollapsed; + private _isCollapsed: boolean; private _collapseAction: Action; private _commentGlyph?: CommentGlyphWidget; private _submitActionsDisposables: IDisposable[]; diff --git a/src/vs/workbench/contrib/tasks/electron-browser/task.contribution.ts b/src/vs/workbench/contrib/tasks/electron-browser/task.contribution.ts index 8cb24ac304fbf7e9889179600189d6e0f11a0455..8051af8d1ff79df108c881e61513bdbdd666ebd6 100644 --- a/src/vs/workbench/contrib/tasks/electron-browser/task.contribution.ts +++ b/src/vs/workbench/contrib/tasks/electron-browser/task.contribution.ts @@ -156,9 +156,9 @@ class BuildStatusBarItem extends Themable implements IStatusbarItem { const info = document.createElement('div'); const building = document.createElement('div'); - const errorTitle = n => nls.localize('totalErrors', "{0} Errors", n); - const warningTitle = n => nls.localize('totalWarnings', "{0} Warnings", n); - const infoTitle = n => nls.localize('totalInfos', "{0} Infos", n); + const errorTitle = (n: number) => nls.localize('totalErrors', "{0} Errors", n); + const warningTitle = (n: number) => nls.localize('totalWarnings', "{0} Warnings", n); + const infoTitle = (n: number) => nls.localize('totalInfos', "{0} Infos", n); Dom.addClass(element, 'task-statusbar-item'); element.title = nls.localize('problems', "Problems"); @@ -211,7 +211,7 @@ class BuildStatusBarItem extends Themable implements IStatusbarItem { })); const manyProblems = nls.localize('manyProblems', "10K+"); - const packNumber = n => n > 9999 ? manyProblems : n > 999 ? n.toString().charAt(0) + 'K' : n.toString(); + const packNumber = (n: number) => n > 9999 ? manyProblems : n > 999 ? n.toString().charAt(0) + 'K' : n.toString(); let updateLabel = (stats: MarkerStatistics) => { error.innerHTML = packNumber(stats.errors); error.title = errorIcon.title = errorTitle(stats.errors);