MCPcopy Create free account
hub / github.com/Snapchat/dagger-browser / MDBFileSystemComponentNew

Function MDBFileSystemComponentNew

browser/src/components/TreeView.tsx:22–69  ·  view source on GitHub ↗
(mapOfNodes:  Map<string, string[]>, nodeName: string, componentName: string, graphManager: GraphManager,   weightService: WeightService)

Source from the content-addressed store, hash-verified

20}
21
22function MDBFileSystemComponentNew (mapOfNodes: Map<string, string[]>, nodeName: string, componentName: string, graphManager: GraphManager, weightService: WeightService) {
23 const displayNameHelper = new DisplayNameHelper()
24 const history = useHistory();
25 const rootNode = graphManager.getNode(componentName, nodeName)
26 const dependenciesIconMap: Map<string,string> = new Map()
27 if(rootNode && rootNode.dependencies.length > 0) {
28 rootNode.dependencies.map(node => {
29 dependenciesIconMap.set(node.key, node.kind)
30 })
31 }
32
33 return (
34 <div>
35 {mapOfNodes.get(nodeName)?.map(node => {
36 let isInstance = false
37 if(dependenciesIconMap.get(node) && dependenciesIconMap.get(node) == "INSTANCE") {
38 isInstance = true
39 }
40 let weight = weightService.getWeight(componentName, node)
41 if (mapOfNodes.get(node)?.length != 0) {
42 return (
43 <div style={{"padding" : "10px"}}>
44 <NodeIcon kind = {dependenciesIconMap.get(node)}/>
45 <span onClick={() => history.push(Routes.GraphNode(componentName, node))}>
46 {displayNameHelper.displayNameForKey(node)}
47 </span>
48 <NodeWeight weight={weight}/>
49 <MDBTreeviewList icon ="none" opened={isInstance} fal tag = "span">
50 {MDBFileSystemComponentNew(mapOfNodes, node, componentName, graphManager, weightService)}
51 </MDBTreeviewList>
52 </div>
53 )
54 } else {
55 return (
56 <div style={{"padding" : "10px"}}>
57 <NodeIcon kind = {dependenciesIconMap.get(node)}/>
58 <span onClick={() => history.push(Routes.GraphNode(componentName, node))}>
59 {displayNameHelper.displayNameForKey(node)}
60 </span>
61 <NodeWeight weight={weight} />
62 </div>
63 )
64 }
65 })
66 }
67 </div>
68 )
69}
70
71export default function TreeView({ graphManager, componentName, nodeName, weightService}: Props) {
72

Callers 1

TreeViewFunction · 0.85

Calls 3

displayNameForKeyMethod · 0.95
getNodeMethod · 0.80
getWeightMethod · 0.65

Tested by

no test coverage detected