//
// SPDX-License-Identifier: AGPL-3.0
-import { searchBarActions, SearchBarActions } from '~/store/search-bar/search-bar-actions';
-import { GroupContentsResource } from '~/services/groups-service/groups-service';
-import { SearchBarAdvanceFormData } from '~/models/search-bar';
+import {
+ getQueryFromAdvancedData,
+ searchBarActions,
+ SearchBarActions
+} from 'store/search-bar/search-bar-actions';
+import { GroupContentsResource } from 'services/groups-service/groups-service';
+import { SearchBarAdvancedFormData } from 'models/search-bar';
type SearchResult = GroupContentsResource;
export type SearchBarSelectedItem = {
open: boolean;
searchResults: SearchResult[];
searchValue: string;
- savedQueries: SearchBarAdvanceFormData[];
+ savedQueries: SearchBarAdvancedFormData[];
recentQueries: string[];
selectedItem: SearchBarSelectedItem;
}
const makeSelectedItem = (id: string, query?: string): SearchBarSelectedItem => ({ id, query: query ? query : id });
-const makeQueryList = (recentQueries: string[], savedQueries: SearchBarAdvanceFormData[]) => {
+const makeQueryList = (recentQueries: string[], savedQueries: SearchBarAdvancedFormData[]) => {
const recentIds = recentQueries.map((q, idx) => makeSelectedItem(`RQ-${idx}-${q}`, q));
- const savedIds = savedQueries.map((q, idx) => makeSelectedItem(`SQ-${idx}-${q.searchQuery}`, q.searchQuery));
+ const savedIds = savedQueries.map((q, idx) => makeSelectedItem(`SQ-${idx}-${q.queryName}`, getQueryFromAdvancedData(q)));
return recentIds.concat(savedIds);
};
SELECT_FIRST_ITEM: () => {
let selectedItem = state.selectedItem;
if (state.currentView === SearchView.AUTOCOMPLETE) {
- if (state.searchResults.length > 0) {
- selectedItem = makeSelectedItem(state.searchResults[0].uuid);
- }
+ selectedItem = makeSelectedItem(state.searchValue);
} else if (state.currentView === SearchView.BASIC) {
const items = makeQueryList(state.recentQueries, state.savedQueries);
if (items.length > 0) {