Options
All
  • Public
  • Public/Protected
  • All
Menu

Interface UnknownTreeItem

This is just a type I use internally for handling tree items with unknown keys.

internal

Hierarchy

Indexable

[key: string]: unknown

Index

Properties

Optional children

children: ReactNode

The main content to display. When the textChildren prop is enabled and there is child content, it will be treated as primary text and update the styles automatically.

Optional forceAddonWrap

forceAddonWrap: boolean

Boolean if the left and/or right addons should be "forcefully" wrapped in a <span> with the spacing class names applied instead of attempting to clone it into the provided icon element.

Optional isCustom

isCustom: boolean

Boolean if the provided item is a custom element and will not be rendered in a TreeItem component. This is useful if you want to be able to render Divider or ListSubheader components within a tree since they should be able to be rendered without any of the tree functionality.

itemId

itemId: string

The unique identifier for an item within the tree. This is used to be able to link tree items together with parent items as well as selected/expanded logic.

Optional leftAddon

leftAddon: ReactNode

An optional addon to display to the left of the primaryText or children and should be used with the leftAddonType prop to adjust spacing.

Optional leftAddonPosition

leftAddonPosition: ListItemAddonPosition

The vertical position the left icon, avatar, media, or large media should be placed.

Optional leftAddonType

leftAddonType: ListItemAddonType

The type of the addon that appears to the left of the primaryText or children.

parentId

parentId: null | string

This id is used to be able to link tree items together with children and parents. If the parentId is set to null, the tree item will appear at the root of the tree. Otherwise, the tree item will appear as a child of the referenced tree item by itemId

Optional primaryText

primaryText: ReactNode

An optional element that should be rendered as the primaryText within the list item. It is most likely easier to use the children prop instead, but this allows you to create more complex components with the ListItem since you can provided children and have the styles for the primaryText still applied. By default, this will only allow one line of text and add ellipsis for any text overflow.

Optional rightAddon

rightAddon: ReactNode

An optional addon to display to the right of the primaryText or children and should be used with the rightAddonType prop to adjust spacing.

Optional rightAddonPosition

rightAddonPosition: ListItemAddonPosition

The vertical position the right icon, avatar, media, or large media should be placed.

Optional rightAddonType

rightAddonType: ListItemAddonType

The type of the addon that appears to the right of the primaryText or children.

Optional secondaryText

secondaryText: ReactNode

An optional element that should be rendered as the secondaryText within the list item. By default, this will only span one line and add ellipsis for overflow.

Optional secondaryTextClassName

secondaryTextClassName: string

An optional className to apply to the <span> that surrounds the secondaryText within the list item.

Optional textChildren

textChildren: boolean

Boolean if the children should be treated as the primaryText prop. This will wrap them in an additional class so that they have ellipsis for text overflow.

If you want to have more "freedom" within the ListItem, you can disable this prop so that the height will grow depending on content.

NOTE: If the secondaryText prop is provided, this will always be considered true.

Optional textClassName

textClassName: string

An optional className to apply to the <span> that surrounds the primaryText and optionally secondaryText within the list item.

Generated using TypeDoc