Manage props/page data forms with react-hook-form
>>> [!note] Migrated issue
<!-- Drupal.org comment -->
<!-- Migrated from issue #3562896. -->
Reported by: [bnjmnm](https://www.drupal.org/user/2369194)
Related to !1033 !678 !489 !674 !450 !479 !410
>>>
<h3 id="overview">Overview</h3>
<h3 id="proposed-resolution">Proposed resolution</h3>
<ul>
<li>Integrate React Hook Form to take care of some of the lifting that we previously had custom code for</li>
<li>Make sure this new approach no longer treats attributes and other props as mutable (it's bad practice AND stopping us from updating to React 19)</li>
<li>If possible, this refactor should also address the excessive unnecessary rerenders in the Page Data and Component instance forms (✅ it does!)</li>
<li>If possible, this refactor should be accompanied by removing arbitrary waits in e2e tests, such as build ID and ajax completion, that do not reflect user facing events and can mask actual problems (✅ much of this is removed... and potentially more can be)</li>
<li>Address any underlying problems surfaced by the removal of the arbitrary waits (👀 this revealed that parallel preview requests were triggering errors, so this MR queues them and addresses the problem)</li>
<li>Prevent users from performing interactions that could cause conflicts (such as triggering an AJAX operation while a preview request is in progress)</li>
</ul>
<h3 id="ui-changes">User interface changes</h3>
<p>Not much, but autocomplete reference fields work like core's now . the stored value is <code>entity:node/etc</code> but the display is the title.</p>
issue