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  };