7665 handle the select all case inside the action menu (#7742)

Closes #7665 
- Handle select all
- Handle Filters

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
This commit is contained in:
Raphaël Bosi
2024-10-21 14:22:03 +02:00
committed by GitHub
parent eaab2d0dd2
commit 40152d3b92
52 changed files with 788 additions and 427 deletions

View File

@ -0,0 +1,6 @@
import { createState } from 'twenty-ui';
export const contextStoreNumberOfSelectedRecordsState = createState<number>({
key: 'contextStoreNumberOfSelectedRecordsState',
defaultValue: 0,
});

View File

@ -1,6 +0,0 @@
import { createState } from 'twenty-ui';
export const contextStoreTargetedRecordIdsState = createState<string[]>({
key: 'contextStoreTargetedRecordIdsState',
defaultValue: [],
});

View File

@ -0,0 +1,26 @@
import { Filter } from '@/object-record/object-filter-dropdown/types/Filter';
import { createState } from 'twenty-ui';
type ContextStoreTargetedRecordsRuleSelectionMode = {
mode: 'selection';
selectedRecordIds: string[];
};
type ContextStoreTargetedRecordsRuleExclusionMode = {
mode: 'exclusion';
excludedRecordIds: string[];
filters: Filter[];
};
export type ContextStoreTargetedRecordsRule =
| ContextStoreTargetedRecordsRuleSelectionMode
| ContextStoreTargetedRecordsRuleExclusionMode;
export const contextStoreTargetedRecordsRuleState =
createState<ContextStoreTargetedRecordsRule>({
key: 'contextStoreTargetedRecordsRuleState',
defaultValue: {
mode: 'selection',
selectedRecordIds: [],
},
});