// SPDX-License-Identifier: AGPL-3.0
import { default as unionize, ofType, UnionOf } from "unionize";
-import { SortDirection, DataColumn } from "../../components/data-table/data-column";
import { DataTableFilterItem } from "../../components/data-table-filters/data-table-filters";
-
-type WithId<T> = T & { id: string };
+import { DataColumns, DataItem } from "../../components/data-table/data-table";
const actions = unionize({
- SET_COLUMNS: ofType<WithId<{ columns: Array<DataColumn<any>> }>>(),
- SET_FILTERS: ofType<WithId<{columnName: string, filters: DataTableFilterItem[]}>>(),
- SET_ITEMS: ofType<WithId<{items: any[]}>>(),
- SET_PAGE: ofType<WithId<{page: number}>>(),
- SET_ROWS_PER_PAGE: ofType<WithId<{rowsPerPage: number}>>(),
- TOGGLE_COLUMN: ofType<WithId<{ columnName: string }>>(),
- TOGGLE_SORT: ofType<WithId<{ columnName: string }>>(),
- SET_SEARCH_VALUE: ofType<WithId<{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>;
export default actions;
-
-
-
-