diff --git a/src/apps/chat/components/layout-bar/ChatBarAltBeam.tsx b/src/apps/chat/components/layout-bar/ChatBarAltBeam.tsx index a4ec45f1f..2249d06ba 100644 --- a/src/apps/chat/components/layout-bar/ChatBarAltBeam.tsx +++ b/src/apps/chat/components/layout-bar/ChatBarAltBeam.tsx @@ -7,6 +7,7 @@ import OpenInFullIcon from '@mui/icons-material/OpenInFull'; import { BeamStoreApi, useBeamStore } from '~/modules/beam/store-beam.hooks'; +import { AppBreadcrumbs } from '~/common/components/AppBreadcrumbs'; import { ConfirmationModal } from '~/common/components/modals/ConfirmationModal'; import { GoodTooltip } from '~/common/components/GoodTooltip'; import { KeyStroke } from '~/common/components/KeyStroke'; @@ -17,6 +18,27 @@ import { animationBackgroundBeamGather, animationColorBeamScatterINV, animationE const _styles = { + bar: { + // layout + display: 'flex', + alignItems: 'center', + gap: { xs: 1, md: 2 } as const, + + minWidth: 0, // ensures the breadcrumbs don't overflow + // Customize breadcrumbs to enable collapse of the first one (chat title) + '& nav': { + overflow: 'hidden', + }, + '& nav > ol': { + flexWrap: 'nowrap', + } as const, + '& nav > ol > li:first-of-type': { + overflow: 'hidden', + maxWidth: { xs: '110px', md: '140px' }, + } as const, + + } as const, + barScatter: { animation: `${animationColorBeamScatterINV} 5s infinite, ${animationEnterBelow} 0.6s`, } as const, @@ -31,6 +53,7 @@ const _styles = { export function ChatBarAltBeam(props: { beamStore: BeamStoreApi, + conversationTitle: string, isMobile: boolean, }) { @@ -81,7 +104,7 @@ export function ChatBarAltBeam(props: { return ( - + {/* [desktop] maximize button, or a disabled spacer */} {!props.isMobile && ( @@ -92,19 +115,25 @@ export function ChatBarAltBeam(props: { )} - {/* Title & Status */} - - - {isGatheringAny ? 'Merging...' : isScattering ? 'Beaming...' : isEditMode ? 'Beam Edit' : 'Beam'} - - {(!isGatheringAny && !isScattering && !isEditMode) && ' Mode'} - + {props.conversationTitle || 'Chat'} + }> + + {/* Title & Status */} + + + {isGatheringAny ? 'Merging...' : isScattering ? 'Beaming...' : isEditMode ? 'Beam Edit' : 'Beam'} + + {(!isGatheringAny && !isScattering && !isEditMode) && ' Mode'} + + + {/* Right Close Icon */} Back to Chat }>