|
1 | 1 | // Copyright (c) Microsoft Corporation. |
2 | 2 | // Licensed under the MIT License. |
3 | 3 |
|
| 4 | +// TODO: PSES does not currently support findModule...so this whole thing is broken! |
| 5 | + |
4 | 6 | import vscode = require("vscode"); |
5 | 7 | import { RequestType } from "vscode-languageclient"; |
6 | 8 | import QuickPickItem = vscode.QuickPickItem; |
7 | 9 | import { LanguageClientConsumer } from "../languageClientConsumer"; |
8 | 10 |
|
| 11 | +// eslint-disable-next-line @typescript-eslint/no-empty-interface |
| 12 | +interface IFindModuleRequestArguments { |
| 13 | +} |
| 14 | + |
| 15 | +// eslint-disable-next-line @typescript-eslint/no-empty-interface |
| 16 | +interface IModule { |
| 17 | + name: string, |
| 18 | + description: string |
| 19 | +} |
| 20 | + |
9 | 21 | export const FindModuleRequestType = |
10 | | - new RequestType<any, any, void>("powerShell/findModule"); |
| 22 | + new RequestType<IFindModuleRequestArguments, IModule[], void>("powerShell/findModule"); |
11 | 23 |
|
12 | 24 | export const InstallModuleRequestType = |
13 | 25 | new RequestType<string, void, void>("powerShell/installModule"); |
@@ -66,12 +78,8 @@ export class FindModuleFeature extends LanguageClientConsumer { |
66 | 78 | return Promise.resolve(""); |
67 | 79 | } |
68 | 80 |
|
69 | | - if (modules !== undefined) { |
70 | | - for (const item in modules) { |
71 | | - if (modules.hasOwnProperty(item)) { |
72 | | - items.push({ label: modules[item].name, description: modules[item].description }); |
73 | | - } |
74 | | - } |
| 81 | + for (const module of modules ?? []) { |
| 82 | + items.push({ label: module.name, description: module.description }); |
75 | 83 | } |
76 | 84 |
|
77 | 85 | if (items.length === 0) { |
|
0 commit comments