mirror of
https://github.com/carbon-design-system/carbon-components-svelte.git
synced 2025-09-19 11:59:34 +00:00
feat(tree-view): add TreeView
This commit is contained in:
parent
f4a3646cb4
commit
cf6331820c
18 changed files with 648 additions and 1 deletions
|
@ -171,6 +171,7 @@
|
|||
- [`TooltipDefinition`](#tooltipdefinition)
|
||||
- [`TooltipFooter`](#tooltipfooter)
|
||||
- [`TooltipIcon`](#tooltipicon)
|
||||
- [`TreeView`](#treeview)
|
||||
- [`Truncate`](#truncate)
|
||||
- [`UnorderedList`](#unorderedlist)
|
||||
|
||||
|
@ -4649,6 +4650,47 @@ None.
|
|||
| mouseleave | forwarded | -- |
|
||||
| focus | forwarded | -- |
|
||||
|
||||
## `TreeView`
|
||||
|
||||
### Types
|
||||
|
||||
```ts
|
||||
export type TreeNodeId = string | number;
|
||||
|
||||
export interface TreeNode {
|
||||
id: TreeNodeId;
|
||||
text: string;
|
||||
disabled?: boolean;
|
||||
}
|
||||
```
|
||||
|
||||
### Props
|
||||
|
||||
| Prop name | Kind | Reactive | Type | Default value | Description |
|
||||
| :---------- | :--------------- | :------- | :------------------------------------------------ | ---------------------- | --------------------------------------------------------------- |
|
||||
| selectedIds | <code>let</code> | Yes | <code>TreeNodeIds</code> | <code>[]</code> | Set the node ids to be selected |
|
||||
| activeId | <code>let</code> | Yes | <code>TreeNodeId</code> | <code>""</code> | Set the current active node id<br />Only one node can be active |
|
||||
| children | <code>let</code> | No | <code>TreeNode & { children?: TreeNode[] }</code> | <code>[]</code> | Provide an array of children nodes to render |
|
||||
| multiselect | <code>let</code> | No | <code>boolean</code> | <code>false</code> | Set to `true` to allow multiple selected nodes |
|
||||
| size | <code>let</code> | No | <code>"default" | "compact"</code> | <code>"default"</code> | Specify the TreeView size |
|
||||
| labelText | <code>let</code> | No | <code>string</code> | <code>""</code> | Specify the label text |
|
||||
| hideLabel | <code>let</code> | No | <code>boolean</code> | <code>false</code> | Set to `true` to visually hide the label text |
|
||||
|
||||
### Slots
|
||||
|
||||
| Slot name | Default | Props | Fallback |
|
||||
| :-------- | :------ | :---- | :----------------------- |
|
||||
| labelText | No | -- | <code>{labelText}</code> |
|
||||
|
||||
### Events
|
||||
|
||||
| Event name | Type | Detail |
|
||||
| :--------- | :--------- | :------------------------------------------------------------ |
|
||||
| select | dispatched | <code>TreeNode & { expanded: boolean; leaf: boolean; }</code> |
|
||||
| toggle | dispatched | <code>TreeNode & { expanded: boolean; leaf: boolean; }</code> |
|
||||
| focus | dispatched | <code>TreeNode & { expanded: boolean; leaf: boolean; }</code> |
|
||||
| keydown | forwarded | -- |
|
||||
|
||||
## `Truncate`
|
||||
|
||||
### Props
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue