Fix cli and extension status

Signed-off-by: Sanjula Ganepola <sanjulagane@gmail.com>
This commit is contained in:
Sanjula Ganepola
2024-09-28 19:15:53 -04:00
parent e5e1c06701
commit 440e729f29
4 changed files with 99 additions and 49 deletions

View File

@@ -1,17 +1,17 @@
import { ThemeIcon, TreeItem, TreeItemCollapsibleState, Uri } from "vscode";
import { Component } from "../../componentManager";
import { CliStatus, Component, ExtensionStatus } from "../../componentManager";
import { GithubLocalActionsTreeItem } from "../githubLocalActionsTreeItem";
export default class ComponentTreeItem extends TreeItem implements GithubLocalActionsTreeItem {
static contextValue = 'githubLocalActions.component';
component: Component;
component: Component<CliStatus | ExtensionStatus>;
constructor(component: Component) {
constructor(component: Component<CliStatus | ExtensionStatus>) {
super(component.name, TreeItemCollapsibleState.None);
this.component = component;
this.contextValue = ComponentTreeItem.contextValue;
this.iconPath = new ThemeIcon(component.icon);
this.resourceUri = Uri.parse(`${ComponentTreeItem.contextValue}:${component.name}?status=${component.status}`, true);
this.resourceUri = Uri.parse(`${ComponentTreeItem.contextValue}:${component.name}?status=${component.status}&required=${component.required}`, true);
this.tooltip = `Name: ${component.name}\n` +
`Status: ${component.status}\n` +
(component.message ? `Message: ${component.message}` : ``);