index.js — react Source File
Architecture documentation for index.js, a javascript file in the react codebase. 7 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR 406e0fbd_f3e8_fc3b_d05b_4922f1996e21["index.js"] fe7f3f36_186a_b5fa_46a3_1c8b67d7534d["dynamicallyInjectContentScripts.js"] 406e0fbd_f3e8_fc3b_d05b_4922f1996e21 --> fe7f3f36_186a_b5fa_46a3_1c8b67d7534d 340180c0_7449_8026_336c_23b84d74eda4["tabsManager.js"] 406e0fbd_f3e8_fc3b_d05b_4922f1996e21 --> 340180c0_7449_8026_336c_23b84d74eda4 eda1c637_7f7a_9fee_baa9_c174b535138c["messageHandlers.js"] 406e0fbd_f3e8_fc3b_d05b_4922f1996e21 --> eda1c637_7f7a_9fee_baa9_c174b535138c 00586d16_bb96_cb3e_a14c_a4dfaccc0daf["handleDevToolsPageMessage"] 406e0fbd_f3e8_fc3b_d05b_4922f1996e21 --> 00586d16_bb96_cb3e_a14c_a4dfaccc0daf 9fee6380_b476_6a5c_d72f_636cae3c4ef8["handleBackendManagerMessage"] 406e0fbd_f3e8_fc3b_d05b_4922f1996e21 --> 9fee6380_b476_6a5c_d72f_636cae3c4ef8 3ac927b9_a998_c583_e76e_b2a8ab58732f["handleReactDevToolsHookMessage"] 406e0fbd_f3e8_fc3b_d05b_4922f1996e21 --> 3ac927b9_a998_c583_e76e_b2a8ab58732f bfc282c9_7ed7_328e_f9e3_4788d84d83e6["handleFetchResourceContentScriptMessage"] 406e0fbd_f3e8_fc3b_d05b_4922f1996e21 --> bfc282c9_7ed7_328e_f9e3_4788d84d83e6 style 406e0fbd_f3e8_fc3b_d05b_4922f1996e21 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
/* global chrome */
'use strict';
import './dynamicallyInjectContentScripts';
import './tabsManager';
import {
handleDevToolsPageMessage,
handleBackendManagerMessage,
handleReactDevToolsHookMessage,
handleFetchResourceContentScriptMessage,
} from './messageHandlers';
/*
{
[tabId]: {
extension: ExtensionPort,
proxy: ProxyPort,
disconnectPipe: Function,
},
...
}
*/
const ports = {};
function registerTab(tabId) {
if (!ports[tabId]) {
ports[tabId] = {
extension: null,
proxy: null,
disconnectPipe: null,
};
}
}
function registerExtensionPort(port, tabId) {
ports[tabId].extension = port;
port.onDisconnect.addListener(() => {
// This should delete disconnectPipe from ports dictionary
ports[tabId].disconnectPipe?.();
delete ports[tabId].extension;
});
}
function registerProxyPort(port, tabId) {
ports[tabId].proxy = port;
// In case proxy port was disconnected from the other end, from content script
// This can happen if content script was detached, when user does in-tab navigation
// This listener should never be called when we call port.disconnect() from this (background/index.js) script
port.onDisconnect.addListener(() => {
ports[tabId].disconnectPipe?.();
delete ports[tabId].proxy;
});
}
// ... (155 more lines)
Domain
Subdomains
Functions
Dependencies
Source
Frequently Asked Questions
What does index.js do?
index.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 index.js?
index.js defines 5 function(s): connectExtensionAndProxyPorts, isNumeric, registerExtensionPort, registerProxyPort, registerTab.
What does index.js depend on?
index.js imports 7 module(s): dynamicallyInjectContentScripts.js, handleBackendManagerMessage, handleDevToolsPageMessage, handleFetchResourceContentScriptMessage, handleReactDevToolsHookMessage, messageHandlers.js, tabsManager.js.
Where is index.js in the architecture?
index.js is located at packages/react-devtools-extensions/src/background/index.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