Sha256: a311414dacf1585bd9136f6b564ad824d0cb6d10019626fc51e48772af4720c3

Contents?: true

Size: 1.42 KB

Versions: 6

Compression:

Stored size: 1.42 KB

Contents

import React, { useContext, useState } from 'react';
import { useSelector } from 'react-redux';
import { translate as __ } from 'foremanReact/common/I18n';
import { DualListSelector } from '@patternfly/react-core';
import ACSCreateContext from '../ACSCreateContext';
import WizardHeader from '../../../ContentViews/components/WizardHeader';
import { selectSmartProxy } from '../../../SmartProxy/SmartProxyContentSelectors';

const ACSSmartProxies = () => {
  const {
    smartProxies, setSmartProxies,
  } = useContext(ACSCreateContext);
  const availableSmartProxies = useSelector(selectSmartProxy);
  const { results } = availableSmartProxies;
  const [availableOptions, setAvailableOptions] = useState(results?.map(proxy =>
    proxy.name)?.filter(sp => !smartProxies.includes(sp)));
  const onListChange = (newAvailableOptions, newChosenOptions) => {
    setAvailableOptions(newAvailableOptions);
    setSmartProxies(newChosenOptions);
  };

  return (
    <>
      <WizardHeader
        title={__('Select smart proxy')}
        description={__('Select smart proxies to be used with this source.')}
      />
      <DualListSelector
        isSearchable
        availableOptions={availableOptions}
        chosenOptions={smartProxies}
        addAll={onListChange}
        removeAll={onListChange}
        addSelected={onListChange}
        removeSelected={onListChange}
        id="selector"
      />
    </>
  );
};

export default ACSSmartProxies;

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
katello-4.6.2.1 webpack/scenes/AlternateContentSources/Create/Steps/ACSSmartProxies.js
katello-4.6.2 webpack/scenes/AlternateContentSources/Create/Steps/ACSSmartProxies.js
katello-4.6.1 webpack/scenes/AlternateContentSources/Create/Steps/ACSSmartProxies.js
katello-4.6.0 webpack/scenes/AlternateContentSources/Create/Steps/ACSSmartProxies.js
katello-4.6.0.rc2 webpack/scenes/AlternateContentSources/Create/Steps/ACSSmartProxies.js
katello-4.6.0.rc1 webpack/scenes/AlternateContentSources/Create/Steps/ACSSmartProxies.js