Storybooks for commit abcea55f1d57c5d1c28a42bf837c8120f740b5f6

Date
9/1/2026, 1:11:50 PM UTC
Summary
chore(settings): Update to React 19
Description
This pull request:

- Upgrades React and react-dom to 19 (pinned to `19.0.8`), with `@types/react` 19 and `@testing-library/react` 16
- Switches `fxa-settings` to `createRoot`; `ReactDOM.render` is gone in React 19
- Moves render-phase `navigate()` calls into effects across 13 containers — a concurrent root commits asynchronously, so navigating during render races the commit
- Replaces the hand-rolled `Symbol.for('react.element')` in the SVG Jest transform with `createElement`, and consolidates the duplicated transform into `fxa-react`
- Migrates `useFormState` to `useActionState` in `CouponForm`, dispatching the auto-apply through `startTransition`
- Drops `@material-ui/core` (peers on React ^16/^17) and rebuilds the avatar zoom control as a native range input
- Removes `@testing-library/react-hooks`, which has no React 19 support, in favour of RTL's `renderHook`
- Fixes functional-test page objects that assumed the route committed with the URL

Other information
- **React is pinned to 19.0.8, not 19.2.x.** 19.2.8 reproducibly failed six passkey and 2FA
  functional tests that pass on 19.0.8, on two independent branches. The cause is not diagnosed;
  bumping to 19.2.x should be its own change. (FXA-14313)
- **`StrictMode` is disabled** in `fxa-settings/src/index.tsx`. `PagePasskeyAdd` starts its WebAuthn
  ceremony in a mount effect and the double-invoke aborts it. Fixing that effect's cleanup and
  restoring StrictMode is follow-up work. (FXA-14313)

Closes PAY-3887