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