github.com/argoproj/argo-cd/v2@v2.10.9/ui/src/app/applications/components/application-retry-view/application-retry-view.tsx (about) 1 import * as React from 'react'; 2 import * as models from '../../../shared/models'; 3 4 import './application-retry-view.scss'; 5 6 function buildRetryOptionView(label: string, data: string | number) { 7 const result = data || 'not installed'; 8 9 return ( 10 <div className='application-retry-option-view-list__item'> 11 {label} - {result} 12 </div> 13 ); 14 } 15 16 const retryOptionsView: Array<(initData: models.RetryStrategy) => React.ReactNode> = [ 17 initData => buildRetryOptionView('Limit', initData?.limit), 18 initData => buildRetryOptionView('Duration', initData?.backoff?.duration), 19 initData => buildRetryOptionView('Max Duration', initData?.backoff?.maxDuration), 20 initData => buildRetryOptionView('Factor', initData?.backoff?.factor) 21 ]; 22 23 export const ApplicationRetryView = ({initValues}: {initValues?: models.RetryStrategy}) => { 24 const result = !initValues ? 'Retry disabled' : retryOptionsView.map((render, i) => render(initValues)); 25 return <div className='application-retry-option-view-list'>{result}</div>; 26 };