UNPKG

@itihon/file-tree-view

Version:

File tree view component based on Web Components API

34 lines (33 loc) 1.09 kB
import FTVFile from './FTVFile.js'; import FTVFolder from './FTVFolder.js'; import './themes/default.css'; type FileTreeNode = { name: string; selected?: boolean; }; export type FileNode = { type: 'file'; } & FileTreeNode; type FileOrFolder = FileNode | FolderNode; type FolderOrFileTreeView = FTVFolder | FileTreeView; export type FolderNode = { type: 'folder'; expanded?: boolean; children?: FileOrFolder[]; } & FileTreeNode; export default class FileTreeView extends HTMLElement { private selectedItem; private getLastVisibleNode; private getNextVisibleNode; private focusPrevious; private focusNext; load(tree: FolderNode, root?: FolderOrFileTreeView, withRootNode?: boolean, sort?: boolean): void; getSelectedItem(): FTVFolder | FTVFile | null; getNodeByPath(path: string): FTVFile | FTVFolder | null; addContent(content: FTVFile | FTVFolder): void; addNode(path: string, name: string, type: 'file' | 'folder'): void; removeNode(path: string): void; connectedCallback(): void; constructor(); } export {};