Design:  Not ready to be merged yet! --------- Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
71 lines
3.0 KiB
TypeScript
71 lines
3.0 KiB
TypeScript
import { useRecoilComponentCallbackStateV2 } from '@/ui/utilities/state/component-state/hooks/useRecoilComponentCallbackStateV2';
|
|
import { unsavedToDeleteViewFilterGroupIdsComponentFamilyState } from '@/views/states/unsavedToDeleteViewFilterGroupIdsComponentFamilyState';
|
|
import { unsavedToDeleteViewFilterIdsComponentFamilyState } from '@/views/states/unsavedToDeleteViewFilterIdsComponentFamilyState';
|
|
import { unsavedToDeleteViewSortIdsComponentFamilyState } from '@/views/states/unsavedToDeleteViewSortIdsComponentFamilyState';
|
|
import { unsavedToUpsertViewFilterGroupsComponentFamilyState } from '@/views/states/unsavedToUpsertViewFilterGroupsComponentFamilyState';
|
|
import { unsavedToUpsertViewFiltersComponentFamilyState } from '@/views/states/unsavedToUpsertViewFiltersComponentFamilyState';
|
|
import { unsavedToUpsertViewSortsComponentFamilyState } from '@/views/states/unsavedToUpsertViewSortsComponentFamilyState';
|
|
import { useRecoilCallback } from 'recoil';
|
|
|
|
export const useResetUnsavedViewStates = (viewBarInstanceId?: string) => {
|
|
const setUnsavedToDeleteViewFilterIdsCallbackState =
|
|
useRecoilComponentCallbackStateV2(
|
|
unsavedToDeleteViewFilterIdsComponentFamilyState,
|
|
viewBarInstanceId,
|
|
);
|
|
|
|
const setUnsavedToDeleteViewSortIdsCallbackState =
|
|
useRecoilComponentCallbackStateV2(
|
|
unsavedToDeleteViewSortIdsComponentFamilyState,
|
|
viewBarInstanceId,
|
|
);
|
|
|
|
const unsavedToDeleteViewFilterGroupIdsCallbackState =
|
|
useRecoilComponentCallbackStateV2(
|
|
unsavedToDeleteViewFilterGroupIdsComponentFamilyState,
|
|
viewBarInstanceId,
|
|
);
|
|
|
|
const setUnsavedToUpsertViewFiltersCallbackState =
|
|
useRecoilComponentCallbackStateV2(
|
|
unsavedToUpsertViewFiltersComponentFamilyState,
|
|
viewBarInstanceId,
|
|
);
|
|
|
|
const unsavedToUpsertViewSortsCallbackState =
|
|
useRecoilComponentCallbackStateV2(
|
|
unsavedToUpsertViewSortsComponentFamilyState,
|
|
viewBarInstanceId,
|
|
);
|
|
|
|
const unsavedToUpsertViewFilterGroupsCallbackState =
|
|
useRecoilComponentCallbackStateV2(
|
|
unsavedToUpsertViewFilterGroupsComponentFamilyState,
|
|
viewBarInstanceId,
|
|
);
|
|
|
|
const resetUnsavedViewStates = useRecoilCallback(
|
|
({ set }) =>
|
|
(viewId: string) => {
|
|
set(unsavedToDeleteViewFilterGroupIdsCallbackState({ viewId }), []);
|
|
set(setUnsavedToDeleteViewFilterIdsCallbackState({ viewId }), []);
|
|
set(setUnsavedToDeleteViewSortIdsCallbackState({ viewId }), []);
|
|
set(unsavedToUpsertViewFilterGroupsCallbackState({ viewId }), []);
|
|
set(setUnsavedToUpsertViewFiltersCallbackState({ viewId }), []);
|
|
set(unsavedToUpsertViewSortsCallbackState({ viewId }), []);
|
|
},
|
|
[
|
|
unsavedToUpsertViewSortsCallbackState,
|
|
setUnsavedToUpsertViewFiltersCallbackState,
|
|
unsavedToUpsertViewFilterGroupsCallbackState,
|
|
setUnsavedToDeleteViewSortIdsCallbackState,
|
|
setUnsavedToDeleteViewFilterIdsCallbackState,
|
|
unsavedToDeleteViewFilterGroupIdsCallbackState,
|
|
],
|
|
);
|
|
|
|
return {
|
|
resetUnsavedViewStates,
|
|
};
|
|
};
|