function Item()

in packages-ext/recoil-devtools/src/pages/Popup/Items/Item.js [38:84]


function Item({
  name,
  content,
  startCollapsed,
  node,
  isRoot = false,
}: KeyProps): React.Node {
  const connection = nullthrows(useContext(ConnectionContext));
  const [txID] = useSelectedTransaction();

  const deps = isRoot
    ? connection.dependencies.get(name.toString(), txID)
    : null;
  const hasDescription = hasItemDescription(content);

  return (
    <CollapsibleItem
      key={name}
      isRoot={isRoot}
      collapsible={hasDescription || (deps != null && deps.size > 0)}
      startCollapsed={startCollapsed}
      label={
        <span>
          <>
            <ItemLabel name={name} node={node} isRoot={isRoot} />
            {hasDescription ? (
              <ItemDescription content={content} />
            ) : (
              <ItemValue
                content={content}
                inline={true}
                startCollapsed={startCollapsed}
              />
            )}
          </>
        </span>
      }>
      <div>
        {hasDescription && (
          <ItemValue content={content} startCollapsed={startCollapsed} />
        )}
        <ItemMoreItems content={content} />
        {isRoot && <ItemDependencies name={name.toString()} />}
      </div>
    </CollapsibleItem>
  );
}