react-loader.js — react Source File
Architecture documentation for react-loader.js, a javascript file in the react codebase. 1 imports, 3 dependents.
Entity Profile
Dependency Diagram
graph LR dd026ac1_6193_60a0_f5c1_cc7da4d3c4af["react-loader.js"] 4eb12198_9a41_d26c_5aca_d7d500655e3a["semver"] dd026ac1_6193_60a0_f5c1_cc7da4d3c4af --> 4eb12198_9a41_d26c_5aca_d7d500655e3a 24f91f3d_8b7d_3d1b_d51b_544e9e2c6143["index.js"] 24f91f3d_8b7d_3d1b_d51b_544e9e2c6143 --> dd026ac1_6193_60a0_f5c1_cc7da4d3c4af f8429146_1d45_26dd_090f_7c5376f684ab["find-dom-node.js"] f8429146_1d45_26dd_090f_7c5376f684ab --> dd026ac1_6193_60a0_f5c1_cc7da4d3c4af 9f1d73bc_10b4_6f20_3101_55819618d137["index.js"] 9f1d73bc_10b4_6f20_3101_55819618d137 --> dd026ac1_6193_60a0_f5c1_cc7da4d3c4af style dd026ac1_6193_60a0_f5c1_cc7da4d3c4af fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
import semver from 'semver';
/**
* Take a version from the window query string and load a specific
* version of React.
*
* @example
* http://localhost:3000?version=15.4.1
* (Loads React 15.4.1)
*/
function parseQuery(qstr) {
var query = {};
var a = qstr.slice(1).split('&');
for (var i = 0; i < a.length; i++) {
var b = a[i].split('=');
query[decodeURIComponent(b[0])] = decodeURIComponent(b[1] || '');
}
return query;
}
function loadScript(src) {
let firstScript = document.getElementsByTagName('script')[0];
let scriptNode;
return new Promise((resolve, reject) => {
scriptNode = document.createElement('script');
scriptNode.async = 1;
scriptNode.src = src;
scriptNode.onload = () => resolve();
scriptNode.onerror = () => reject(new Error(`failed to load: ${src}`));
firstScript.parentNode.insertBefore(scriptNode, firstScript);
});
}
function loadModules(SymbolSrcPairs) {
let firstScript = document.getElementsByTagName('script')[0];
let imports = '';
SymbolSrcPairs.map(([symbol, src]) => {
imports += `import ${symbol} from "${src}";\n`;
imports += `window.${symbol} = ${symbol};\n`;
});
return new Promise((resolve, reject) => {
const timeout = setTimeout(
() => reject(new Error('Timed out loading react modules over esm')),
5000
);
window.__loaded = () => {
clearTimeout(timeout);
resolve();
};
const moduleScript = document.createElement('script');
moduleScript.type = 'module';
moduleScript.textContent = imports + 'window.__loaded();';
// ... (123 more lines)
Domain
Subdomains
Dependencies
- semver
Imported By
Source
Frequently Asked Questions
What does react-loader.js do?
react-loader.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 react-loader.js?
react-loader.js defines 7 function(s): getVersion, isLocal, loadModules, loadReact, loadScript, parseQuery, reactPaths.
What does react-loader.js depend on?
react-loader.js imports 1 module(s): semver.
What files import react-loader.js?
react-loader.js is imported by 3 file(s): find-dom-node.js, index.js, index.js.
Where is react-loader.js in the architecture?
react-loader.js is located at fixtures/dom/src/react-loader.js (domain: BabelCompiler, subdomain: Validation, directory: fixtures/dom/src).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free