github.com/argoproj/argo-cd/v2@v2.10.9/ui/src/app/applications/components/application-status-panel/revision-metadata-panel.tsx (about) 1 import {DataLoader, Tooltip} from 'argo-ui'; 2 import * as React from 'react'; 3 import {Timestamp} from '../../../shared/components/timestamp'; 4 import {services} from '../../../shared/services'; 5 6 export const RevisionMetadataPanel = (props: {appName: string; appNamespace: string; type: string; revision: string}) => { 7 if (props.type === 'helm') { 8 return <React.Fragment />; 9 } 10 return ( 11 <DataLoader load={() => services.applications.revisionMetadata(props.appName, props.appNamespace, props.revision)} errorRenderer={() => <div />}> 12 {m => ( 13 <Tooltip 14 popperOptions={{ 15 modifiers: { 16 preventOverflow: { 17 enabled: false 18 }, 19 hide: { 20 enabled: false 21 }, 22 flip: { 23 enabled: false 24 } 25 } 26 }} 27 content={ 28 <span> 29 {m.author && <React.Fragment>Authored by {m.author}</React.Fragment>} 30 <br /> 31 {m.date && <Timestamp date={m.date} />} 32 <br /> 33 {m.tags && ( 34 <span> 35 Tags: {m.tags} 36 <br /> 37 </span> 38 )} 39 {m.signatureInfo} 40 <br /> 41 {m.message} 42 </span> 43 } 44 placement='bottom' 45 allowHTML={true}> 46 <div className='application-status-panel__item-name'> 47 {m.author && ( 48 <div className='application-status-panel__item__row'> 49 <div>Author:</div> 50 <div> 51 {m.author} - {m.signatureInfo} 52 </div> 53 </div> 54 )} 55 <div className='application-status-panel__item__row'> 56 <div>Comment:</div> 57 <div>{m.message?.split('\n')[0].slice(0, 64)}</div> 58 </div> 59 </div> 60 </Tooltip> 61 )} 62 </DataLoader> 63 ); 64 };