import React, { useEffect } from 'react'; import PropTypes from 'prop-types'; import { noop } from 'foremanReact/common/helpers'; import { useUrlParams } from 'foremanReact/components/PF4/TableIndexPage/Table/TableHooks'; import ActivationKeys from './fields/ActivationKeys'; import IgnoreSubmanErrors from './fields/IgnoreSubmanErrors'; import Force from './fields/Force'; export const RegistrationCommands = ({ pluginValues, onChange, isLoading, }) => ( <> ); RegistrationCommands.propTypes = { pluginValues: PropTypes.object, // eslint-disable-line react/forbid-prop-types onChange: PropTypes.func, isLoading: PropTypes.bool, }; RegistrationCommands.defaultProps = { pluginValues: {}, isLoading: false, onChange: noop, }; export const RegistrationActivationKeys = ({ organizationId, hostGroupId, pluginValues, pluginData, onChange, handleInvalidField, isLoading, }) => { const { initialAKSelection } = useUrlParams(); useEffect(() => { onChange({ activationKeys: [] }); }, [onChange, organizationId, hostGroupId]); useEffect(() => { if (initialAKSelection && (pluginData?.activationKeys ?? []).some(ak => ak.name === initialAKSelection)) { onChange({ activationKeys: initialAKSelection.split(',') }); } }, [initialAKSelection, onChange, pluginData?.activationKeys]); return ( ); }; RegistrationActivationKeys.propTypes = { organizationId: PropTypes.oneOfType([PropTypes.string, PropTypes.number]), hostGroupId: PropTypes.oneOfType([PropTypes.string, PropTypes.number]), pluginValues: PropTypes.object, // eslint-disable-line react/forbid-prop-types pluginData: PropTypes.object, // eslint-disable-line react/forbid-prop-types onChange: PropTypes.func, handleInvalidField: PropTypes.func, isLoading: PropTypes.bool, }; RegistrationActivationKeys.defaultProps = { organizationId: undefined, hostGroupId: undefined, pluginValues: {}, pluginData: {}, isLoading: false, onChange: noop, handleInvalidField: noop, };