Skip to content

Commit 5dfc2a2

Browse files
multi: migrate all consumer imports to usePlatform()
Move 35 component and hook files from importing platform-switched hooks directly from barrel files to destructuring them from usePlatform(), preparing for barrel file cleanup.
1 parent 7efd354 commit 5dfc2a2

39 files changed

Lines changed: 245 additions & 120 deletions

src/Components/Blueprints/BlueprintDiffModal.tsx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import {
1010
ModalVariant,
1111
} from '@patternfly/react-core';
1212

13-
import { useGetBlueprintQuery } from '@/store/api/backend';
13+
import { usePlatform } from '@/context/platform';
1414
import { selectSelectedBlueprintId } from '@/store/slices/blueprint';
1515

1616
import { BuildImagesButton } from './BuildImagesButton';
@@ -31,6 +31,9 @@ const BlueprintDiffModal = ({
3131
isOpen,
3232
onClose,
3333
}: blueprintDiffProps) => {
34+
const {
35+
queries: { useGetBlueprintQuery },
36+
} = usePlatform();
3437
const selectedBlueprintId = useAppSelector(selectSelectedBlueprintId);
3538

3639
const { data: baseBlueprint } = useGetBlueprintQuery(

src/Components/Blueprints/BlueprintsPagination.tsx

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,8 @@ import React from 'react';
33
import { Pagination, PaginationVariant } from '@patternfly/react-core';
44
import { OnSetPage } from '@patternfly/react-core/dist/esm/components/Pagination/Pagination';
55

6-
import {
7-
GetBlueprintsApiArg,
8-
useGetBlueprintsQuery,
9-
} from '@/store/api/backend';
6+
import { usePlatform } from '@/context/platform';
7+
import { GetBlueprintsApiArg } from '@/store/api/backend';
108
import {
119
selectBlueprintSearchInput,
1210
selectLimit,
@@ -18,6 +16,9 @@ import {
1816
import { useAppDispatch, useAppSelector } from '../../store/hooks';
1917

2018
const BlueprintsPagination = () => {
19+
const {
20+
queries: { useGetBlueprintsQuery },
21+
} = usePlatform();
2122
const blueprintSearchInput = useAppSelector(selectBlueprintSearchInput);
2223
const blueprintsOffset = useAppSelector(selectOffset) || 0;
2324
const blueprintsLimit = useAppSelector(selectLimit) || 10;

src/Components/Blueprints/BlueprintsSideBar.tsx

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,8 @@ import { PlusCircleIcon, SearchIcon } from '@patternfly/react-icons';
1818
import { SVGIconProps } from '@patternfly/react-icons/dist/esm/createIcon';
1919
import useChrome from '@redhat-cloud-services/frontend-components/useChrome';
2020

21-
import {
22-
BlueprintItem,
23-
GetBlueprintsApiArg,
24-
imageBuilderApi,
25-
useGetBlueprintsQuery,
26-
} from '@/store/api/backend';
21+
import { usePlatform } from '@/context/platform';
22+
import { BlueprintItem, GetBlueprintsApiArg } from '@/store/api/backend';
2723
import {
2824
selectBlueprintSearchInput,
2925
selectLimit,
@@ -57,6 +53,9 @@ type emptyBlueprintStateProps = {
5753
};
5854

5955
const BlueprintsSidebar = () => {
56+
const {
57+
queries: { useGetBlueprintsQuery },
58+
} = usePlatform();
6059
const { analytics, auth } = useChrome();
6160
const { userData } = useGetUser(auth);
6261
const isOnPremise = useAppSelector(selectIsOnPremise);
@@ -181,6 +180,9 @@ const BlueprintsSidebar = () => {
181180
};
182181

183182
const BlueprintSearch = ({ blueprintsTotal }: blueprintSearchProps) => {
183+
const {
184+
api: { backendApi },
185+
} = usePlatform();
184186
const blueprintSearchInput = useAppSelector(selectBlueprintSearchInput);
185187
const dispatch = useAppDispatch();
186188
const [localSearchValue, setLocalSearchValue] = useState(
@@ -190,7 +192,7 @@ const BlueprintSearch = ({ blueprintsTotal }: blueprintSearchProps) => {
190192

191193
useEffect(() => {
192194
dispatch(setBlueprintsOffset(0));
193-
dispatch(imageBuilderApi.util.invalidateTags([{ type: 'Blueprints' }]));
195+
dispatch(backendApi.util.invalidateTags([{ type: 'Blueprints' }]));
194196
dispatch(
195197
setBlueprintSearchInput(
196198
debouncedSearchValue.length > 0 ? debouncedSearchValue : undefined,

src/Components/Blueprints/BuildImagesButton.tsx

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,8 @@ import { MenuToggleElement } from '@patternfly/react-core/dist/esm/components/Me
1818
import useChrome from '@redhat-cloud-services/frontend-components/useChrome';
1919
import { skipToken } from '@reduxjs/toolkit/query';
2020

21-
import { ImageTypes, useGetBlueprintQuery } from '@/store/api/backend';
21+
import { usePlatform } from '@/context/platform';
22+
import { ImageTypes } from '@/store/api/backend';
2223
import { selectSelectedBlueprintId } from '@/store/slices/blueprint';
2324
import { selectIsOnPremise } from '@/store/slices/env';
2425

@@ -35,6 +36,9 @@ type BuildImagesButtonPropTypes = {
3536
};
3637

3738
export const BuildImagesButton = ({ children }: BuildImagesButtonPropTypes) => {
39+
const {
40+
queries: { useGetBlueprintQuery },
41+
} = usePlatform();
3842
const selectedBlueprintId = useAppSelector(selectSelectedBlueprintId);
3943
const [deselectedTargets, setDeselectedTargets] = useState<ImageTypes[]>([]);
4044
const { trigger: buildBlueprint, isLoading: imageBuildLoading } =

src/Components/Blueprints/DeleteBlueprintModal.tsx

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,8 @@ import {
1010
} from '@patternfly/react-core';
1111
import useChrome from '@redhat-cloud-services/frontend-components/useChrome';
1212

13-
import {
14-
backendApi,
15-
GetBlueprintsApiArg,
16-
useGetBlueprintsQuery,
17-
} from '@/store/api/backend';
13+
import { usePlatform } from '@/context/platform';
14+
import { GetBlueprintsApiArg } from '@/store/api/backend';
1815
import {
1916
selectBlueprintSearchInput,
2017
selectLimit,
@@ -43,6 +40,10 @@ interface DeleteBlueprintModalProps {
4340
export const DeleteBlueprintModal: React.FunctionComponent<
4441
DeleteBlueprintModalProps
4542
> = ({ setShowDeleteModal, isOpen }: DeleteBlueprintModalProps) => {
43+
const {
44+
queries: { useGetBlueprintsQuery },
45+
api: { backendApi },
46+
} = usePlatform();
4647
const selectedBlueprintId = useAppSelector(selectSelectedBlueprintId);
4748
const blueprintSearchInput = useAppSelector(selectBlueprintSearchInput);
4849
const blueprintsOffset = useAppSelector(selectOffset) || PAGINATION_OFFSET;

src/Components/CreateImageWizard/steps/ImageOutput/components/ImageSourceSelect.tsx

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,8 @@ import {
1919
import { SyncAltIcon } from '@patternfly/react-icons';
2020

2121
import { RHEL_10_IMAGE_MODE_IMAGE } from '@/constants';
22-
import {
23-
BootcDistributionItem,
24-
useGetDistributionsQuery,
25-
} from '@/store/api/backend';
22+
import { usePlatform } from '@/context/platform';
23+
import { BootcDistributionItem } from '@/store/api/backend';
2624
import { Distributions } from '@/store/api/backend/hosted';
2725
import { useAppDispatch, useAppSelector } from '@/store/hooks';
2826
import { selectIsOnPremise } from '@/store/slices/env';
@@ -63,6 +61,9 @@ const InfoMessageContent = ({ source }: { source: string }) => {
6361
};
6462

6563
const ImageSourceSelect = () => {
64+
const {
65+
queries: { useGetDistributionsQuery },
66+
} = usePlatform();
6667
const dispatch = useAppDispatch();
6768
const isOnPremise = useAppSelector(selectIsOnPremise);
6869
const arch = useAppSelector(selectArchitecture);

src/Components/CreateImageWizard/steps/ImageOutput/components/TargetEnvironment.tsx

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,10 @@ import {
1111
Tooltip,
1212
} from '@patternfly/react-core';
1313

14+
import { usePlatform } from '@/context/platform';
1415
import { useTargetEnvironmentCategories } from '@/Hooks';
1516
import { rhsmApi } from '@/store/api';
16-
import {
17-
BootcDistributionItem,
18-
ImageTypes,
19-
useGetArchitecturesQuery,
20-
useGetDistributionsQuery,
21-
} from '@/store/api/backend';
17+
import { BootcDistributionItem, ImageTypes } from '@/store/api/backend';
2218
import { useCustomizationRestrictions } from '@/store/api/distributions';
2319
import { useAppDispatch, useAppSelector } from '@/store/hooks';
2420
import {
@@ -67,6 +63,9 @@ const createLabelWithTooltip = (
6763
};
6864

6965
const TargetEnvironment = () => {
66+
const {
67+
queries: { useGetArchitecturesQuery, useGetDistributionsQuery },
68+
} = usePlatform();
7069
const arch = useAppSelector(selectArchitecture);
7170
const environments = useAppSelector(selectImageTypes);
7271
const distribution = useAppSelector(selectDistribution);

src/Components/CreateImageWizard/steps/ImageOutput/tests/ImageSourceSelect.test.tsx

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,19 @@ import ImageSourceSelect from '../components/ImageSourceSelect';
2727
const mockRefetch = vi.fn();
2828
const mockUseGetDistributionsQuery = vi.fn();
2929

30-
vi.mock('@/store/api/backend', async (importOriginal) => {
31-
const actual = await importOriginal<typeof import('@/store/api/backend')>();
30+
vi.mock('@/context/platform', async (importOriginal) => {
31+
const actual = await importOriginal<typeof import('@/context/platform')>();
32+
const { mockPlatform } = await import('@/context/platform/tests/mocks');
3233
return {
3334
...actual,
34-
useGetDistributionsQuery: (...args: unknown[]) =>
35-
mockUseGetDistributionsQuery(...args),
35+
usePlatform: () => ({
36+
...mockPlatform,
37+
queries: {
38+
...mockPlatform.queries,
39+
useGetDistributionsQuery: (...args: unknown[]) =>
40+
mockUseGetDistributionsQuery(...args),
41+
},
42+
}),
3643
};
3744
});
3845

src/Components/CreateImageWizard/steps/Kernel/components/KernelArguments.tsx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import { FormGroup, HelperText, HelperTextItem } from '@patternfly/react-core';
55
import LabelInput from '@/Components/CreateImageWizard/LabelInput';
66
import { useKernelValidation } from '@/Components/CreateImageWizard/utilities/useValidation';
77
import { isKernelArgumentValid } from '@/Components/CreateImageWizard/validators';
8-
import { useGetOscapCustomizationsQuery } from '@/store/api/backend';
8+
import { usePlatform } from '@/context/platform';
99
import { useAppSelector } from '@/store/hooks';
1010
import {
1111
addKernelArg,
@@ -16,6 +16,9 @@ import {
1616
} from '@/store/slices/wizard';
1717

1818
const KernelArguments = () => {
19+
const {
20+
queries: { useGetOscapCustomizationsQuery },
21+
} = usePlatform();
1922
const kernelAppend = useAppSelector(selectKernel).append;
2023

2124
const stepValidation = useKernelValidation();

src/Components/CreateImageWizard/steps/Locale/index.tsx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import React, { useMemo } from 'react';
33
import { Content, Spinner, Title } from '@patternfly/react-core';
44

55
import { CustomizationLabels } from '@/Components/sharedComponents/CustomizationLabels';
6-
import { useGetArchitecturesQuery } from '@/store/api/backend';
6+
import { usePlatform } from '@/context/platform';
77
import { useSearchLanguagePacks } from '@/store/api/contentSources';
88
import { useAppSelector } from '@/store/hooks';
99
import {
@@ -17,6 +17,9 @@ import KeyboardDropDown from './components/KeyboardDropDown';
1717
import LanguagesDropDown from './components/LanguagesDropDown';
1818

1919
const LocaleStep = () => {
20+
const {
21+
queries: { useGetArchitecturesQuery },
22+
} = usePlatform();
2023
const distribution = useAppSelector(selectDistribution);
2124
const arch = useAppSelector(selectArchitecture);
2225
const candidateLangpacks = useAppSelector(selectLocaleLangpackCandidates);

0 commit comments

Comments
 (0)