From 73fbb9da18daf04d9cc1d330003011addadaece1 Mon Sep 17 00:00:00 2001 From: Matt Bierner Date: Thu, 24 Oct 2019 15:03:03 -0700 Subject: [PATCH] Use proper map --- .../src/utils/typingsStatus.ts | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/extensions/typescript-language-features/src/utils/typingsStatus.ts b/extensions/typescript-language-features/src/utils/typingsStatus.ts index 370e45f9251..6c316509bae 100644 --- a/extensions/typescript-language-features/src/utils/typingsStatus.ts +++ b/extensions/typescript-language-features/src/utils/typingsStatus.ts @@ -13,8 +13,8 @@ const localize = loadMessageBundle(); const typingsInstallTimeout = 30 * 1000; export default class TypingsStatus extends Disposable { - private _acquiringTypings: { [eventId: string]: NodeJS.Timer } = Object.create({}); - private _client: ITypeScriptServiceClient; + private readonly _acquiringTypings = new Map(); + private readonly _client: ITypeScriptServiceClient; constructor(client: ITypeScriptServiceClient) { super(); @@ -30,8 +30,8 @@ export default class TypingsStatus extends Disposable { public dispose(): void { super.dispose(); - for (const eventId of Object.keys(this._acquiringTypings)) { - clearTimeout(this._acquiringTypings[eventId]); + for (const timeout of this._acquiringTypings.values()) { + clearTimeout(timeout); } } @@ -40,20 +40,20 @@ export default class TypingsStatus extends Disposable { } private onBeginInstallTypings(eventId: number): void { - if (this._acquiringTypings[eventId]) { + if (this._acquiringTypings.has(eventId)) { return; } - this._acquiringTypings[eventId] = setTimeout(() => { + this._acquiringTypings.set(eventId, setTimeout(() => { this.onEndInstallTypings(eventId); - }, typingsInstallTimeout); + }, typingsInstallTimeout)); } private onEndInstallTypings(eventId: number): void { - const timer = this._acquiringTypings[eventId]; + const timer = this._acquiringTypings.get(eventId); if (timer) { clearTimeout(timer); } - delete this._acquiringTypings[eventId]; + this._acquiringTypings.delete(eventId); } }