feat: Allow filtering searches by 'source'
fix: Do not show API searches in recent list in app
This commit is contained in:
@@ -11,7 +11,9 @@ export default function SearchActions() {
|
||||
|
||||
React.useEffect(() => {
|
||||
if (!searches.isLoaded) {
|
||||
void searches.fetchPage({});
|
||||
void searches.fetchPage({
|
||||
source: "app",
|
||||
});
|
||||
}
|
||||
}, [searches]);
|
||||
|
||||
|
||||
@@ -4,10 +4,16 @@ import Model from "./base/Model";
|
||||
class SearchQuery extends Model {
|
||||
static modelName = "Search";
|
||||
|
||||
id: string;
|
||||
|
||||
/**
|
||||
* The query string, automatically truncated to 255 characters.
|
||||
*/
|
||||
query: string;
|
||||
|
||||
/**
|
||||
* Where the query originated.
|
||||
*/
|
||||
source: "api" | "app" | "slack";
|
||||
|
||||
delete = async () => {
|
||||
this.isSaving = true;
|
||||
|
||||
|
||||
@@ -28,7 +28,9 @@ function RecentSearches(
|
||||
const [isPreloaded] = React.useState(searches.recent.length > 0);
|
||||
|
||||
React.useEffect(() => {
|
||||
void searches.fetchPage({});
|
||||
void searches.fetchPage({
|
||||
source: "app",
|
||||
});
|
||||
}, [searches]);
|
||||
|
||||
const content = searches.recent.length ? (
|
||||
|
||||
@@ -13,6 +13,8 @@ export default class SearchesStore extends Store<SearchQuery> {
|
||||
|
||||
@computed
|
||||
get recent(): SearchQuery[] {
|
||||
return uniqBy(this.orderedData, "query").slice(0, 8);
|
||||
return uniqBy(this.orderedData, "query")
|
||||
.filter((search) => search.source === "app")
|
||||
.slice(0, 8);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user