fix(assignee-selector): split autofocus inp cost over multiple frames #64165
  Add this suggestion to a batch that can be applied as a single commit.
  This suggestion is invalid because no changes were made to the code.
  Suggestions cannot be applied while the pull request is closed.
  Suggestions cannot be applied while viewing a subset of changes.
  Only one suggestion per line can be applied in a batch.
  Add this suggestion to a batch that can be applied as a single commit.
  Applying suggestions on deleted lines is not supported.
  You must change the existing code in this line in order to create a valid suggestion.
  Outdated suggestions cannot be applied.
  This suggestion has been applied or marked resolved.
  Suggestions cannot be applied from pending reviews.
  Suggestions cannot be applied on multi-line comments.
  Suggestions cannot be applied while the pull request is queued to merge.
  Suggestion cannot be applied right now. Please check back later.
  
    
  
    
This PR reduces the INP impact of the autofocus react attribute by deferring the focus event until next frame.
Calling .focus causes layout thrashing which causes UI jank. We are currently able to observe this using browser profiling where a lot of the call stacks point towards a .focus perf culprit.
Having looked at prod profiles and react source, the function responsible for calling .focus is commitMount, called during a finalizeInitialChildren. I did not verify when exactly this is called, but from the profiling data, this always appears to always be the last function in the call stacks when committing changes to the DOM.
The PR mitigates the sync nature of the .focus call by removing the autofocus attribute and scheduling the autofocus to be performed in the next browser event loop tick, yielding to the engine and splitting the cost over two multiple browser frames.