Improve Jotai work (#18205)

This commit is contained in:
Charles Bochet
2026-02-24 20:38:30 +01:00
committed by GitHub
parent b339c93699
commit eaf9fe27b2
210 changed files with 1714 additions and 1662 deletions
@@ -19,11 +19,11 @@ export const useAddRootStepFilter = () => {
const { stepId, onFilterSettingsUpdate } = useContext(
WorkflowStepFilterContext,
);
const currentStepFilterGroupsAtom = useRecoilComponentStateCallbackStateV2(
const currentStepFilterGroups = useRecoilComponentStateCallbackStateV2(
currentStepFilterGroupsComponentState,
);
const currentStepFiltersAtom = useRecoilComponentStateCallbackStateV2(
const currentStepFilters = useRecoilComponentStateCallbackStateV2(
currentStepFiltersComponentState,
);
@@ -57,8 +57,8 @@ export const useAddRootStepFilter = () => {
positionInStepFilterGroup: 0,
};
store.set(currentStepFilterGroupsAtom, [newStepFilterGroup]);
store.set(currentStepFiltersAtom, [newStepFilter]);
store.set(currentStepFilterGroups, [newStepFilterGroup]);
store.set(currentStepFilters, [newStepFilter]);
setHasInitializedCurrentStepFilters(true);
setHasInitializedCurrentStepFilterGroups(true);
@@ -69,8 +69,8 @@ export const useAddRootStepFilter = () => {
});
}, [
onFilterSettingsUpdate,
currentStepFilterGroupsAtom,
currentStepFiltersAtom,
currentStepFilterGroups,
currentStepFilters,
setHasInitializedCurrentStepFilters,
setHasInitializedCurrentStepFilterGroups,
store,
@@ -9,11 +9,11 @@ import { WorkflowStepFilterContext } from '@/workflow/workflow-steps/filters/sta
export const useRemoveStepFilter = () => {
const { onFilterSettingsUpdate } = useContext(WorkflowStepFilterContext);
const currentStepFiltersAtom = useRecoilComponentStateCallbackStateV2(
const currentStepFilters = useRecoilComponentStateCallbackStateV2(
currentStepFiltersComponentState,
);
const currentStepFilterGroupsAtom = useRecoilComponentStateCallbackStateV2(
const currentStepFilterGroups = useRecoilComponentStateCallbackStateV2(
currentStepFilterGroupsComponentState,
);
@@ -21,8 +21,8 @@ export const useRemoveStepFilter = () => {
const removeStepFilter = useCallback(
(stepFilterId: string) => {
const stepFilters = store.get(currentStepFiltersAtom);
const stepFilterGroups = store.get(currentStepFilterGroupsAtom);
const stepFilters = store.get(currentStepFilters);
const stepFilterGroups = store.get(currentStepFilterGroups);
const rootStepFilterGroup = stepFilterGroups.find(
(filterGroup) => !isDefined(filterGroup.parentStepFilterGroupId),
@@ -69,16 +69,16 @@ export const useRemoveStepFilter = () => {
updatedStepFilters.length === 0;
if (shouldResetStepFilterSettings) {
store.set(currentStepFilterGroupsAtom, []);
store.set(currentStepFiltersAtom, []);
store.set(currentStepFilterGroups, []);
store.set(currentStepFilters, []);
onFilterSettingsUpdate({
stepFilterGroups: [],
stepFilters: [],
});
} else {
store.set(currentStepFilterGroupsAtom, updatedStepFilterGroups);
store.set(currentStepFiltersAtom, updatedStepFilters);
store.set(currentStepFilterGroups, updatedStepFilterGroups);
store.set(currentStepFilters, updatedStepFilters);
onFilterSettingsUpdate({
stepFilters: updatedStepFilters,
@@ -88,8 +88,8 @@ export const useRemoveStepFilter = () => {
},
[
onFilterSettingsUpdate,
currentStepFilterGroupsAtom,
currentStepFiltersAtom,
currentStepFilterGroups,
currentStepFilters,
store,
],
);
@@ -9,11 +9,11 @@ import { isDefined } from 'twenty-shared/utils';
export const useRemoveStepFilterGroup = () => {
const { onFilterSettingsUpdate } = useContext(WorkflowStepFilterContext);
const currentStepFilterGroupsAtom = useRecoilComponentStateCallbackStateV2(
const currentStepFilterGroups = useRecoilComponentStateCallbackStateV2(
currentStepFilterGroupsComponentState,
);
const currentStepFiltersAtom = useRecoilComponentStateCallbackStateV2(
const currentStepFilters = useRecoilComponentStateCallbackStateV2(
currentStepFiltersComponentState,
);
@@ -21,8 +21,8 @@ export const useRemoveStepFilterGroup = () => {
const removeStepFilterGroup = useCallback(
(stepFilterGroupId: string) => {
const stepFilterGroups = store.get(currentStepFilterGroupsAtom);
const stepFilters = store.get(currentStepFiltersAtom);
const stepFilterGroups = store.get(currentStepFilterGroups);
const stepFilters = store.get(currentStepFilters);
const rootStepFilterGroup = stepFilterGroups.find(
(filterGroup) => !isDefined(filterGroup.parentStepFilterGroupId),
@@ -42,16 +42,16 @@ export const useRemoveStepFilterGroup = () => {
updatedStepFilters.length === 0;
if (shouldResetStepFilterSettings) {
store.set(currentStepFilterGroupsAtom, []);
store.set(currentStepFiltersAtom, []);
store.set(currentStepFilterGroups, []);
store.set(currentStepFilters, []);
onFilterSettingsUpdate({
stepFilterGroups: [],
stepFilters: [],
});
} else {
store.set(currentStepFilterGroupsAtom, updatedStepFilterGroups);
store.set(currentStepFiltersAtom, updatedStepFilters);
store.set(currentStepFilterGroups, updatedStepFilterGroups);
store.set(currentStepFilters, updatedStepFilters);
onFilterSettingsUpdate({
stepFilterGroups: updatedStepFilterGroups,
@@ -61,8 +61,8 @@ export const useRemoveStepFilterGroup = () => {
},
[
onFilterSettingsUpdate,
currentStepFilterGroupsAtom,
currentStepFiltersAtom,
currentStepFilterGroups,
currentStepFilters,
store,
],
);
@@ -8,11 +8,11 @@ import { type StepFilter, type StepFilterGroup } from 'twenty-shared/types';
import { isDefined } from 'twenty-shared/utils';
export const useUpsertStepFilterSettings = () => {
const currentStepFilterGroupsAtom = useRecoilComponentStateCallbackStateV2(
const currentStepFilterGroups = useRecoilComponentStateCallbackStateV2(
currentStepFilterGroupsComponentState,
);
const currentStepFiltersAtom = useRecoilComponentStateCallbackStateV2(
const currentStepFilters = useRecoilComponentStateCallbackStateV2(
currentStepFiltersComponentState,
);
const { onFilterSettingsUpdate } = useContext(WorkflowStepFilterContext);
@@ -27,8 +27,8 @@ export const useUpsertStepFilterSettings = () => {
stepFilterGroupToUpsert?: StepFilterGroup;
stepFilterToUpsert?: StepFilter;
}) => {
const stepFilterGroups = store.get(currentStepFilterGroupsAtom);
const stepFilters = store.get(currentStepFiltersAtom);
const stepFilterGroups = store.get(currentStepFilterGroups);
const stepFilters = store.get(currentStepFilters);
const updatedStepFilterGroups = [...stepFilterGroups];
const updatedStepFilters = [...stepFilters];
@@ -43,7 +43,7 @@ export const useUpsertStepFilterSettings = () => {
} else {
updatedStepFilterGroups.push(stepFilterGroupToUpsert);
}
store.set(currentStepFilterGroupsAtom, updatedStepFilterGroups);
store.set(currentStepFilterGroups, updatedStepFilterGroups);
}
if (isDefined(stepFilterToUpsert)) {
@@ -56,7 +56,7 @@ export const useUpsertStepFilterSettings = () => {
} else {
updatedStepFilters.push(stepFilterToUpsert);
}
store.set(currentStepFiltersAtom, updatedStepFilters);
store.set(currentStepFilters, updatedStepFilters);
}
onFilterSettingsUpdate({
@@ -66,8 +66,8 @@ export const useUpsertStepFilterSettings = () => {
},
[
onFilterSettingsUpdate,
currentStepFilterGroupsAtom,
currentStepFiltersAtom,
currentStepFilterGroups,
currentStepFilters,
store,
],
);
@@ -20,33 +20,28 @@ export const WorkflowFindRecordsFilters = ({
onChange: (filter: FindRecordsActionFilter) => void;
readonly?: boolean;
}) => {
const currentRecordFilterGroupsAtom = useRecoilComponentStateCallbackStateV2(
const currentRecordFilterGroups = useRecoilComponentStateCallbackStateV2(
currentRecordFilterGroupsComponentState,
);
const currentRecordFiltersAtom = useRecoilComponentStateCallbackStateV2(
const currentRecordFilters = useRecoilComponentStateCallbackStateV2(
currentRecordFiltersComponentState,
);
const store = useStore();
const onUpdate = useCallback(() => {
const currentRecordFilterGroups = store.get(currentRecordFilterGroupsAtom);
const existingRecordFilterGroups = store.get(currentRecordFilterGroups);
const currentRecordFilters = store.get(currentRecordFiltersAtom);
const existingRecordFilters = store.get(currentRecordFilters);
const newFilter = {
recordFilterGroups: currentRecordFilterGroups,
recordFilters: currentRecordFilters,
recordFilterGroups: existingRecordFilterGroups,
recordFilters: existingRecordFilters,
} satisfies FindRecordsActionFilter;
onChange(newFilter);
}, [
currentRecordFilterGroupsAtom,
currentRecordFiltersAtom,
onChange,
store,
]);
}, [currentRecordFilterGroups, currentRecordFilters, onChange, store]);
return (
<AdvancedFilterCommandMenuContainer