diff --git a/ui/litellm-dashboard/src/components/search_tools/SearchToolSelector.test.tsx b/ui/litellm-dashboard/src/components/search_tools/SearchToolSelector.test.tsx index 860c8bee397..b8895718df0 100644 --- a/ui/litellm-dashboard/src/components/search_tools/SearchToolSelector.test.tsx +++ b/ui/litellm-dashboard/src/components/search_tools/SearchToolSelector.test.tsx @@ -31,4 +31,14 @@ describe("SearchToolSelector", () => { expect(await screen.findByRole("option", { name: "search-one" })).toBeInTheDocument(); expect(screen.getByRole("option", { name: "search-two" })).toBeInTheDocument(); }); + + it("should clear all selected search tools", async () => { + const user = userEvent.setup(); + const onChange = vi.fn(); + renderWithProviders(); + + await user.click(screen.getByRole("button", { name: "Clear all search tools" })); + + expect(onChange).toHaveBeenCalledWith([]); + }); }); diff --git a/ui/litellm-dashboard/src/components/search_tools/SearchToolSelector.tsx b/ui/litellm-dashboard/src/components/search_tools/SearchToolSelector.tsx index b16c63470e3..56f5954345d 100644 --- a/ui/litellm-dashboard/src/components/search_tools/SearchToolSelector.tsx +++ b/ui/litellm-dashboard/src/components/search_tools/SearchToolSelector.tsx @@ -4,6 +4,7 @@ import { ComboboxChip, ComboboxChips, ComboboxChipsInput, + ComboboxClear, ComboboxContent, ComboboxEmpty, ComboboxItem, @@ -82,6 +83,7 @@ const SearchToolSelector: React.FC = ({ aria-label={placeholder} disabled={disabled} /> + {value && value.length > 0 && } {loading ? "Loading search tools…" : "No search tools found"} diff --git a/ui/litellm-dashboard/src/components/ui/combobox.tsx b/ui/litellm-dashboard/src/components/ui/combobox.tsx index 2854928140e..906b898cfbe 100644 --- a/ui/litellm-dashboard/src/components/ui/combobox.tsx +++ b/ui/litellm-dashboard/src/components/ui/combobox.tsx @@ -260,6 +260,7 @@ export { ComboboxChips, ComboboxChip, ComboboxChipsInput, + ComboboxClear, ComboboxTrigger, ComboboxValue, useComboboxAnchor,