-
Notifications
You must be signed in to change notification settings - Fork 16.4k
feat: add server-side hostname search for edge workers #56011
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: add server-side hostname search for edge workers #56011
Conversation
dheerajturaga
commented
Sep 23, 2025
- Add search parameter to backend API endpoint with case-insensitive filtering
- Implement debounced search input with 300ms delay to optimize API calls
- Maintain search box visibility across all states (empty, loading, error)
- Fix input focus issues during search result updates
- Update placeholder text to 'Search Workers'
- Add search parameter to backend API endpoint with case-insensitive filtering - Implement debounced search input with 300ms delay to optimize API calls - Maintain search box visibility across all states (empty, loading, error) - Fix input focus issues during search result updates - Update placeholder text to 'Search Workers'
edf480e to
07adccd
Compare
jscheffl
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Very cool! Thanks for the next increment!
Need one guidance about useEffect(). Basically looks good.
Two UX nits that I'd wish:
In the "Jobs" page there is a column with the worker as a link. Today this flips to the worker page and scrolls to the worker.

Can you change it that:
- Rip out the scrolling logic scripting
- If user clicks use the name as filter when page is displayed
Also in other dialogs there is a search icon and a "x" to clear the filter, can you add this to the search field? In the case it is cleared I'd assume the 300ms should not be applied as debounce:

That would be cool
| <ErrorAlert error={error} /> | ||
| </Text> | ||
| <Box p={2}> | ||
| {searchInput} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why do you add the {searchInput} to all if/else cases, would it not be easier to render it once generic and have the result views just below?
| useEffect(() => { | ||
| const timeout = setTimeout(() => { | ||
| setDebouncedSearchTerm(searchTerm); | ||
| }, 300); | ||
|
|
||
| return () => clearTimeout(timeout); | ||
| }, [searchTerm]); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As being the JS noob bere, need some guidance from UI experts @bbovenzi / @pierrejeambrun / @shubhamraj-git - I understand useEffect() is bad in general but this de-bouncing seems good here. Or is there any other best practice to follow to make it "right"?
|
This pull request has been automatically marked as stale because it has not had recent activity. It will be closed in 5 days if no further activity occurs. Thank you for your contributions. |
|
Oh, lost track in following-up on this. Probably needs a revive @dheerajturaga ? Would be great to have this as starter and then add more filters later! |
Yes! Was busy with other things! Let me restart this! |