@cimpress/react-components
Version:
React components to support the MCP styleguide
69 lines • 2.36 kB
TypeScript
import React, { PureComponent } from 'react';
import { TableProps as ReactTableProps } from 'react-table';
import { SelectTableAdditionalProps } from 'react-table/lib/hoc/selectTable';
import { FeatureFlagsContext } from '../FeatureFlags';
export interface ReactTablev6Props extends Partial<ReactTableProps>, Partial<SelectTableAdditionalProps> {
/**
* Toggles the condensed styling for the table.
*/
condensed?: boolean;
/**
* Toggles the column of checkboxes that make rows selectable.
*/
selectable?: boolean;
/**
* Text to display for the dropdown controlling page size. Default: 'Per Page'
*/
perPageLabelText?: string;
/**
* Text to display in the component that allows jumping to specific text. Default: 'Go To'
*/
goToLabelText?: string;
/**
* The unique accessor property in order to render the select field for a particular row.
*/
keyField?: string;
}
type State = {
resolvedData: any;
entireHeaderHeight: number;
selectAll: boolean;
selection: string[];
};
export declare class ReactTablev6 extends PureComponent<ReactTablev6Props> {
static contextType: React.Context<Required<import("../FeatureFlags").FeatureFlagsConfig>>;
context: React.ContextType<typeof FeatureFlagsContext>;
tableRef: any;
containerRef: React.RefObject<HTMLDivElement>;
state: State;
componentDidMount(): void;
componentDidUpdate(prevProps: ReactTablev6Props): void;
setMeasurements: () => void;
getVisibleData: () => any;
getPaginationProps: () => {
condensed: boolean | undefined;
perPageLabelText: string | undefined;
goToLabelText: string | undefined;
};
getTableRef: (tableRef: any) => void;
getTheadThProps: (state: any, _row: any, column: any) => {
sortable: any;
sorted: any;
};
getSharedProps: ({ loading, condensed, filterable, }: {
loading: boolean;
condensed: boolean;
filterable: boolean;
}) => {
loading: boolean;
entireHeaderHeight: number;
condensed: boolean;
filterable: boolean;
};
toggleSelection: (key: string) => void;
toggleAll: () => void;
isSelected: (key: string) => boolean;
render(): React.JSX.Element;
}
export {};
//# sourceMappingURL=ReactTablev6.d.ts.map