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

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.

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.

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: 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.

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.

leftAddonPosition?: ListItemAddonPosition

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

leftAddonType?: ListItemAddonType

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

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

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.

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.

rightAddonPosition?: ListItemAddonPosition

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

rightAddonType?: ListItemAddonType

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

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.

secondaryTextClassName?: string

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

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.

textClassName?: string

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

Generated using TypeDoc