Mutakhirkan widget kolom Status dan Sub Status
- Ubah lebar kolom Status dari 65px ke 90px - Ubah lebar kolom Sub Status dari 120px ke 150px - Mutakhirkan widget ruas wadah filter yang berhubungan untuk menc...
Mutakhirkan widget ruas filter kontainer yang cocok dengan widget kolom
- Update Lead ID filter container dari 300px ke 245px - Mutakhirkan wadah filter Status dari 200px ke 65px - Update Sub Status filter kontainer dari 200px ke 12...
Ubah widget kolom tanggal ke 155px
- Update Dibuat dan Ditandatangani widget kolom dari 220px ke 155px - Set lebar eksplisit, minLebar, dan maxLebar ke 155px untuk kedua kolom - Mutakhirkan tangg...
Pindahkan Pencarian Cepat ke baris tab status, align kanan
- Pencarian Cepat sekarang muncul pada baris yang sama seperti tab status, selaras ke kanan - Tata letak sederhana dengan menghapus daerah batang pencarian dupl...
Sesuaikan paddingLeft ke 17px untuk sel-sel ID baris Lead
- Ubah paddingLeft dari 12px ke 17px untuk alignmen yang lebih baik
Mengurangi padding dalam baris disematkan Kolom ID Lead untuk memindahkan nilai yang tersisa
- Mengurangi paddingLeft dari 45px ke 12px untuk disematkan baris Memimpin sel ID - Perbaiki hilang koma dalam IdRenderer Box sx prop - Ini memindahkan nilai ID...
Pindahkan batang filter di atas header kisi daripada di antara header dan data
- Pindahkan filter bar di luar AG Grid kontainer, diposisikan di atas grid - Hapus posisi mutlak yang menyebabkan masalah tumpang tindih - Filter bar sekarang m...
Tambahkan padding ke wadah kisi untuk mencegah batang penyaring dari baris data tumpang tindih
- Tambah paddingTop: 48px ke kotak kontainer grid - Hal ini mendorong baris data ke bawah ketika menjaga header di tempat - Filter bar diposisikan di atas: 48px...
Mencegah loop re-render tak terbatas dalam penyelarasan bidirectional
- Tambahkan refs untuk melacak sumber update (tab vs filter dropdown) - Lewati pemutakhiran ketika mereka berasal dari sumber lain - Prevents pembaruan melingka...
Pindahkan widget sinkronisasi setelah deklarasi RowData yang disaring
Terapkan penyaring secara manual ke filter RowData daripada menggunakan filter AG Grid
- Pindahkan semua logika filter ke dalam filed RowData useMemo - Terapkan penyaring secara manual sebelum memberikan data ke Grid AG - Hapus panggilan AG Grid s...
Penyaring yang tepat saat kosong dan memastikan pemutakhiran model filter dengan benar
- Hapus filter secara eksplisit dari model ketika nilai kosong - Nilai penyaring tradisional untuk menangani whitespace - Dapatkan model filter saat ini pertama...
Baris filter posisi di bawah header dan pastikan filter diterapkan
- Pindahkan baris filter ke atas: 48px (di bawah header) daripada di atas: 0 - Tambahkan paddingTop: 48px ke AgGridReact ke account untuk baris filter - Set flo...
Baris penyaring rata dengan kolom dan penyaring status fix
- Baris filter posisi benar-benar dalam ruang filter floating (tinggi 48px) - Tambahkan fungsi syncFilterRowWidths untuk mencocokkan kolom widget dinamis - Sela...
Pindahkan deklarasi valueRef sebelum useState untuk memperbaiki kesalahan
Gunakan ref untuk menyimpan nilai penyaring dan mencegah Grid AG dari pengaturan ulang itu
- Simpan nilai kini dalam nilai valueRef untuk bertahan di re-render - Gunakan isUserChangeRef untuk mencegah efek sinkronisasi dari perubahan pengguna yang men...
Hapus onFloatingFilterChange callback dan tingkatkan CSS untuk menyembunyikan ikon filter
- Jangan mendaftar onFloatingFilterChange callback untuk mencegah Grid AG dari nilai resetting - Ditambahkan aturan CSS komprehensif untuk menyembunyikan tombol...
Gunakan param daripada gubahan Params dalam DropdownFloatingFilter
Benar DropdownFloating Filter params dan tambahkan statusFilterValue ke saringan Status
Benar filter Params tipe akses dan tambahkan status FilterValue ke param
Gunakan ketentuan untuk akses fileParams dan tambahkan statusFilterValue ke param
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
Seperti apa yang Anda lihat pengiriman?
Semua pembaruan ini secara otomatis mendarat di ruang kerja Anda. Mulai bebas dan menontonnya tumbuh minggu demi minggu.