Restore nameFilters in project-panel-middleware-service
authorMichal Klobukowski <michal.klobukowski@contractors.roche.com>
Thu, 22 Nov 2018 14:48:06 +0000 (15:48 +0100)
committerMichal Klobukowski <michal.klobukowski@contractors.roche.com>
Thu, 22 Nov 2018 14:48:06 +0000 (15:48 +0100)
Feature #14258

Arvados-DCO-1.1-Signed-off-by: Michal Klobukowski <michal.klobukowski@contractors.roche.com>

src/store/project-panel/project-panel-middleware-service.ts

index 7a1cab68060a80b87e38e8f04b10eed0700d77d2..18f5f0daaca8063a7eb4d552864024140242b743 100644 (file)
@@ -14,7 +14,7 @@ import { DataColumns } from "~/components/data-table/data-table";
 import { ServiceRepository } from "~/services/services";
 import { SortDirection } from "~/components/data-table/data-column";
 import { OrderBuilder, OrderDirection } from "~/services/api/order-builder";
 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';
 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';
@@ -118,15 +118,18 @@ export const getParams = (dataExplorer: DataExplorer, isProjectTrashed: boolean)
 export const getFilters = (dataExplorer: DataExplorer) => {
     const columns = dataExplorer.columns as DataColumns<string>;
     const typeFilters = serializeResourceTypeFilters(getDataExplorerColumnFilters(columns, ProjectPanelColumnNames.TYPE));
 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);
     // 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) => {
 };
 
 export const getOrder = (dataExplorer: DataExplorer) => {