messageHandlers.js — react Source File
Architecture documentation for messageHandlers.js, a javascript file in the react codebase. 6 imports, 1 dependents.
Entity Profile
Dependency Diagram
graph LR eda1c637_7f7a_9fee_baa9_c174b535138c["messageHandlers.js"] cd146827_202a_fba8_b239_a991594bc85b["setExtensionIconAndPopup.js"] eda1c637_7f7a_9fee_baa9_c174b535138c --> cd146827_202a_fba8_b239_a991594bc85b 368ac68f_212b_9479_f106_0b8ecb79f676["setExtensionIconAndPopup"] eda1c637_7f7a_9fee_baa9_c174b535138c --> 368ac68f_212b_9479_f106_0b8ecb79f676 79ae402c_ad7a_18c8_aee3_8ab0a4bcaf3e["executeScript.js"] eda1c637_7f7a_9fee_baa9_c174b535138c --> 79ae402c_ad7a_18c8_aee3_8ab0a4bcaf3e fac85306_0344_026b_6c66_d73fb4312f91["executeScriptInMainWorld"] eda1c637_7f7a_9fee_baa9_c174b535138c --> fac85306_0344_026b_6c66_d73fb4312f91 74bd19f4_2af1_7f72_caea_df13aa3e4693["utils.js"] eda1c637_7f7a_9fee_baa9_c174b535138c --> 74bd19f4_2af1_7f72_caea_df13aa3e4693 55d27179_f566_db64_927b_e95655abee00["constants"] eda1c637_7f7a_9fee_baa9_c174b535138c --> 55d27179_f566_db64_927b_e95655abee00 406e0fbd_f3e8_fc3b_d05b_4922f1996e21["index.js"] 406e0fbd_f3e8_fc3b_d05b_4922f1996e21 --> eda1c637_7f7a_9fee_baa9_c174b535138c style eda1c637_7f7a_9fee_baa9_c174b535138c fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
/* global chrome */
import {__DEBUG__} from 'react-devtools-shared/src/constants';
import setExtensionIconAndPopup from './setExtensionIconAndPopup';
import {executeScriptInMainWorld} from './executeScript';
import {EXTENSION_CONTAINED_VERSIONS} from '../utils';
export function handleReactDevToolsHookMessage(message, sender) {
const {payload} = message;
switch (payload?.type) {
case 'react-renderer-attached': {
setExtensionIconAndPopup(payload.reactBuildType, sender.tab.id);
break;
}
}
}
export function handleBackendManagerMessage(message, sender) {
const {payload} = message;
switch (payload?.type) {
case 'require-backends': {
payload.versions.forEach(version => {
if (EXTENSION_CONTAINED_VERSIONS.includes(version)) {
executeScriptInMainWorld({
injectImmediately: true,
target: {tabId: sender.tab.id},
files: [`/build/react_devtools_backend_${version}.js`],
});
}
});
break;
}
}
}
export function handleDevToolsPageMessage(message) {
const {payload} = message;
switch (payload?.type) {
// Proxy this message from DevTools page to content script via chrome.tabs.sendMessage
case 'fetch-file-with-cache': {
const {
payload: {tabId, url},
} = message;
if (!tabId || !url) {
// Send a response straight away to get the Promise fulfilled.
chrome.runtime.sendMessage({
source: 'react-devtools-background',
payload: {
type: 'fetch-file-with-cache-error',
url,
value: null,
},
});
// ... (112 more lines)
Domain
Subdomains
Functions
Dependencies
Source
Frequently Asked Questions
What does messageHandlers.js do?
messageHandlers.js is a source file in the react codebase, written in javascript. It belongs to the BabelCompiler domain, Validation subdomain.
What functions are defined in messageHandlers.js?
messageHandlers.js defines 4 function(s): handleBackendManagerMessage, handleDevToolsPageMessage, handleFetchResourceContentScriptMessage, handleReactDevToolsHookMessage.
What does messageHandlers.js depend on?
messageHandlers.js imports 6 module(s): constants, executeScript.js, executeScriptInMainWorld, setExtensionIconAndPopup, setExtensionIconAndPopup.js, utils.js.
What files import messageHandlers.js?
messageHandlers.js is imported by 1 file(s): index.js.
Where is messageHandlers.js in the architecture?
messageHandlers.js is located at packages/react-devtools-extensions/src/background/messageHandlers.js (domain: BabelCompiler, subdomain: Validation, directory: packages/react-devtools-extensions/src/background).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free