Improve pagination actions in data explorer
[arvados-workbench2.git] / src / store / data-explorer / data-explorer-action.ts
index fd3a7afe04dd5caaf35003098cc398dee78147e8..2c161c2cbbfd666e5b90beaa9b763025a8a2c056 100644 (file)
@@ -4,17 +4,19 @@
 
 import { default as unionize, ofType, UnionOf } from "unionize";
 import { DataTableFilterItem } from "../../components/data-table-filters/data-table-filters";
-import { DataColumns } from "../../components/data-table/data-table";
+import { DataColumns, DataItem } from "../../components/data-table/data-table";
 
 const actions = unionize({
-    SET_COLUMNS: ofType<{id: string, columns: DataColumns<any> }>(),
-    SET_FILTERS: ofType<{id: string,columnName: string, filters: DataTableFilterItem[]}>(),
-    SET_ITEMS: ofType<{id: string,items: any[]}>(),
-    SET_PAGE: ofType<{id: string,page: number}>(),
-    SET_ROWS_PER_PAGE: ofType<{id: string,rowsPerPage: number}>(),
-    TOGGLE_COLUMN: ofType<{id: string, columnName: string }>(),
-    TOGGLE_SORT: ofType<{id: string, columnName: string }>(),
-    SET_SEARCH_VALUE: ofType<{id: string,searchValue: string}>()
+    RESET_PAGINATION: ofType<{ id: string }>(),
+    REQUEST_ITEMS: ofType<{ id: string }>(),
+    SET_COLUMNS: ofType<{ id: string, columns: DataColumns<any> }>(),
+    SET_FILTERS: ofType<{ id: string, columnName: string, filters: DataTableFilterItem[] }>(),
+    SET_ITEMS: ofType<{ id: string, items: DataItem[], page: number, rowsPerPage: number, itemsAvailable: number }>(),
+    SET_PAGE: ofType<{ id: string, page: number }>(),
+    SET_ROWS_PER_PAGE: ofType<{ id: string, rowsPerPage: number }>(),
+    TOGGLE_COLUMN: ofType<{ id: string, columnName: string }>(),
+    TOGGLE_SORT: ofType<{ id: string, columnName: string }>(),
+    SET_SEARCH_VALUE: ofType<{ id: string, searchValue: string }>(),
 }, { tag: "type", value: "payload" });
 
 export type DataExplorerAction = UnionOf<typeof actions>;