vscode-appwrite/src/tree/CollapsableTreeItem.ts
2021-04-19 13:11:56 -07:00

16 lines
648 B
TypeScript

import { ThemeIcon, TreeItem, TreeItemCollapsibleState } from "vscode";
import { AppwriteTreeItemBase } from "../ui/AppwriteTreeItemBase";
import { ChildTreeItem } from "./ChildTreeItem";
export class CollapsableTreeItem<Parent> extends AppwriteTreeItemBase<Parent> {
constructor(parent: Parent, item: Partial<TreeItem> & { label: string }, private readonly children: TreeItem[], public readonly brand?: string) {
super(parent, item.label);
Object.assign(this, item);
}
public async getChildren(): Promise<TreeItem[]> {
return this.children;
}
collapsibleState = TreeItemCollapsibleState.Collapsed;
}