Skip to content

Commit

Permalink
Taxonomy toggle fixes (#3860)
Browse files Browse the repository at this point in the history
  • Loading branch information
jpople authored Jul 25, 2023
1 parent 538a31b commit 34d4e0d
Show file tree
Hide file tree
Showing 6 changed files with 31 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,11 @@ export const selectDataSubjects: (state: RootState) => DataSubject[] =
(RootState, { data }) => data ?? emptyDataSubjects
);

export const selectEnabledDataSubjects = createSelector(
selectDataSubjects,
(dataSubjects) => dataSubjects.filter((ds) => ds.active) ?? emptyDataSubjects
);

export const selectDataSubjectsMap = createSelector(
selectDataSubjects,
(dataSubjects) =>
Expand Down
5 changes: 5 additions & 0 deletions clients/admin-ui/src/features/data-use/data-use.slice.ts
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,11 @@ export const selectDataUseOptions = createSelector(selectDataUses, (dataUses) =>
}))
);

export const selectEnabledDataUses = createSelector(
selectDataUses,
(dataUses) => dataUses.filter((du) => du.active)
);

export const selectEnabledDataUseOptions = createSelector(
selectDataUses,
(dataUses) =>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ const DatamapDrawer = ({
const isOpen = useMemo(() => Boolean(selectedSystemId), [selectedSystemId]);
const { isLoading, ...dataProps } = usePrivacyDeclarationData({
includeDatasets: false,
includeDisabled: false,
});

const { data: system } = useGetSystemByFidesKeyQuery(selectedSystemId!, {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ interface Props {
const PrivacyDeclarationStep = ({ system }: Props) => {
const { isLoading, ...dataProps } = usePrivacyDeclarationData({
includeDatasets: true,
includeDisabled: false,
});

const allEnabledDataCategories = dataProps.allDataCategories.filter(
Expand Down
16 changes: 13 additions & 3 deletions clients/admin-ui/src/features/system/privacy-declarations/hooks.ts
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
import { useAppSelector } from "~/app/hooks";
import {
selectDataSubjects,
selectEnabledDataSubjects,
useGetAllDataSubjectsQuery,
} from "~/features/data-subjects/data-subject.slice";
import {
selectDataUses,
selectEnabledDataUses,
useGetAllDataUsesQuery,
} from "~/features/data-use/data-use.slice";
import {
Expand All @@ -13,6 +15,7 @@ import {
} from "~/features/dataset";
import {
selectDataCategories,
selectEnabledDataCategories,
useGetAllDataCategoriesQuery,
} from "~/features/taxonomy";

Expand All @@ -23,8 +26,10 @@ import {
*/
export const usePrivacyDeclarationData = ({
includeDatasets,
includeDisabled,
}: {
includeDatasets?: boolean;
includeDisabled?: boolean;
}) => {
// Query subscriptions:
const { isLoading: isLoadingDataCategories } = useGetAllDataCategoriesQuery();
Expand All @@ -40,8 +45,11 @@ export const usePrivacyDeclarationData = ({
);

const allDataCategories = useAppSelector(selectDataCategories);
const enabledDataCategories = useAppSelector(selectEnabledDataCategories);
const allDataSubjects = useAppSelector(selectDataSubjects);
const enabledDataSubjects = useAppSelector(selectEnabledDataSubjects);
const allDataUses = useAppSelector(selectDataUses);
const enabledDataUses = useAppSelector(selectEnabledDataUses);
const allDatasets = useAppSelector(selectAllFilteredDatasets);

const isLoading =
Expand All @@ -51,9 +59,11 @@ export const usePrivacyDeclarationData = ({
isLoadingDatasets;

return {
allDataCategories,
allDataSubjects,
allDataUses,
allDataCategories: includeDisabled
? allDataCategories
: enabledDataCategories,
allDataSubjects: includeDisabled ? allDataSubjects : enabledDataSubjects,
allDataUses: includeDisabled ? allDataUses : enabledDataUses,
allDatasets: includeDatasets ? allDatasets : undefined,
isLoading,
};
Expand Down
6 changes: 6 additions & 0 deletions clients/admin-ui/src/features/taxonomy/taxonomy.slice.ts
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,12 @@ export const selectDataCategories: (state: RootState) => DataCategory[] =
({ data }) => data ?? emptyDataCategories
);

export const selectEnabledDataCategories: (state: RootState) => DataCategory[] =
createSelector(
taxonomyApi.endpoints.getAllDataCategories.select(),
({ data }) => data?.filter((dc) => dc.active) ?? emptyDataCategories
);

export const selectDataCategoriesMap: (
state: RootState
) => Map<string, DataCategory> = createSelector(
Expand Down

0 comments on commit 34d4e0d

Please sign in to comment.