A MUI v5 compatible select that provides a compact user interface for navigating a tree structures.
Given the following tree node interface.
class Node {
  constructor(value, parent = null, children = null) {
    this.value = value;
    this.parent = parent;
    this.children = children;
  }
}
getChildren method to tell Tree Select how to retrieve child nodes.const rootNodes = [...] // Array of Nodes;
const getChildren = (node) => node === null ? rootNodes : node.children;
getParent method to tell Tree Select how to retrieve parent nodes.const getParent = (node) => node.parent;
renderInput method required by Autocomplete.const renderInput = (params) => <TextField {...params} />;
return <TreeSelect
  getChildren={getChildren}
  getParent={getParent}
  renderInput={renderInput}
/>;
Full documentation can be found here.
This package wraps the MUI Autocomplete component. Many of props from this component are passed from TreeSelect.
freeSolo values are wrapped in the class FreeSoloNode to provided a reference to the parent node under which the free solo value was created.
FreeSoloNode extends the native String object. This disallows "es5" as a target based on the way the typescript transpiler converts class semantics to function.
Generated using TypeDoc