Update Status and Sub Status column widths
- Change Status column width from 65px to 90px - Change Sub Status column width from 120px to 150px - Update corresponding filter field container widths to matc...
Update filter field container widths to match column widths
- Update Lead ID filter container from 300px to 245px - Update Status filter container from 200px to 65px - Update Sub Status filter container from 200px to 120...
Change date column widths to 155px
- Update Created and Assigned column widths from 220px to 155px - Set explicit width, minWidth, and maxWidth to 155px for both columns - Update date filter fiel...
Move Quick Search to status tabs line, aligned right
- Quick Search now appears on same line as status tabs, aligned to the right - Simplified layout by removing duplicate search bar section - Status tabs and Quic...
Adjust paddingLeft to 17px for pinned row Lead ID cells
- Change paddingLeft from 12px to 17px for better alignment
Reduce padding in pinned rows Lead ID column to move values left
- Reduce paddingLeft from 45px to 12px for pinned row Lead ID cells - Fix missing comma in IdRenderer Box sx prop - This moves the Lead ID values more to the le...
Move filter bar above grid headers instead of between headers and data
- Move filter bar outside AG Grid container, positioned above grid - Remove absolute positioning that was causing overlap issues - Filter bar now appears above ...
Add padding to grid container to prevent filter bar from overlapping data rows
- Add paddingTop: 48px to the grid container Box - This pushes the data rows down while keeping headers in place - Filter bar is positioned at top: 48px (below ...
Prevent infinite re-render loop in bidirectional sync
- Add refs to track update source (tab vs filter dropdown) - Skip updates when they originate from the other source - Prevents circular updates that cause React...
Apply filters manually to filteredRowData instead of using AG Grid filters
- Move all filter logic into filteredRowData useMemo - Apply filters manually before passing data to AG Grid - Remove AG Grid setFilterModel calls since we're f...
Properly clear filters when empty and ensure filter model updates correctly
- Explicitly delete filters from model when values are empty - Trim filter values to handle whitespace - Get current filter model first to preserve other filter...
Position filter row below header and ensure filters apply
- Move filter row to top: 48px (below header) instead of top: 0 - Add paddingTop: 48px to AgGridReact to account for filter row - Set floatingFiltersHeight to 0...
Align filter row with columns and fix status filter
- Position filter row absolutely in floating filters space (48px height) - Add syncFilterRowWidths function to match column widths dynamically - Sync widths on ...
Use ref to store filter value and prevent AG Grid from resetting it
- Store current value in valueRef to persist across re-renders - Use isUserChangeRef to prevent sync effect from overriding user changes - Read initial model fr...
Remove onFloatingFilterChanged callback and improve CSS to hide filter icons
- Do not register onFloatingFilterChanged callback to prevent AG Grid from resetting value - Added comprehensive CSS rules to hide filter menu buttons and icons...
Correct DropdownFloatingFilter params and add statusFilterValue to Status filter
Correct filterParams type access and add statusFilterValue to params
Use customParams for filterParams access and add statusFilterValue to params
Make Status filter controlled and sync with status tabs
- Added statusFilterValue state to control Status filter dropdown - Status filter now syncs with activeStatusTab when tabs are clicked - Filter value is now con...
Prevent header refresh and maintain filter value with ref
- Use currentValueRef to track and persist filter value - Remove refreshHeader() call that was causing header to hide/reappear - Only update value from callback...
Properly track filter updates to prevent Status filter reset
- Use isUpdatingRef flag to track when we're making changes - Only allow parent model changes to update value if we're not updating - Initialize filter value fr...
Prevent filter reset with no-op callback and hide icons with menuTabs
- Register no-op onFloatingFilterChanged callback to prevent AG Grid from resetting filter value - Use menuTabs: [] instead of suppressHeaderMenuButton to hide ...
Prevent Status filter reset with ref flag and add suppressHeaderMenuButton
- Added suppressHeaderMenuButton to all columns that should hide filter icons - Improved isInternalChangeRef timing to prevent circular updates - Enhanced CSS s...
Prevent Status filter reset and improve filter icon hiding
- Added isInternalChangeRef to prevent circular updates in Status and SubStatus filters - Updated CSS selectors to better hide filter menu buttons and icons - F...
Remove extra Box wrapper that was breaking grid display
- Removed nested Box wrapper that was preventing grid from rendering - Moved CSS styles directly to the outer Box wrapper - Grid should now display leads correc...
Remove dependency from Sub Status filter useEffect to fix reactivity
Improve Sub Status filter reactivity and hide filter icons with CSS
- Remove getStatusFilterValue dependency from useEffect to prevent stale closures - Add CSS rules to hide filter menu button icons for Lead ID, Contact, Status,...
Properly enable Sub Status dropdown and remove all filter icons
- Add hasStatusFilter state to SubStatusFloatingFilter to track status filter changes - Add filterChanged event listener to immediately detect when Status filte...
Properly enable Sub Status dropdown and remove filter icons
- Fix Sub Status dropdown to be enabled when Status filter is selected (removed options.length check from disabled condition) - Add menuTabs: [] to Lead ID, Con...
Enable Sub Status dropdown when Status is selected and remove filter icons
- Fix Sub Status dropdown to be enabled when a Status filter is selected - Remove filter icons (suppressHeaderMenuButton) from Lead ID, Contact, Status, Sub Sta...
Resolve TypeScript type errors in DropdownFloatingFilter
- Change ExtendedParams to use intersection type instead of extending IFloatingFilterParams - Use type assertion for parentFilterInstance callback parameter - M...
Resolve ESLint errors in DropdownFloatingFilter component
- Add displayName to FloatingFilterComponent - Remove unused ref parameter - Replace any types with proper TypeScript interfaces - Add ExtendedParams interface ...
Change filter values from functions to arrays for dropdown display
- Change filterParams values from functions to direct arrays - AG Grid set filters require values as arrays, not functions - This should fix dropdown filters no...
Apply 50px padding only to Lead ID column in pinned rows - Change CSS selector from first-of-type to col-id=leadID to target only Lead ID column - Prevents padding from being applied to Contact and Actions columns - Pinned rows are already integrated into main datagrid via pinnedTopRowData
Align pinned rows with main list cells
- Add 50px padding-left to first cell (Lead ID) in pinned rows for account icon alignment - Compensate for 4px red border by moving pinned row left with marginL...
Replace any type with proper LeadWithAccount interface
- Create LeadWithAccount interface extending Lead with optional accountId - Replace any type assertion with LeadWithAccount type - Fixes ESLint error: Unexpecte...
Remove incorrect useMemo wrapper from ReportsPane component
- Remove erroneous }, []); closing bracket that was causing syntax error - ReportsPane is a regular function component, not wrapped in useMemo
Replace Grid components with Box to fix MUI Grid API compatibility
Add padding to main container to prevent tab panels from touching walls
Je, unaona nini kuhusu usafiri?
Kila moja ya hizi updates ardhi katika nafasi yako ya kazi moja kwa moja. Kuanza bure na kuangalia kukua wiki baada ya wiki.