fix(bulk-import): removing extra apis call#882
Conversation
Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com>
Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com>
Changed Packages
|
Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com>
Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com>
|
/cc @debsmita1 |
| import Box from '@mui/material/Box'; | ||
| import Paper from '@mui/material/Paper'; | ||
| import { useFormikContext } from 'formik'; | ||
| import debounce from 'lodash.debounce'; |
There was a problem hiding this comment.
Could you try using the useDebounce hook from react-use library ?
We have used this one in our other plugins
There was a problem hiding this comment.
@debsmita1 Thanks for the review!
Since lodash.debounce is already present indirectly via @babel/helper-define-polyfill-provider, I preferred using it to avoid adding a new dependency react-use just for this functionality — which would slightly increase the bundle size.
Let me know your thoughts on this
There was a problem hiding this comment.
bulk-import plugin is already using this
There was a problem hiding this comment.
Oh yes, if both lodash.debounce and useDebounce from react-use are already present, it's better to stick with useDebounce from react-use. I'll update the code accordingly.
Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com>
| "formik": "^2.4.5", | ||
| "js-yaml": "^4.1.0", | ||
| "lodash": "^4.17.21", | ||
| "lodash.debounce": "^4.0.8", |
Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com>
Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com>
|
* fix(bulk-import): removing extra apis call Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com> * adding yarn.lock Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com> * adding changeset Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com> * updating yarn.lock Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com> * using useDebounce Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com> * removing lodash.debaounce from dependency Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com> * removing unused dependency Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com> --------- Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com>
* fix(bulk-import): removing extra apis call Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com> * adding yarn.lock Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com> * adding changeset Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com> * updating yarn.lock Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com> * using useDebounce Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com> * removing lodash.debaounce from dependency Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com> * removing unused dependency Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com> --------- Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com>
* fix(bulk-import): removing extra apis call Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com> * adding yarn.lock Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com> * adding changeset Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com> * updating yarn.lock Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com> * using useDebounce Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com> * removing lodash.debaounce from dependency Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com> * removing unused dependency Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com> --------- Signed-off-by: its-mitesh-kumar <itsmiteshkumar98@gmail.com>



Description
This PR focuses on improving the performance and efficiency of the Bulk Import page by reducing unnecessary API calls and improving user experience.
Problem
Fixes
Fixing https://issues.redhat.com/browse/RHIDP-7658
Fixes Implemented
Tab Switching Optimization
Reduced Redundant Triggers
Pagination Optimization
Search Input Debounce
lodash.debounceto avoid excessive API calls on fast typing.Recording for Before Changes
Screen.Recording.2025-06-01.at.1.27.25.PM.mov
Recording for After Changes
Screen.Recording.2025-06-01.at.4.07.48.PM.mov
How to Test
Result