github.com/tilt-dev/tilt@v0.33.15-0.20240515162809-0a22ed45d8a0/web/src/OverviewResourceBar.tsx (about) 1 import React from "react" 2 import styled from "styled-components" 3 import { GlobalNav, GlobalNavRoot } from "./GlobalNav" 4 import { usePathBuilder } from "./PathBuilder" 5 import { AllResourceStatusSummary } from "./ResourceStatusSummary" 6 import { useSnapshotAction } from "./snapshot" 7 import { SizeUnit } from "./style-helpers" 8 import { showUpdate } from "./UpdateDialog" 9 10 type OverviewResourceBarProps = { 11 view: Proto.webviewView 12 } 13 14 const OverviewResourceBarRoot = styled.div` 15 display: flex; 16 align-items: stretch; 17 padding-left: ${SizeUnit(1)}; 18 19 ${GlobalNavRoot} { 20 justify-content: flex-end; 21 flex-grow: 1; 22 display: flex; 23 } 24 ` 25 26 export default function OverviewResourceBar(props: OverviewResourceBarProps) { 27 let isSnapshot = usePathBuilder().isSnapshot() 28 let snapshot = useSnapshotAction() 29 let view = props.view 30 let session = view?.uiSession?.status 31 let runningBuild = session?.runningTiltBuild 32 let suggestedVersion = session?.suggestedTiltVersion 33 let resources = view?.uiResources || [] 34 35 let globalNavProps = { 36 isSnapshot, 37 snapshot, 38 showUpdate: showUpdate(view), 39 suggestedVersion, 40 runningBuild, 41 } 42 43 return ( 44 <OverviewResourceBarRoot> 45 <AllResourceStatusSummary 46 displayText="Resources" 47 labelText="Status summary for all resources" 48 resources={resources} 49 /> 50 <GlobalNav {...globalNavProps} /> 51 </OverviewResourceBarRoot> 52 ) 53 }