Files
mtdb_movie/common/resources/client/datatable/page/data-table-context.ts
maher 703f50a09d
Some checks failed
Build / run (push) Has been cancelled
first commit
2025-10-29 11:42:25 +01:00

22 lines
816 B
TypeScript
Executable File

import React, {useContext} from 'react';
import {GetDatatableDataParams} from '../requests/paginated-resources';
import {UseQueryResult} from '@tanstack/react-query';
import {PaginatedBackendResponse} from '../../http/backend-response/pagination-response';
export interface DataTableContextValue<T = unknown, A = unknown> {
selectedRows: (string | number)[];
setSelectedRows: (keys: (string | number)[]) => void;
endpoint: string;
params: GetDatatableDataParams;
setParams: (value: GetDatatableDataParams) => void;
query: UseQueryResult<PaginatedBackendResponse<T> & A, unknown>;
}
export const DataTableContext = React.createContext<DataTableContextValue>(
null!,
);
export function useDataTable<T = unknown, A = unknown>() {
return useContext(DataTableContext) as DataTableContextValue<T, A>;
}