import { ServiceRepository } from "~/services/services";
import { SortDirection } from "~/components/data-table/data-column";
import { OrderBuilder, OrderDirection } from "~/services/api/order-builder";
-import { FilterBuilder } from "~/services/api/filter-builder";
+import { FilterBuilder, joinFilters } from "~/services/api/filter-builder";
import { GroupContentsResource, GroupContentsResourcePrefix } from "~/services/groups-service/groups-service";
import { updateFavorites } from "../favorites/favorites-actions";
import { PROJECT_PANEL_CURRENT_UUID, IS_PROJECT_PANEL_TRASHED, projectPanelActions } from './project-panel-action';
export const getFilters = (dataExplorer: DataExplorer) => {
const columns = dataExplorer.columns as DataColumns<string>;
const typeFilters = serializeResourceTypeFilters(getDataExplorerColumnFilters(columns, ProjectPanelColumnNames.TYPE));
- return typeFilters;
+ const nameFilters = new FilterBuilder()
+ .addILike("name", dataExplorer.searchValue, GroupContentsResourcePrefix.COLLECTION)
+ .addILike("name", dataExplorer.searchValue, GroupContentsResourcePrefix.PROCESS)
+ .addILike("name", dataExplorer.searchValue, GroupContentsResourcePrefix.PROJECT)
+ .getFilters();
+
+ return joinFilters(
+ typeFilters,
+ nameFilters,
+ );
+ // TODO: Restore process status filters
// const statusFilters = getDataExplorerColumnFilters(columns, ProjectPanelColumnNames.STATUS);
- // return new FilterBuilder()
- // // TODO: update filters
- // // .addIsA("uuid", typeFilters.map(f => f.type))
- // .addILike("name", dataExplorer.searchValue, GroupContentsResourcePrefix.COLLECTION)
- // .addILike("name", dataExplorer.searchValue, GroupContentsResourcePrefix.PROCESS)
- // .addILike("name", dataExplorer.searchValue, GroupContentsResourcePrefix.PROJECT)
- // .getFilters();
};
export const getOrder = (dataExplorer: DataExplorer) => {