ESLint: Resolve useSelector-prefer-selectors errors
This resolves all occurences of useSelector-prefer-selectors errors.
This commit is contained in:
parent
3d9f171611
commit
155962c141
33 changed files with 103 additions and 165 deletions
|
|
@ -139,9 +139,7 @@ const BlueprintsSidebar = () => {
|
|||
};
|
||||
|
||||
const BlueprintSearch = ({ blueprintsTotal }: blueprintSearchProps) => {
|
||||
const blueprintSearchInput = useAppSelector((state) =>
|
||||
selectBlueprintSearchInput(state)
|
||||
);
|
||||
const blueprintSearchInput = useAppSelector(selectBlueprintSearchInput);
|
||||
const dispatch = useAppDispatch();
|
||||
const debouncedSearch = useCallback(
|
||||
debounce((filter) => {
|
||||
|
|
|
|||
|
|
@ -116,7 +116,6 @@ CustomButtons.propTypes = {
|
|||
handleNext: PropTypes.func,
|
||||
handlePrev: PropTypes.func,
|
||||
nextStep: PropTypes.oneOfType([PropTypes.string, PropTypes.func]),
|
||||
isSaving: PropTypes.bool,
|
||||
};
|
||||
|
||||
export default CustomButtons;
|
||||
|
|
|
|||
|
|
@ -121,34 +121,24 @@ const CreateImageWizard = ({ startStepIndex = 1 }: CreateImageWizardProps) => {
|
|||
* */
|
||||
|
||||
// Image Output
|
||||
const targetEnvironments = useAppSelector((state) => selectImageTypes(state));
|
||||
const targetEnvironments = useAppSelector(selectImageTypes);
|
||||
// AWS
|
||||
const awsShareMethod = useAppSelector((state) => selectAwsShareMethod(state));
|
||||
const awsAccountId = useAppSelector((state) => selectAwsAccountId(state));
|
||||
const awsSourceId = useAppSelector((state) => selectAwsSourceId(state));
|
||||
const awsShareMethod = useAppSelector(selectAwsShareMethod);
|
||||
const awsAccountId = useAppSelector(selectAwsAccountId);
|
||||
const awsSourceId = useAppSelector(selectAwsSourceId);
|
||||
// GCP
|
||||
const gcpShareMethod = useAppSelector((state) => selectGcpShareMethod(state));
|
||||
const gcpEmail = useAppSelector((state) => selectGcpEmail(state));
|
||||
const gcpShareMethod = useAppSelector(selectGcpShareMethod);
|
||||
const gcpEmail = useAppSelector(selectGcpEmail);
|
||||
// AZURE
|
||||
const azureShareMethod = useAppSelector((state) =>
|
||||
selectAzureShareMethod(state)
|
||||
);
|
||||
const azureTenantId = useAppSelector((state) => selectAzureTenantId(state));
|
||||
const azureSubscriptionId = useAppSelector((state) =>
|
||||
selectAzureSubscriptionId(state)
|
||||
);
|
||||
const azureResourceGroup = useAppSelector((state) =>
|
||||
selectAzureResourceGroup(state)
|
||||
);
|
||||
const azureSource = useAppSelector((state) => selectAzureSource(state));
|
||||
const registrationType = useAppSelector((state) =>
|
||||
selectRegistrationType(state)
|
||||
);
|
||||
const blueprintName = useAppSelector((state) => selectBlueprintName(state));
|
||||
const blueprintDescription = useAppSelector((state) =>
|
||||
selectBlueprintDescription(state)
|
||||
);
|
||||
const activationKey = useAppSelector((state) => selectActivationKey(state));
|
||||
const azureShareMethod = useAppSelector(selectAzureShareMethod);
|
||||
const azureTenantId = useAppSelector(selectAzureTenantId);
|
||||
const azureSubscriptionId = useAppSelector(selectAzureSubscriptionId);
|
||||
const azureResourceGroup = useAppSelector(selectAzureResourceGroup);
|
||||
const azureSource = useAppSelector(selectAzureSource);
|
||||
const registrationType = useAppSelector(selectRegistrationType);
|
||||
const blueprintName = useAppSelector(selectBlueprintName);
|
||||
const blueprintDescription = useAppSelector(selectBlueprintDescription);
|
||||
const activationKey = useAppSelector(selectActivationKey);
|
||||
|
||||
return (
|
||||
<>
|
||||
|
|
|
|||
|
|
@ -25,10 +25,8 @@ import {
|
|||
|
||||
const DetailsStep = () => {
|
||||
const dispatch = useAppDispatch();
|
||||
const blueprintName = useAppSelector((state) => selectBlueprintName(state));
|
||||
const blueprintDescription = useAppSelector((state) =>
|
||||
selectBlueprintDescription(state)
|
||||
);
|
||||
const blueprintName = useAppSelector(selectBlueprintName);
|
||||
const blueprintDescription = useAppSelector(selectBlueprintDescription);
|
||||
const handleNameChange = (
|
||||
_event: React.FormEvent<HTMLInputElement>,
|
||||
name: string
|
||||
|
|
|
|||
|
|
@ -54,10 +54,8 @@ export const FileSystemStepFooter = () => {
|
|||
const [isValid, setIsValid] = useState(false);
|
||||
const dispatch = useAppDispatch();
|
||||
const [isNextDisabled, setNextDisabled] = useState(false);
|
||||
const fileSystemPartitionMode = useAppSelector((state) =>
|
||||
selectFileSystemPartitionMode(state)
|
||||
);
|
||||
const partitions = useAppSelector((state) => selectPartitions(state));
|
||||
const fileSystemPartitionMode = useAppSelector(selectFileSystemPartitionMode);
|
||||
const partitions = useAppSelector(selectPartitions);
|
||||
|
||||
const onValidate = () => {
|
||||
dispatch(setIsNextButtonTouched(false));
|
||||
|
|
@ -93,14 +91,12 @@ export const FileSystemStepFooter = () => {
|
|||
};
|
||||
|
||||
const FileSystemConfiguration = () => {
|
||||
const partitions = useAppSelector((state) => selectPartitions(state));
|
||||
const environments = useAppSelector((state) => selectImageTypes(state));
|
||||
const partitions = useAppSelector(selectPartitions);
|
||||
const environments = useAppSelector(selectImageTypes);
|
||||
|
||||
const dispatch = useAppDispatch();
|
||||
|
||||
const isNextButtonPristine = useAppSelector((state) =>
|
||||
selectIsNextButtonTouched(state)
|
||||
);
|
||||
const isNextButtonPristine = useAppSelector(selectIsNextButtonTouched);
|
||||
const handleAddPartition = () => {
|
||||
const id = uuidv4();
|
||||
dispatch(
|
||||
|
|
@ -233,13 +229,11 @@ const getSuffix = (mountpoint: string) => {
|
|||
|
||||
const Row = ({ partition }: RowPropTypes) => {
|
||||
const dispatch = useAppDispatch();
|
||||
const partitions = useAppSelector((state) => selectPartitions(state));
|
||||
const partitions = useAppSelector(selectPartitions);
|
||||
const handleRemovePartition = (id: string) => {
|
||||
dispatch(removePartition(id));
|
||||
};
|
||||
const isNextButtonPristine = useAppSelector((state) =>
|
||||
selectIsNextButtonTouched(state)
|
||||
);
|
||||
const isNextButtonPristine = useAppSelector(selectIsNextButtonTouched);
|
||||
const duplicates = getDuplicateMountPoints(partitions);
|
||||
|
||||
return (
|
||||
|
|
|
|||
|
|
@ -14,9 +14,7 @@ import {
|
|||
const FileSystemPartition = () => {
|
||||
const id = uuidv4();
|
||||
const dispatch = useAppDispatch();
|
||||
const fileSystemPartitionMode = useAppSelector((state) =>
|
||||
selectFileSystemPartitionMode(state)
|
||||
);
|
||||
const fileSystemPartitionMode = useAppSelector(selectFileSystemPartitionMode);
|
||||
return (
|
||||
<FormGroup>
|
||||
<Radio
|
||||
|
|
|
|||
|
|
@ -11,9 +11,7 @@ import { selectFileSystemPartitionMode } from '../../../../store/wizardSlice';
|
|||
export type FileSystemPartitionMode = 'automatic' | 'manual';
|
||||
|
||||
const FileSystemStep = () => {
|
||||
const fileSystemPartitionMode = useAppSelector((state) =>
|
||||
selectFileSystemPartitionMode(state)
|
||||
);
|
||||
const fileSystemPartitionMode = useAppSelector(selectFileSystemPartitionMode);
|
||||
|
||||
return (
|
||||
<Form>
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@ import {
|
|||
} from '../../../../store/wizardSlice';
|
||||
|
||||
const ArchSelect = () => {
|
||||
const arch = useAppSelector((state) => selectArchitecture(state));
|
||||
const arch = useAppSelector(selectArchitecture);
|
||||
const dispatch = useAppDispatch();
|
||||
const [isOpen, setIsOpen] = useState(false);
|
||||
|
||||
|
|
|
|||
|
|
@ -117,7 +117,7 @@ export const MajorReleasesLifecyclesChart = () => {
|
|||
};
|
||||
|
||||
const ReleaseLifecycle = () => {
|
||||
const release = useAppSelector((state) => selectDistribution(state));
|
||||
const release = useAppSelector(selectDistribution);
|
||||
const [isExpanded, setIsExpanded] = useState(true);
|
||||
|
||||
const onToggle = (_event: React.MouseEvent, isExpanded: boolean) => {
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ const ReleaseSelect = () => {
|
|||
// What the UI refers to as the "release" is referred to as the "distribution" in the API.
|
||||
// The Redux store follows the API convention, and data read from or to the store will use
|
||||
// the word "Distribution" instead of "Release".
|
||||
const distribution = useAppSelector((state) => selectDistribution(state));
|
||||
const distribution = useAppSelector(selectDistribution);
|
||||
const dispatch = useAppDispatch();
|
||||
const [isOpen, setIsOpen] = useState(false);
|
||||
const [showDevelopmentOptions, setShowDevelopmentOptions] = useState(false);
|
||||
|
|
|
|||
|
|
@ -28,9 +28,9 @@ import {
|
|||
import { useGetEnvironment } from '../../../../Utilities/useGetEnvironment';
|
||||
|
||||
const TargetEnvironment = () => {
|
||||
const arch = useAppSelector((state) => selectArchitecture(state));
|
||||
const environments = useAppSelector((state) => selectImageTypes(state));
|
||||
const distribution = useAppSelector((state) => selectDistribution(state));
|
||||
const arch = useAppSelector(selectArchitecture);
|
||||
const environments = useAppSelector(selectImageTypes);
|
||||
const distribution = useAppSelector(selectDistribution);
|
||||
const { data } = useGetArchitecturesQuery({
|
||||
distribution: distribution,
|
||||
});
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ import { selectDistribution } from '../../../../store/wizardSlice';
|
|||
import DocumentationButton from '../../../sharedComponents/DocumentationButton';
|
||||
|
||||
const ImageOutputStep = () => {
|
||||
const distribution = useAppSelector((state) => selectDistribution(state));
|
||||
const distribution = useAppSelector(selectDistribution);
|
||||
|
||||
return (
|
||||
<Form>
|
||||
|
|
|
|||
|
|
@ -37,13 +37,11 @@ import {
|
|||
} from '../../../../store/wizardSlice';
|
||||
|
||||
const ProfileSelector = () => {
|
||||
const oscapProfile = useAppSelector((state) => selectProfile(state));
|
||||
let kernel = useAppSelector((state) => selectKernel(state));
|
||||
let disabledServices = useAppSelector((state) =>
|
||||
selectDisabledServices(state)
|
||||
);
|
||||
let enabledServices = useAppSelector((state) => selectEnabledServices(state));
|
||||
const release = useAppSelector((state) => selectDistribution(state));
|
||||
const oscapProfile = useAppSelector(selectProfile);
|
||||
let kernel = useAppSelector(selectKernel);
|
||||
let disabledServices = useAppSelector(selectDisabledServices);
|
||||
let enabledServices = useAppSelector(selectEnabledServices);
|
||||
const release = useAppSelector(selectDistribution);
|
||||
const dispatch = useAppDispatch();
|
||||
const [profileName, setProfileName] = useState<string | undefined>('None');
|
||||
const [isOpen, setIsOpen] = useState(false);
|
||||
|
|
@ -256,7 +254,7 @@ const OScapSelectOption = ({
|
|||
setProfileName,
|
||||
input,
|
||||
}: OScapSelectOptionPropType) => {
|
||||
const release = useAppSelector((state) => selectDistribution(state));
|
||||
const release = useAppSelector(selectDistribution);
|
||||
const { data } = useGetOscapCustomizationsQuery({
|
||||
distribution: release,
|
||||
profile: profile_id,
|
||||
|
|
@ -285,7 +283,7 @@ const OScapSelectOption = ({
|
|||
};
|
||||
|
||||
export const Oscap = () => {
|
||||
const oscapProfile = useAppSelector((state) => selectProfile(state));
|
||||
const oscapProfile = useAppSelector(selectProfile);
|
||||
|
||||
return (
|
||||
<>
|
||||
|
|
|
|||
|
|
@ -20,8 +20,8 @@ import {
|
|||
} from '../../../../store/wizardSlice';
|
||||
|
||||
export const OscapProfileInformation = (): JSX.Element => {
|
||||
const release = useAppSelector((state) => selectDistribution(state));
|
||||
const oscapProfile = useAppSelector((state) => selectProfile(state));
|
||||
const release = useAppSelector(selectDistribution);
|
||||
const oscapProfile = useAppSelector(selectProfile);
|
||||
|
||||
const {
|
||||
data: oscapProfileInfo,
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ import DocumentationButton from '../../../sharedComponents/DocumentationButton';
|
|||
|
||||
const OscapStep = () => {
|
||||
const prefetchOscapProfile = imageBuilderApi.usePrefetch('getOscapProfiles');
|
||||
const release = useAppSelector((state) => selectDistribution(state));
|
||||
const release = useAppSelector(selectDistribution);
|
||||
prefetchOscapProfile({ distribution: release });
|
||||
|
||||
return (
|
||||
|
|
|
|||
|
|
@ -120,12 +120,10 @@ const TooManyResultsWithExactMatch = () => {
|
|||
const Packages = () => {
|
||||
const dispatch = useDispatch();
|
||||
|
||||
const arch = useAppSelector((state) => selectArchitecture(state));
|
||||
const distribution = useAppSelector((state) => selectDistribution(state));
|
||||
const customRepositories = useAppSelector((state) =>
|
||||
selectCustomRepositories(state)
|
||||
);
|
||||
const packages = useAppSelector((state) => selectPackages(state));
|
||||
const arch = useAppSelector(selectArchitecture);
|
||||
const distribution = useAppSelector(selectDistribution);
|
||||
const customRepositories = useAppSelector(selectCustomRepositories);
|
||||
const packages = useAppSelector(selectPackages);
|
||||
|
||||
const [perPage, setPerPage] = useState(10);
|
||||
const [page, setPage] = useState(1);
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ import { useShowActivationKeyQuery } from '../../../../store/rhsmApi';
|
|||
import { selectActivationKey } from '../../../../store/wizardSlice';
|
||||
|
||||
const ActivationKeyInformation = (): JSX.Element => {
|
||||
const activationKey = useAppSelector((state) => selectActivationKey(state));
|
||||
const activationKey = useAppSelector(selectActivationKey);
|
||||
|
||||
const {
|
||||
data: activationKeyInfo,
|
||||
|
|
|
|||
|
|
@ -139,7 +139,7 @@ const ManageKeysButton = () => {
|
|||
const ActivationKeysList = () => {
|
||||
const dispatch = useAppDispatch();
|
||||
|
||||
const activationKey = useAppSelector((state) => selectActivationKey(state));
|
||||
const activationKey = useAppSelector(selectActivationKey);
|
||||
|
||||
const { isProd } = useGetEnvironment();
|
||||
const [isOpen, setIsOpen] = useState(false);
|
||||
|
|
|
|||
|
|
@ -138,9 +138,7 @@ const RhcPopover = () => {
|
|||
const Registration = () => {
|
||||
const dispatch = useAppDispatch();
|
||||
|
||||
const registrationType = useAppSelector((state) =>
|
||||
selectRegistrationType(state)
|
||||
);
|
||||
const registrationType = useAppSelector(selectRegistrationType);
|
||||
|
||||
const [showOptions, setShowOptions] = useState(
|
||||
registrationType === 'register-now-insights' ||
|
||||
|
|
|
|||
|
|
@ -14,10 +14,8 @@ import {
|
|||
} from '../../../../store/wizardSlice';
|
||||
|
||||
const RegistrationStep = () => {
|
||||
const registrationType = useAppSelector((state) =>
|
||||
selectRegistrationType(state)
|
||||
);
|
||||
const activationKey = useAppSelector((state) => selectActivationKey(state));
|
||||
const registrationType = useAppSelector(selectRegistrationType);
|
||||
const activationKey = useAppSelector(selectActivationKey);
|
||||
return (
|
||||
<Form>
|
||||
<Title headingLevel="h1" size="xl">
|
||||
|
|
|
|||
|
|
@ -166,13 +166,10 @@ const convertSchemaToIBPayloadRepo = (repo: ApiRepositoryResponseRead) => {
|
|||
|
||||
const Repositories = () => {
|
||||
const dispatch = useAppDispatch();
|
||||
|
||||
const arch = useAppSelector((state) => selectArchitecture(state));
|
||||
const distribution = useAppSelector((state) => selectDistribution(state));
|
||||
const arch = useAppSelector(selectArchitecture);
|
||||
const distribution = useAppSelector(selectDistribution);
|
||||
const version = releaseToVersion(distribution);
|
||||
const repositoriesList = useAppSelector((state) =>
|
||||
selectCustomRepositories(state)
|
||||
);
|
||||
const repositoriesList = useAppSelector(selectCustomRepositories);
|
||||
|
||||
const [filterValue, setFilterValue] = useState('');
|
||||
const [perPage, setPerPage] = useState(10);
|
||||
|
|
|
|||
|
|
@ -34,16 +34,12 @@ import {
|
|||
} from '../../../../store/wizardSlice';
|
||||
|
||||
const Review = () => {
|
||||
const blueprintName = useAppSelector((state) => selectBlueprintName(state));
|
||||
const blueprintDescription = useAppSelector((state) =>
|
||||
selectBlueprintDescription(state)
|
||||
);
|
||||
const distribution = useAppSelector((state) => selectDistribution(state));
|
||||
const environments = useAppSelector((state) => selectImageTypes(state));
|
||||
const oscapProfile = useAppSelector((state) => selectProfile(state));
|
||||
const registrationType = useAppSelector((state) =>
|
||||
selectRegistrationType(state)
|
||||
);
|
||||
const blueprintName = useAppSelector(selectBlueprintName);
|
||||
const blueprintDescription = useAppSelector(selectBlueprintDescription);
|
||||
const distribution = useAppSelector(selectDistribution);
|
||||
const environments = useAppSelector(selectImageTypes);
|
||||
const oscapProfile = useAppSelector(selectProfile);
|
||||
const registrationType = useAppSelector(selectRegistrationType);
|
||||
|
||||
const [isExpandedImageOutput, setIsExpandedImageOutput] = useState(false);
|
||||
const [isExpandedTargetEnvs, setIsExpandedTargetEnvs] = useState(false);
|
||||
|
|
|
|||
|
|
@ -58,7 +58,7 @@ const RepoName = ({ repoUrl }: repoPropType) => {
|
|||
};
|
||||
|
||||
export const FSReviewTable = () => {
|
||||
const partitions = useAppSelector((state) => selectPartitions(state));
|
||||
const partitions = useAppSelector(selectPartitions);
|
||||
return (
|
||||
<Panel isScrollable>
|
||||
<PanelMain maxHeight="30ch">
|
||||
|
|
@ -92,7 +92,7 @@ export const FSReviewTable = () => {
|
|||
};
|
||||
|
||||
export const PackagesTable = () => {
|
||||
const packages = useAppSelector((state) => selectPackages(state));
|
||||
const packages = useAppSelector(selectPackages);
|
||||
return (
|
||||
<Panel isScrollable>
|
||||
<PanelMain maxHeight="30ch">
|
||||
|
|
@ -124,9 +124,7 @@ export const PackagesTable = () => {
|
|||
};
|
||||
|
||||
export const RepositoriesTable = () => {
|
||||
const repositoriesList = useAppSelector((state) =>
|
||||
selectCustomRepositories(state)
|
||||
);
|
||||
const repositoriesList = useAppSelector(selectCustomRepositories);
|
||||
return (
|
||||
<Panel isScrollable>
|
||||
<PanelMain maxHeight="30ch">
|
||||
|
|
|
|||
|
|
@ -66,8 +66,8 @@ const ExpirationWarning = () => {
|
|||
};
|
||||
|
||||
export const ImageOutputList = () => {
|
||||
const distribution = useAppSelector((state) => selectDistribution(state));
|
||||
const arch = useAppSelector((state) => selectArchitecture(state));
|
||||
const distribution = useAppSelector(selectDistribution);
|
||||
const arch = useAppSelector(selectArchitecture);
|
||||
return (
|
||||
<TextContent>
|
||||
{distribution === RHEL_8 && (
|
||||
|
|
@ -105,9 +105,7 @@ export const ImageOutputList = () => {
|
|||
);
|
||||
};
|
||||
export const FSCList = () => {
|
||||
const fileSystemPartitionMode = useAppSelector((state) =>
|
||||
selectFileSystemPartitionMode(state)
|
||||
);
|
||||
const fileSystemPartitionMode = useAppSelector(selectFileSystemPartitionMode);
|
||||
|
||||
return (
|
||||
<TextContent>
|
||||
|
|
@ -188,9 +186,9 @@ export const TargetEnvAWSList = () => {
|
|||
const { isSuccess } = useGetSourceListQuery({
|
||||
provider: 'aws',
|
||||
});
|
||||
const awsAccountId = useAppSelector((state) => selectAwsAccountId(state));
|
||||
const awsShareMethod = useAppSelector((state) => selectAwsShareMethod(state));
|
||||
const sourceId = useAppSelector((state) => selectAwsSourceId(state));
|
||||
const awsAccountId = useAppSelector(selectAwsAccountId);
|
||||
const awsShareMethod = useAppSelector(selectAwsShareMethod);
|
||||
const sourceId = useAppSelector(selectAwsSourceId);
|
||||
const { source } = useGetSourceListQuery(
|
||||
{
|
||||
provider: 'aws',
|
||||
|
|
@ -242,9 +240,9 @@ export const TargetEnvAWSList = () => {
|
|||
};
|
||||
|
||||
export const TargetEnvGCPList = () => {
|
||||
const accountType = useAppSelector((state) => selectGcpAccountType(state));
|
||||
const sharedMethod = useAppSelector((state) => selectGcpShareMethod(state));
|
||||
const email = useAppSelector((state) => selectGcpEmail(state));
|
||||
const accountType = useAppSelector(selectGcpAccountType);
|
||||
const sharedMethod = useAppSelector(selectGcpShareMethod);
|
||||
const email = useAppSelector(selectGcpEmail);
|
||||
return (
|
||||
<TextContent>
|
||||
<Text component={TextVariants.h3}>GCP</Text>
|
||||
|
|
@ -303,15 +301,11 @@ export const TargetEnvGCPList = () => {
|
|||
export const TargetEnvAzureList = () => {
|
||||
const { data: rawAzureSources, isSuccess: isSuccessAzureSources } =
|
||||
useGetSourceListQuery({ provider: 'azure' });
|
||||
const shareMethod = useAppSelector((state) => selectAzureShareMethod(state));
|
||||
const tenantId = useAppSelector((state) => selectAzureTenantId(state));
|
||||
const azureSource = useAppSelector((state) => selectAzureSource(state));
|
||||
const azureResourceGroup = useAppSelector((state) =>
|
||||
selectAzureResourceGroup(state)
|
||||
);
|
||||
const subscriptionId = useAppSelector((state) =>
|
||||
selectAzureSubscriptionId(state)
|
||||
);
|
||||
const shareMethod = useAppSelector(selectAzureShareMethod);
|
||||
const tenantId = useAppSelector(selectAzureTenantId);
|
||||
const azureSource = useAppSelector(selectAzureSource);
|
||||
const azureResourceGroup = useAppSelector(selectAzureResourceGroup);
|
||||
const subscriptionId = useAppSelector(selectAzureSubscriptionId);
|
||||
|
||||
return (
|
||||
<TextContent>
|
||||
|
|
@ -411,10 +405,8 @@ export const TargetEnvOtherList = () => {
|
|||
};
|
||||
|
||||
export const ContentList = () => {
|
||||
const customRepositories = useAppSelector((state) =>
|
||||
selectCustomRepositories(state)
|
||||
);
|
||||
const packages = useAppSelector((state) => selectPackages(state));
|
||||
const customRepositories = useAppSelector(selectCustomRepositories);
|
||||
const packages = useAppSelector(selectPackages);
|
||||
return (
|
||||
<TextContent>
|
||||
<TextList component={TextListVariants.dl}>
|
||||
|
|
@ -501,10 +493,8 @@ export const RegisterLaterList = () => {
|
|||
};
|
||||
|
||||
export const RegisterNowList = () => {
|
||||
const activationKey = useAppSelector((state) => selectActivationKey(state));
|
||||
const registrationType = useAppSelector((state) =>
|
||||
selectRegistrationType(state)
|
||||
);
|
||||
const activationKey = useAppSelector(selectActivationKey);
|
||||
const registrationType = useAppSelector(selectRegistrationType);
|
||||
const [orgId, setOrgId] = useState<string | undefined>(undefined);
|
||||
const { auth } = useChrome();
|
||||
|
||||
|
|
@ -609,10 +599,8 @@ export const RegisterNowList = () => {
|
|||
};
|
||||
|
||||
export const ImageDetailsList = () => {
|
||||
const blueprintName = useAppSelector((state) => selectBlueprintName(state));
|
||||
const blueprintDescription = useAppSelector((state) =>
|
||||
selectBlueprintDescription(state)
|
||||
);
|
||||
const blueprintName = useAppSelector(selectBlueprintName);
|
||||
const blueprintDescription = useAppSelector(selectBlueprintDescription);
|
||||
|
||||
return (
|
||||
<TextContent>
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ import {
|
|||
|
||||
export const AwsAccountId = () => {
|
||||
const dispatch = useAppDispatch();
|
||||
const sourceId = useAppSelector((state) => selectAwsSourceId(state));
|
||||
const sourceId = useAppSelector(selectAwsSourceId);
|
||||
|
||||
const { data, isError } = useGetSourceUploadInfoQuery(
|
||||
{
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ import {
|
|||
export const AwsSourcesSelect = () => {
|
||||
const dispatch = useAppDispatch();
|
||||
const [isOpen, setIsOpen] = useState(false);
|
||||
const sourceId = useAppSelector((state) => selectAwsSourceId(state));
|
||||
const sourceId = useAppSelector(selectAwsSourceId);
|
||||
|
||||
const { data, isFetching, isLoading, isSuccess, isError, refetch } =
|
||||
useGetSourceListQuery({
|
||||
|
|
|
|||
|
|
@ -50,8 +50,8 @@ const SourcesButton = () => {
|
|||
const Aws = () => {
|
||||
const dispatch = useAppDispatch();
|
||||
|
||||
const shareMethod = useAppSelector((state) => selectAwsShareMethod(state));
|
||||
const shareWithAccount = useAppSelector((state) => selectAwsAccountId(state));
|
||||
const shareMethod = useAppSelector(selectAwsShareMethod);
|
||||
const shareWithAccount = useAppSelector(selectAwsAccountId);
|
||||
|
||||
return (
|
||||
<Form>
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ import { useAppSelector } from '../../../../../store/hooks';
|
|||
import { selectAzureTenantId } from '../../../../../store/wizardSlice';
|
||||
|
||||
export const AzureAuthButton = () => {
|
||||
const tenantId = useAppSelector((state) => selectAzureTenantId(state));
|
||||
const tenantId = useAppSelector(selectAzureTenantId);
|
||||
const guidRegex = new RegExp(
|
||||
'^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$',
|
||||
'i'
|
||||
|
|
|
|||
|
|
@ -16,10 +16,8 @@ import {
|
|||
} from '../../../../../store/wizardSlice';
|
||||
|
||||
export const AzureResourceGroups = () => {
|
||||
const azureSource = useAppSelector((state) => selectAzureSource(state));
|
||||
const azureResourceGroup = useAppSelector((state) =>
|
||||
selectAzureResourceGroup(state)
|
||||
);
|
||||
const azureSource = useAppSelector(selectAzureSource);
|
||||
const azureResourceGroup = useAppSelector(selectAzureResourceGroup);
|
||||
const dispatch = useAppDispatch();
|
||||
const [isOpen, setIsOpen] = useState(false);
|
||||
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ import {
|
|||
} from '../../../../../store/wizardSlice';
|
||||
|
||||
export const AzureSourcesSelect = () => {
|
||||
const azureSource = useAppSelector((state) => selectAzureSource(state));
|
||||
const azureSource = useAppSelector(selectAzureSource);
|
||||
const dispatch = useAppDispatch();
|
||||
const [isOpen, setIsOpen] = useState(false);
|
||||
|
||||
|
|
|
|||
|
|
@ -56,14 +56,10 @@ const SourcesButton = () => {
|
|||
|
||||
const Azure = () => {
|
||||
const dispatch = useAppDispatch();
|
||||
const shareMethod = useAppSelector((state) => selectAzureShareMethod(state));
|
||||
const tenantId = useAppSelector((state) => selectAzureTenantId(state));
|
||||
const subscriptionId = useAppSelector((state) =>
|
||||
selectAzureSubscriptionId(state)
|
||||
);
|
||||
const resourceGroup = useAppSelector((state) =>
|
||||
selectAzureResourceGroup(state)
|
||||
);
|
||||
const shareMethod = useAppSelector(selectAzureShareMethod);
|
||||
const tenantId = useAppSelector(selectAzureTenantId);
|
||||
const subscriptionId = useAppSelector(selectAzureSubscriptionId);
|
||||
const resourceGroup = useAppSelector(selectAzureResourceGroup);
|
||||
|
||||
return (
|
||||
<Form>
|
||||
|
|
|
|||
|
|
@ -25,9 +25,9 @@ export type GcpAccountType =
|
|||
const Gcp = () => {
|
||||
const dispatch = useAppDispatch();
|
||||
|
||||
const accountType = useAppSelector((state) => selectGcpAccountType(state));
|
||||
const shareMethod = useAppSelector((state) => selectGcpShareMethod(state));
|
||||
const gcpEmail = useAppSelector((state) => selectGcpEmail(state));
|
||||
const accountType = useAppSelector(selectGcpAccountType);
|
||||
const shareMethod = useAppSelector(selectGcpShareMethod);
|
||||
const gcpEmail = useAppSelector(selectGcpEmail);
|
||||
|
||||
return (
|
||||
<Form>
|
||||
|
|
|
|||
|
|
@ -15,8 +15,8 @@ import { releaseToVersion } from '../../../Utilities/releaseToVersion.js';
|
|||
* repositories that are no longer available in the Repositories service.
|
||||
*/
|
||||
export const useCheckRepositoriesAvailability = () => {
|
||||
const arch = useAppSelector((state) => selectArchitecture(state));
|
||||
const distribution = useAppSelector((state) => selectDistribution(state));
|
||||
const arch = useAppSelector(selectArchitecture);
|
||||
const distribution = useAppSelector(selectDistribution);
|
||||
const version = releaseToVersion(distribution);
|
||||
|
||||
// There needs to be two requests because the default limit for the
|
||||
|
|
@ -57,9 +57,7 @@ export const useCheckRepositoriesAvailability = () => {
|
|||
return { ...firstRequest };
|
||||
}, [firstRequest, followupRequest]);
|
||||
|
||||
const customRepositories = useAppSelector((state) =>
|
||||
selectCustomRepositories(state)
|
||||
);
|
||||
const customRepositories = useAppSelector(selectCustomRepositories);
|
||||
// customRepositories existing === we came here from Recreate
|
||||
if (isSuccess && customRepositories) {
|
||||
// Transform the fresh repos array into a Set to access its elements in O(1)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue