Skip to content

Commit 8087fcc

Browse files
committed
Fix type imports and ESLint directives
1 parent 3d1cbd9 commit 8087fcc

22 files changed

+120
-93
lines changed

src/extension.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import { DebugSessionFeature } from "./features/DebugSession";
1010
import { ExamplesFeature } from "./features/Examples";
1111
import { ExpandAliasFeature } from "./features/ExpandAlias";
1212
import { ExtensionCommandsFeature } from "./features/ExtensionCommands";
13-
import { ExternalApiFeature, IPowerShellExtensionClient } from "./features/ExternalApi";
13+
import { ExternalApiFeature, type IPowerShellExtensionClient } from "./features/ExternalApi";
1414
import { GenerateBugReportFeature } from "./features/GenerateBugReport";
1515
import { GetCommandsFeature } from "./features/GetCommands";
1616
import { HelpCompletionFeature } from "./features/HelpCompletion";
@@ -82,7 +82,6 @@ export async function activate(context: vscode.ExtensionContext): Promise<IPower
8282
// e.g. /** | */
8383
// eslint-disable-next-line no-useless-escape
8484
beforeText: /^\s*\/\*\*(?!\/)([^\*]|\*(?!\/))*$/,
85-
// eslint-disable-next-line no-useless-escape
8685
afterText: /^\s*\*\/$/,
8786
action: { indentAction: vscode.IndentAction.IndentOutdent, appendText: " * " },
8887
},
@@ -201,7 +200,7 @@ function registerWaitForPsesActivationCommand(context: vscode.ExtensionContext):
201200
const pidFile = vscode.Uri.joinPath(context.globalStorageUri, "sessions", pidFileName);
202201
const fs = vscode.workspace.fs;
203202
// Wait for the file to be created
204-
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition, no-constant-condition
203+
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
205204
while (true) {
206205
try {
207206
const pidContent = await fs.readFile(pidFile);

src/features/CodeActions.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
// Licensed under the MIT License.
33

44
import vscode = require("vscode");
5-
import { ILogger } from "../logging";
5+
import type { ILogger } from "../logging";
66

77
export class CodeActionsFeature implements vscode.Disposable {
88
private command: vscode.Disposable;

src/features/Console.ts

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,11 @@
44
import vscode = require("vscode");
55
import { NotificationType, RequestType } from "vscode-languageclient";
66
import { LanguageClient } from "vscode-languageclient/node";
7-
import { ICheckboxQuickPickItem, showCheckboxQuickPick } from "../controls/checkboxQuickPick";
8-
import { ILogger } from "../logging";
7+
import {
8+
type ICheckboxQuickPickItem,
9+
showCheckboxQuickPick,
10+
} from "../controls/checkboxQuickPick";
11+
import type { ILogger } from "../logging";
912
import { getSettings } from "../settings";
1013
import { LanguageClientConsumer } from "../languageClientConsumer";
1114

src/features/DebugSession.ts

Lines changed: 26 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -2,39 +2,39 @@
22
// Licensed under the MIT License.
33

44
import {
5-
debug,
6-
CancellationToken,
7-
CancellationTokenSource,
8-
DebugAdapterDescriptor,
9-
DebugAdapterDescriptorFactory,
10-
DebugAdapterExecutable,
11-
DebugAdapterNamedPipeServer,
12-
DebugConfiguration,
13-
DebugConfigurationProvider,
14-
DebugSession,
15-
ExtensionContext,
16-
WorkspaceFolder,
17-
Disposable,
18-
window,
19-
extensions,
20-
workspace,
21-
commands,
22-
InputBoxOptions,
23-
QuickPickItem,
24-
QuickPickOptions,
25-
DebugConfigurationProviderTriggerKind,
26-
DebugAdapterTrackerFactory,
27-
DebugAdapterTracker,
28-
LogOutputChannel
5+
debug,
6+
type CancellationToken,
7+
CancellationTokenSource,
8+
type DebugAdapterDescriptor,
9+
type DebugAdapterDescriptorFactory,
10+
DebugAdapterExecutable,
11+
DebugAdapterNamedPipeServer,
12+
type DebugConfiguration,
13+
type DebugConfigurationProvider,
14+
type DebugSession,
15+
type ExtensionContext,
16+
type WorkspaceFolder,
17+
Disposable,
18+
window,
19+
extensions,
20+
workspace,
21+
commands,
22+
type InputBoxOptions,
23+
type QuickPickItem,
24+
type QuickPickOptions,
25+
DebugConfigurationProviderTriggerKind,
26+
type DebugAdapterTrackerFactory,
27+
type DebugAdapterTracker,
28+
type LogOutputChannel,
2929
} from "vscode";
3030
import type { DebugProtocol } from "@vscode/debugprotocol";
3131
import { NotificationType, RequestType } from "vscode-languageclient";
3232
import { LanguageClient } from "vscode-languageclient/node";
3333
import { LanguageClientConsumer } from "../languageClientConsumer";
34-
import { ILogger } from "../logging";
34+
import type { ILogger } from "../logging";
3535
import { OperatingSystem, getPlatformDetails } from "../platform";
3636
import { PowerShellProcess } from "../process";
37-
import { IEditorServicesSessionDetails, SessionManager } from "../session";
37+
import { type IEditorServicesSessionDetails, SessionManager } from "../session";
3838
import { getSettings } from "../settings";
3939
import path from "path";
4040
import { checkIfFileExists } from "../utils";
@@ -703,7 +703,6 @@ interface IProcessItem extends QuickPickItem {
703703
processId: number; // payload for the QuickPick UI
704704
}
705705

706-
// eslint-disable-next-line @typescript-eslint/no-empty-interface
707706
interface IGetPSHostProcessesArguments {
708707
}
709708

@@ -722,7 +721,6 @@ interface IRunspaceItem extends QuickPickItem {
722721
id: number; // payload for the QuickPick UI
723722
}
724723

725-
// eslint-disable-next-line @typescript-eslint/no-empty-interface
726724
interface IGetRunspaceRequestArguments {
727725
}
728726

src/features/ExpandAlias.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,9 @@ import { RequestType } from "vscode-languageclient";
66
import { LanguageClientConsumer } from "../languageClientConsumer";
77
import type { LanguageClient } from "vscode-languageclient/node";
88

9-
// eslint-disable-next-line @typescript-eslint/no-empty-interface
109
interface IExpandAliasRequestArguments {
1110
}
1211

13-
// eslint-disable-next-line @typescript-eslint/no-empty-interface
1412
interface IExpandAliasRequestResponse {
1513
text: string
1614
}
@@ -52,7 +50,6 @@ export class ExpandAliasFeature extends LanguageClientConsumer {
5250
});
5351
}
5452

55-
// eslint-disable-next-line @typescript-eslint/no-empty-function
5653
public override onLanguageClientSet(_languageClient: LanguageClient): void {}
5754

5855
public dispose(): void {

src/features/ExtensionCommands.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import {
88
Position, Range, RequestType
99
} from "vscode-languageclient";
1010
import { LanguageClient } from "vscode-languageclient/node";
11-
import { ILogger } from "../logging";
11+
import type { ILogger } from "../logging";
1212
import { getSettings, validateCwdSetting } from "../settings";
1313
import { LanguageClientConsumer } from "../languageClientConsumer";
1414
import { DebugConfig, DebugConfigurations } from "./DebugSession";
@@ -64,7 +64,6 @@ export const GetEditorContextRequestType =
6464
new RequestType<IGetEditorContextRequestArguments, IEditorContext, void>(
6565
"editor/getEditorContext");
6666

67-
// eslint-disable-next-line @typescript-eslint/no-empty-interface
6867
export interface IGetEditorContextRequestArguments {
6968
}
7069

src/features/ExternalApi.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33

44
import * as vscode from "vscode";
55
import { v4 as uuidv4 } from "uuid";
6-
import { ILogger } from "../logging";
6+
import type { ILogger } from "../logging";
77
import { SessionManager } from "../session";
88

99
export interface IExternalPowerShellDetails {

src/features/HelpCompletion.ts

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,16 @@
33

44
import {
55
Disposable, EndOfLine, Range, SnippetString,
6-
TextDocument, TextDocumentChangeEvent, window, workspace
6+
type TextDocument, type TextDocumentChangeEvent, window, workspace
77
} from "vscode";
88
import { RequestType } from "vscode-languageclient";
99
import { LanguageClient } from "vscode-languageclient/node";
1010
import { Settings, CommentType, getSettings } from "../settings";
1111
import { LanguageClientConsumer } from "../languageClientConsumer";
1212

13-
// eslint-disable-next-line @typescript-eslint/no-empty-interface
1413
interface ICommentHelpRequestArguments {
1514
}
1615

17-
// eslint-disable-next-line @typescript-eslint/no-empty-interface
1816
interface ICommentHelpRequestResponse {
1917
content: string[]
2018
}
@@ -88,7 +86,6 @@ class TriggerFinder {
8886
public updateState(document: TextDocument, changeText: string): void {
8987
switch (this.state) {
9088
case SearchState.Searching:
91-
// eslint-disable-next-line @typescript-eslint/prefer-string-starts-ends-with
9289
if (changeText.length === 1 && changeText[0] === this.triggerCharacters[this.count]) {
9390
this.state = SearchState.Locked;
9491
this.document = document;
@@ -97,7 +94,6 @@ class TriggerFinder {
9794
break;
9895

9996
case SearchState.Locked:
100-
// eslint-disable-next-line @typescript-eslint/prefer-string-starts-ends-with
10197
if (document === this.document && changeText.length === 1 && changeText[0] === this.triggerCharacters[this.count]) {
10298
this.count++;
10399
if (this.count === this.triggerCharacters.length) {
@@ -136,7 +132,6 @@ class HelpCompletionProvider extends LanguageClientConsumer {
136132
return this.triggerFinderHelpComment.found;
137133
}
138134

139-
// eslint-disable-next-line @typescript-eslint/no-empty-function
140135
public override onLanguageClientSet(_languageClient: LanguageClient): void {}
141136

142137
public updateState(document: TextDocument, changeText: string, changeRange: Range): void {

src/features/PesterTests.ts

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33

44
import * as path from "path";
55
import vscode = require("vscode");
6-
import { ILogger } from "../logging";
6+
import type { ILogger } from "../logging";
77
import { SessionManager } from "../session";
88
import { getSettings, getChosenWorkspace } from "../settings";
99
import utils = require("../utils");
@@ -53,9 +53,7 @@ export class PesterTestsFeature implements vscode.Disposable {
5353
launchType: LaunchType,
5454
fileUri?: vscode.Uri): Promise<boolean> {
5555

56-
if (fileUri === undefined) {
57-
fileUri = vscode.window.activeTextEditor?.document.uri;
58-
}
56+
fileUri ??= vscode.window.activeTextEditor?.document.uri;
5957

6058
if (fileUri === undefined) {
6159
return false;

src/features/RemoteFiles.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,6 @@ export class RemoteFilesFeature extends LanguageClientConsumer {
4949
});
5050
}
5151

52-
// eslint-disable-next-line @typescript-eslint/no-empty-function
5352
public override onLanguageClientSet(_languageClient: LanguageClient): void {}
5453

5554
public dispose(): void {

src/features/ShowHelp.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ import { NotificationType } from "vscode-languageclient";
66
import { LanguageClientConsumer } from "../languageClientConsumer";
77
import type { LanguageClient } from "vscode-languageclient/node";
88

9-
// eslint-disable-next-line @typescript-eslint/no-empty-interface
109
interface IShowHelpNotificationArguments {
1110
}
1211

@@ -40,7 +39,6 @@ export class ShowHelpFeature extends LanguageClientConsumer {
4039
});
4140
}
4241

43-
// eslint-disable-next-line @typescript-eslint/no-empty-function
4442
public override onLanguageClientSet(_languageClient: LanguageClient): void {}
4543

4644
public dispose(): void {

src/features/UpdatePowerShell.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ import fetch from "node-fetch";
55
import { SemVer } from "semver";
66
import vscode = require("vscode");
77

8-
import { ILogger } from "../logging";
9-
import { IPowerShellVersionDetails } from "../session";
8+
import type { ILogger } from "../logging";
9+
import type { IPowerShellVersionDetails } from "../session";
1010
import { changeSetting, Settings } from "../settings";
1111

1212
interface IUpdateMessageItem extends vscode.MessageItem {

src/logging.ts

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
// Copyright (c) Microsoft Corporation.
22
// Licensed under the MIT License.
33

4-
import { LogOutputChannel, LogLevel, window, Event } from "vscode";
4+
import { type LogOutputChannel, LogLevel, window, type Event } from "vscode";
55

66
/** Interface for logging operations. New features should use this interface for the "type" of logger.
77
* This will allow for easy mocking of the logger during unit tests.
@@ -140,9 +140,7 @@ export class Logger implements ILogger {
140140
export class LanguageClientOutputChannelAdapter implements LogOutputChannel {
141141
private _channel: LogOutputChannel | undefined;
142142
private get channel(): LogOutputChannel {
143-
if (!this._channel) {
144-
this._channel = window.createOutputChannel(this.channelName, {log: true});
145-
}
143+
this._channel ??= window.createOutputChannel(this.channelName, {log: true});
146144
return this._channel;
147145
}
148146

src/platform.ts

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,11 @@ import * as path from "path";
66
import * as process from "process";
77
import vscode = require("vscode");
88
import { integer } from "vscode-languageserver-protocol";
9-
import { ILogger } from "./logging";
10-
import { changeSetting, getSettings, PowerShellAdditionalExePathSettings } from "./settings";
9+
import type { ILogger } from "./logging";
10+
import { changeSetting, getSettings, type PowerShellAdditionalExePathSettings } from "./settings";
1111
import untildify from "untildify";
1212

1313
// This uses require so we can rewire it in unit tests!
14-
// eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-var-requires
1514
const utils = require("./utils");
1615

1716
const WindowsPowerShell64BitLabel = "Windows PowerShell (x64)";
@@ -631,9 +630,7 @@ class PossiblePowerShellExe implements IPossiblePowerShellExe {
631630
public readonly suppressWarning = false) { }
632631

633632
public async exists(): Promise<boolean> {
634-
if (this.knownToExist === undefined) {
635-
this.knownToExist = await utils.checkIfFileExists(this.exePath);
636-
}
633+
this.knownToExist ??= await utils.checkIfFileExists(this.exePath);
637634
return this.knownToExist ?? false;
638635
}
639636
}

src/process.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@
44
import cp = require("child_process");
55
import path = require("path");
66
import vscode = require("vscode");
7-
import { ILogger } from "./logging";
7+
import type { ILogger } from "./logging";
88
import { Settings, validateCwdSetting } from "./settings";
99
import utils = require("./utils");
10-
import { IEditorServicesSessionDetails } from "./session";
10+
import type { IEditorServicesSessionDetails } from "./session";
1111
import { promisify } from "util";
1212

1313
export class PowerShellProcess {

0 commit comments

Comments
 (0)