Home / Function/ GetRootNodeFragmentContainer() — react Function Reference

GetRootNodeFragmentContainer() — react Function Reference

Architecture documentation for the GetRootNodeFragmentContainer() function in GetRootNodeFragmentContainer.js from the react codebase.

Entity Profile

Dependency Diagram

graph TD
  7b09f91b_79d9_407d_757c_e995b23908e4["GetRootNodeFragmentContainer()"]
  8b34ee80_c1e9_f50b_9b1c_9fad0c8cbf2d["GetRootNodeFragmentContainer.js"]
  7b09f91b_79d9_407d_757c_e995b23908e4 -->|defined in| 8b34ee80_c1e9_f50b_9b1c_9fad0c8cbf2d
  style 7b09f91b_79d9_407d_757c_e995b23908e4 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

fixtures/dom/src/components/fixtures/fragment-refs/GetRootNodeFragmentContainer.js lines 4–79

export default function GetRootNodeFragmentContainer({children}) {
  const fragmentRef = useRef(null);
  const [rootNodeInfo, setRootNodeInfo] = useState(null);

  const getRootNodeInfo = () => {
    const rootNode = fragmentRef.current.getRootNode();
    setRootNodeInfo({
      nodeName: rootNode.nodeName,
      nodeType: rootNode.nodeType,
      nodeTypeLabel: getNodeTypeLabel(rootNode.nodeType),
      isDocument: rootNode === document,
    });
  };

  const getNodeTypeLabel = nodeType => {
    const types = {
      1: 'ELEMENT_NODE',
      3: 'TEXT_NODE',
      9: 'DOCUMENT_NODE',
      11: 'DOCUMENT_FRAGMENT_NODE',
    };
    return types[nodeType] || `UNKNOWN (${nodeType})`;
  };

  return (
    <Fragment>
      <div style={{marginBottom: '16px'}}>
        <button
          onClick={getRootNodeInfo}
          style={{
            padding: '8px 16px',
            fontSize: '14px',
            fontWeight: 'bold',
            cursor: 'pointer',
          }}>
          Get Root Node
        </button>
      </div>

      {rootNodeInfo && (
        <div
          style={{
            marginBottom: '16px',
            padding: '12px',
            backgroundColor: '#e8f4e8',
            border: '1px solid #9c9',
            borderRadius: '4px',
            fontFamily: 'monospace',
            fontSize: '13px',
          }}>
          <div style={{marginBottom: '4px'}}>
            <strong>Node Name:</strong> {rootNodeInfo.nodeName}
          </div>
          <div style={{marginBottom: '4px'}}>
            <strong>Node Type:</strong> {rootNodeInfo.nodeType} (
            {rootNodeInfo.nodeTypeLabel})
          </div>
          <div>
            <strong>Is Document:</strong>{' '}
            {rootNodeInfo.isDocument ? 'Yes' : 'No'}
          </div>
        </div>
      )}

      <div
        style={{
          padding: '12px',
          border: '1px dashed #ccc',
          borderRadius: '4px',
          backgroundColor: '#fff',
        }}>
        <Fragment ref={fragmentRef}>{children}</Fragment>
      </div>
    </Fragment>
  );
}

Domain

Subdomains

Frequently Asked Questions

What does GetRootNodeFragmentContainer() do?
GetRootNodeFragmentContainer() is a function in the react codebase, defined in fixtures/dom/src/components/fixtures/fragment-refs/GetRootNodeFragmentContainer.js.
Where is GetRootNodeFragmentContainer() defined?
GetRootNodeFragmentContainer() is defined in fixtures/dom/src/components/fixtures/fragment-refs/GetRootNodeFragmentContainer.js at line 4.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free