Sha256: f064d55789597e481234a3159d4239dc132b8835892bb554a2aa1c4540983c4d

Contents?: true

Size: 1.61 KB

Versions: 1

Compression:

Stored size: 1.61 KB

Contents

import React from 'react';
import MessageBox from 'foremanReact/components/common/MessageBox';
import { LoadingState, Row } from 'patternfly-react';
import PropTypes from 'prop-types';

import PreupgradeReportsList from '../PreupgradeReportsList';
import FixAllButton from './components/FixAllButton';

import {
  flattenEntries,
  isEmpty,
  anyEntriesFixable,
} from './PreupgradeReportsHelpers';

const PreupgradeReports = ({
  preupgradeReports,
  loading,
  error,
  csrfToken,
  newJobInvocationUrl,
}) => {
  if (!isEmpty(error)) {
    return (
      <MessageBox
        key="preupgrade-reports-error"
        icontype="error-circle-o"
        msg={`Could not retrieve data: ${error.statusText} - ${error.errorMsg}`}
      />
    );
  }

  return (
    <LoadingState loading={loading}>
      <Row>
        <div className="title-filter col-md-4">&nbsp;</div>
        <div id="title_action" className="col-md-8">
          <div className="btn-toolbar pull-right">
            <FixAllButton
              postUrl={newJobInvocationUrl}
              disabled={!anyEntriesFixable(preupgradeReports)}
              csrfToken={csrfToken}
              preupgradeReports={preupgradeReports}
            />
          </div>
        </div>
      </Row>
      <PreupgradeReportsList allEntries={flattenEntries(preupgradeReports)} />
    </LoadingState>
  );
};

PreupgradeReports.propTypes = {
  preupgradeReports: PropTypes.array.isRequired,
  loading: PropTypes.bool.isRequired,
  error: PropTypes.object.isRequired,
  csrfToken: PropTypes.string.isRequired,
  newJobInvocationUrl: PropTypes.string.isRequired,
};

export default PreupgradeReports;

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
foreman_leapp-0.0.6 webpack/components/PreupgradeReports/PreupgradeReports.js