ContextMenuContainer.js — react Source File
Architecture documentation for ContextMenuContainer.js, a javascript file in the react codebase. 5 imports, 1 dependents.
Entity Profile
Dependency Diagram
graph LR 7eedd21d_ae6a_7447_035b_f34143688483["ContextMenuContainer.js"] 6b15267e_6087_7e9b_ceab_28e7a8ab3cd9["ContextMenu.js"] 7eedd21d_ae6a_7447_035b_f34143688483 --> 6b15267e_6087_7e9b_ceab_28e7a8ab3cd9 b286a239_8afb_5e3f_a9eb_6310cf2e0167["ContextMenu"] 7eedd21d_ae6a_7447_035b_f34143688483 --> b286a239_8afb_5e3f_a9eb_6310cf2e0167 27c1f5e3_f1ca_440b_62aa_b832f761835e["useContextMenu.js"] 7eedd21d_ae6a_7447_035b_f34143688483 --> 27c1f5e3_f1ca_440b_62aa_b832f761835e f94c772c_e76f_6e89_bc9b_2d47148e561c["types.js"] 7eedd21d_ae6a_7447_035b_f34143688483 --> f94c772c_e76f_6e89_bc9b_2d47148e561c ac587885_e294_a1e9_b13f_5e7b920fdb42["react"] 7eedd21d_ae6a_7447_035b_f34143688483 --> ac587885_e294_a1e9_b13f_5e7b920fdb42 1be4c533_22f9_d4ee_5d61_bdd15076cee1["KeyValueContextMenuContainer.js"] 1be4c533_22f9_d4ee_5d61_bdd15076cee1 --> 7eedd21d_ae6a_7447_035b_f34143688483 style 7eedd21d_ae6a_7447_035b_f34143688483 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
/**
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @flow
*/
import * as React from 'react';
import {useImperativeHandle} from 'react';
import ContextMenu from './ContextMenu';
import useContextMenu from './useContextMenu';
import type {ContextMenuItem, ContextMenuRef} from './types';
type Props = {
anchorElementRef: {
current: React.ElementRef<any> | null,
},
items: ContextMenuItem[],
closedMenuStub?: React.Node | null,
ref?: ContextMenuRef,
};
export default function ContextMenuContainer({
anchorElementRef,
items,
closedMenuStub = null,
ref,
}: Props): React.Node {
const {shouldShow, position, hide} = useContextMenu(anchorElementRef);
useImperativeHandle(
ref,
() => ({
isShown() {
return shouldShow;
},
hide,
}),
[shouldShow, hide],
);
if (!shouldShow) {
return closedMenuStub;
}
return (
<ContextMenu
anchorElementRef={anchorElementRef}
position={position}
hide={hide}
items={items}
ref={ref}
/>
);
}
Domain
Subdomains
Functions
Dependencies
Imported By
Source
Frequently Asked Questions
What does ContextMenuContainer.js do?
ContextMenuContainer.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 ContextMenuContainer.js?
ContextMenuContainer.js defines 1 function(s): ContextMenuContainer.
What does ContextMenuContainer.js depend on?
ContextMenuContainer.js imports 5 module(s): ContextMenu, ContextMenu.js, react, types.js, useContextMenu.js.
What files import ContextMenuContainer.js?
ContextMenuContainer.js is imported by 1 file(s): KeyValueContextMenuContainer.js.
Where is ContextMenuContainer.js in the architecture?
ContextMenuContainer.js is located at packages/react-devtools-shared/src/devtools/ContextMenu/ContextMenuContainer.js (domain: BabelCompiler, subdomain: Validation, directory: packages/react-devtools-shared/src/devtools/ContextMenu).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free