dillon1000/react
Commit
Browse files [DevTools] Harden Bridge and Wall lifecycle types (#37049)
Builds on #37048 by replacing `any`-based Bridge and Wall boundaries with typed `mixed` values and explicit runtime validation. Invalid messages and post-shutdown operations now throw, while shutdown reliably flushes queued messages even if cleanup fails. Strengthens the DevTools Bridge and Wall contracts: - Models event dictionaries as event-to-payload maps, using `void` for events without payloads. - Types `send(event, payload?)` directly, eliminating runtime payload-arity handling. - Replaces broad `any` transport types with `mixed` and boundary validation. - Throws on invalid lifecycle usage instead of warning or silently returning. - Ensures shutdown flushes queued messages even when Wall cleanup fails. - Updates Wall implementations and adds Bridge lifecycle coverage.
Changed paths18 files
First-parent comparisonpackages/react-devtools-core/src/backend.js ModifiedM packages/react-devtools-core/src/standalone.js ModifiedM packages/react-devtools-extensions/src/background/index.js ModifiedM packages/react-devtools-extensions/src/contentScripts/backendManager.js ModifiedM packages/react-devtools-extensions/src/contentScripts/proxy.js ModifiedM packages/react-devtools-extensions/src/main/index.js ModifiedM packages/react-devtools-fusebox/src/frontend.d.ts ModifiedM packages/react-devtools-fusebox/src/frontend.js ModifiedM packages/react-devtools-inline/src/backend.js ModifiedM packages/react-devtools-inline/src/frontend.js ModifiedM packages/react-devtools-shared/src/__tests__/bridge-test.js ModifiedM packages/react-devtools-shared/src/__tests__/setupTests.js ModifiedM packages/react-devtools-shared/src/bridge.js ModifiedM packages/react-devtools-shared/src/devtools/views/DevTools.js ModifiedM packages/react-devtools-shared/src/devtools/views/WarnIfLegacyBackendDetected.js ModifiedM packages/react-devtools-shared/src/frontend/types.js ModifiedM packages/react-devtools-shell/src/multi/devtools.js ModifiedM scripts/flow/react-devtools.js ModifiedPatch
Files changed
Rendering syntax-highlighted changes…