1.0.1 • Published 9 months ago

@openenergytools/tree-grid v1.0.1

Weekly downloads
-
License
Apache-2.0
Repository
-
Last release
9 months ago

\

Installation

npm i tree-grid

Usage

<script type="module">
  import 'tree-grid';
</script>

<tree-grid filterLabel="Regular Expression"></tree-grid>

<script type="module">
  const oscdTree = document.querySelector('tree-grid');
  await oscdTree.updateComplete;

  const tree = await fetch('/tree.json').then(r => r.json());

  oscdTree.tree = tree;
</script>

TypeScript types

For use with TypeScript, tree-grid exports the following types:

export type TreeSelection = { [name: string]: TreeSelection };

export type Path = string[];

export type TreeNode = {
  children?: Tree;
  text?: string;
  mandatory?: boolean;
};

export type Tree = Partial<Record<string, TreeNode>>;

This webcomponent follows the open-wc recommendation.

TreeGrid.ts:

class: TreeGrid, tree-grid

Superclass

NameModulePackage
LitElementlit

Mixins

NameModulePackage
ScopedElementsMixin@open-wc/scoped-elements/lit-element.js

Static Fields

NamePrivacyTypeDefaultDescriptionInherited From
scopedElementsobject`{
'md-list': MdList,
'md-icon': MdIcon,
'md-list-item': MdListItem,
'md-outlined-textfield': MdOutlinedTextField,

}` | | |

Fields

NamePrivacyTypeDefaultDescriptionInherited From
treeTree{}The `Tree` to be selected from
selectionTreeSelection{}Selected rows as `TreeSelection`
pathsPath[]Selected rows as `Path[]`
filterstringRegular expression by which to filter rows
filterLabelstring''Filter `TextField` label
filterUIMdOutlinedTextField \| undefined

Fields

NamePrivacyTypeDefaultDescriptionInherited From
depthprivatenumber
filterRegexprivateRegExp
containerprivateElement \| undefined
collapsedprivatenew Set<string>()

Methods

NamePrivacyDescriptionParametersReturnInherited From
getPathsprivatemaxLength: numberPath[]
treeNodeprivatepath: PathTreeNode
rowsprivatePath[]
clickedprivateel: HTMLElementMdListItem
selectprivateparentPath: Path, clicked: stringvoid
selectAllprivateclicked: MdListItemvoid
scrollRightprivatePromise<void>
handleSelectedprivateevent: EventPromise<void>
renderCellprivatepath: Path, previousPath: PathTemplateResult
renderColumnprivatecolumn: (Path \| undefined)[]TemplateResult
toggleCollapseprivateserializedPath: string
renderExpandCellprivatepath: PathTemplateResult
renderExpandColumnprivaterows: Path[]TemplateResult
renderCollapseCellprivatepath: PathTemplateResult
renderCollapseColumnprivaterows: Path[]TemplateResult
renderColumnsprivateTemplateResult
renderFilterFieldprivate

Exports

KindNameDeclarationModulePackage
jsTreeGridTreeGridTreeGrid.ts

tree-grid.ts:

Exports

KindNameDeclarationModulePackage
custom-element-definitiontree-gridTreeGrid/TreeGrid.js

© 2023 OMICRON electronics GmbH

1.0.1

9 months ago

1.0.0

10 months ago