Sha256: dc72e3a6c0497597e3d8ee846bb0c9a7ebb7f6712f1982f014464f0667c3276d

Contents?: true

Size: 1.78 KB

Versions: 9

Compression:

Stored size: 1.78 KB

Contents

import React, { useState } from 'react';
import {
  Dropdown,
  DropdownItem,
  KebabToggle,
  DropdownPosition,
} from '@patternfly/react-core';
import {
  INVENTORY_PAGE_TITLE,
  ACTIONS_HISTORY_BUTTON_TEXT,
  DOCS_BUTTON_TEXT,
  CLOUD_PING_TITLE,
} from '../../ForemanInventoryConstants';
import {
  getActionsHistoryUrl,
  getInventoryDocsUrl,
} from '../../ForemanInventoryHelpers';
import CloudPingModal from './components/CloudPingModal';

const PageTitle = () => {
  const [isDropdownOpen, setIsDropdownOpen] = useState(false);
  const [showPingModal, setPingModal] = useState(false);
  const togglePingModal = () => setPingModal(v => !v);
  const dropdownItems = [
    <DropdownItem
      key="tasks-history-button"
      href={getActionsHistoryUrl()}
      target="_blank"
      rel="noopener noreferrer"
    >
      {ACTIONS_HISTORY_BUTTON_TEXT}
    </DropdownItem>,
    <DropdownItem
      key="inventory-documentation-button"
      href={getInventoryDocsUrl()}
      target="_blank"
      rel="noopener noreferrer"
    >
      {DOCS_BUTTON_TEXT}
    </DropdownItem>,
    <DropdownItem key="cloud-ping" onClick={togglePingModal}>
      {CLOUD_PING_TITLE}
    </DropdownItem>,
  ];
  return (
    <div className="row form-group inventory-upload-header-title">
      <h1 className="col-md-8">{INVENTORY_PAGE_TITLE}</h1>
      <Dropdown
        className="title-dropdown"
        onSelect={() => setIsDropdownOpen(false)}
        toggle={<KebabToggle onToggle={isOpen => setIsDropdownOpen(isOpen)} />}
        isOpen={isDropdownOpen}
        isPlain
        dropdownItems={dropdownItems}
        position={DropdownPosition.right}
      />
      <CloudPingModal
        isOpen={showPingModal}
        toggle={togglePingModal}
        title={CLOUD_PING_TITLE}
      />
    </div>
  );
};
export default PageTitle;

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
foreman_rh_cloud-4.0.36 webpack/ForemanInventoryUpload/Components/PageHeader/PageTitle.js
foreman_rh_cloud-4.0.35 webpack/ForemanInventoryUpload/Components/PageHeader/PageTitle.js
foreman_rh_cloud-4.0.32 webpack/ForemanInventoryUpload/Components/PageHeader/PageTitle.js
foreman_rh_cloud-4.0.31 webpack/ForemanInventoryUpload/Components/PageHeader/PageTitle.js
foreman_rh_cloud-4.0.30 webpack/ForemanInventoryUpload/Components/PageHeader/PageTitle.js
foreman_rh_cloud-4.0.29 webpack/ForemanInventoryUpload/Components/PageHeader/PageTitle.js
foreman_rh_cloud-4.0.27 webpack/ForemanInventoryUpload/Components/PageHeader/PageTitle.js
foreman_rh_cloud-4.0.26 webpack/ForemanInventoryUpload/Components/PageHeader/PageTitle.js
foreman_rh_cloud-4.0.25.1 webpack/ForemanInventoryUpload/Components/PageHeader/PageTitle.js