material-react-table 2.0.0-alpha.4 → 2.0.0-alpha.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/dist/cjs/index.js +458 -405
  2. package/dist/cjs/index.js.map +1 -1
  3. package/dist/cjs/types/column.utils.d.ts +2 -0
  4. package/dist/cjs/types/icons.d.ts +1 -1
  5. package/dist/cjs/types/locales/hy.d.ts +2 -0
  6. package/dist/cjs/types/toolbar/MRT_ToolbarAlertBanner.d.ts +1 -1
  7. package/dist/cjs/types/types.d.ts +22 -29
  8. package/dist/esm/material-react-table.esm.js +459 -407
  9. package/dist/esm/material-react-table.esm.js.map +1 -1
  10. package/dist/esm/types/column.utils.d.ts +2 -0
  11. package/dist/esm/types/icons.d.ts +1 -1
  12. package/dist/esm/types/locales/hy.d.ts +2 -0
  13. package/dist/esm/types/toolbar/MRT_ToolbarAlertBanner.d.ts +1 -1
  14. package/dist/esm/types/types.d.ts +22 -29
  15. package/dist/index.d.ts +27 -33
  16. package/locales/hy.d.ts +2 -0
  17. package/locales/hy.esm.d.ts +2 -0
  18. package/locales/hy.esm.js +93 -0
  19. package/locales/hy.esm.js.map +1 -0
  20. package/locales/hy.js +97 -0
  21. package/locales/hy.js.map +1 -0
  22. package/package.json +7 -7
  23. package/src/body/MRT_TableBody.tsx +30 -22
  24. package/src/body/MRT_TableBodyCell.tsx +2 -2
  25. package/src/body/MRT_TableBodyRow.tsx +3 -3
  26. package/src/body/MRT_TableDetailPanel.tsx +3 -3
  27. package/src/buttons/MRT_GrabHandleButton.tsx +1 -2
  28. package/src/buttons/MRT_ShowHideColumnsButton.tsx +1 -2
  29. package/src/buttons/MRT_ToggleDensePaddingButton.tsx +1 -2
  30. package/src/buttons/MRT_ToggleFiltersButton.tsx +1 -2
  31. package/src/buttons/MRT_ToggleFullScreenButton.tsx +2 -3
  32. package/src/column.utils.ts +34 -9
  33. package/src/filterFns.ts +3 -3
  34. package/src/footer/MRT_TableFooter.tsx +1 -1
  35. package/src/footer/MRT_TableFooterCell.tsx +1 -1
  36. package/src/footer/MRT_TableFooterRow.tsx +2 -2
  37. package/src/head/MRT_TableHead.tsx +36 -14
  38. package/src/head/MRT_TableHeadCell.tsx +1 -1
  39. package/src/head/MRT_TableHeadCellFilterLabel.tsx +2 -0
  40. package/src/head/MRT_TableHeadRow.tsx +2 -2
  41. package/src/hooks/useMRT_TableInstance.ts +6 -6
  42. package/src/hooks/useMRT_TableOptions.ts +7 -2
  43. package/src/icons.ts +3 -3
  44. package/src/inputs/MRT_FilterTextField.tsx +4 -3
  45. package/src/locales/hy.ts +93 -0
  46. package/src/table/MRT_Table.tsx +24 -12
  47. package/src/toolbar/MRT_TablePagination.tsx +23 -14
  48. package/src/toolbar/MRT_ToolbarAlertBanner.tsx +53 -15
  49. package/src/toolbar/MRT_TopToolbar.tsx +1 -1
  50. package/src/types.ts +26 -25
@@ -1,5 +1,6 @@
1
1
  import { type ReactNode } from 'react';
2
2
  import { type Renderable, type Row } from '@tanstack/react-table';
3
+ import { type Range } from '@tanstack/react-virtual';
3
4
  import { type TableCellProps } from '@mui/material/TableCell';
4
5
  import { type Theme } from '@mui/material/styles';
5
6
  import { type MRT_AggregationFns } from './aggregationFns';
@@ -144,3 +145,4 @@ export declare const parseFromValuesOrFunc: <T, U>(fn: T | ((arg: U) => T) | und
144
145
  export declare const parseCSSVarId: (id: string) => string;
145
146
  export declare const flexRender: (Comp: Renderable<any>, props: any) => JSX.Element | ReactNode;
146
147
  export declare const createRow: <TData extends Record<string, any>>(table: MRT_TableInstance<TData>, originalRow?: TData | undefined) => MRT_Row<TData>;
148
+ export declare const extraIndexRangeExtractor: (range: Range, draggingIndex: number) => number[];
@@ -2,7 +2,7 @@ export interface MRT_Icons {
2
2
  ArrowDownwardIcon: any;
3
3
  ArrowRightIcon: any;
4
4
  CancelIcon: any;
5
- ChevronLefIcon: any;
5
+ ChevronLeftIcon: any;
6
6
  ChevronRightIcon: any;
7
7
  ClearAllIcon: any;
8
8
  CloseIcon: any;
@@ -0,0 +1,2 @@
1
+ import { type MRT_Localization } from '..';
2
+ export declare const MRT_Localization_HY: MRT_Localization;
@@ -1,6 +1,6 @@
1
1
  import { type MRT_TableInstance } from '../types';
2
2
  interface Props<TData extends Record<string, any>> {
3
- stackAlertBanner: boolean;
3
+ stackAlertBanner?: boolean;
4
4
  table: MRT_TableInstance<TData>;
5
5
  }
6
6
  export declare const MRT_ToolbarAlertBanner: <TData extends Record<string, any>>({ stackAlertBanner, table, }: Props<TData>) => import("react/jsx-runtime").JSX.Element;
@@ -180,12 +180,8 @@ export type MRT_TableInstance<TData extends Record<string, any>> = Omit<Table<TD
180
180
  setEditingCell: Dispatch<SetStateAction<MRT_Cell<TData> | null>>;
181
181
  setEditingRow: Dispatch<SetStateAction<MRT_Row<TData> | null>>;
182
182
  setGlobalFilterFn: Dispatch<SetStateAction<MRT_FilterOption>>;
183
- setHoveredColumn: Dispatch<SetStateAction<{
184
- id: string;
185
- } | MRT_Column<TData> | null>>;
186
- setHoveredRow: Dispatch<SetStateAction<{
187
- id: string;
188
- } | MRT_Row<TData> | null>>;
183
+ setHoveredColumn: Dispatch<SetStateAction<Partial<MRT_Column<TData>> | null>>;
184
+ setHoveredRow: Dispatch<SetStateAction<Partial<MRT_Row<TData>> | null>>;
189
185
  setIsFullScreen: Dispatch<SetStateAction<boolean>>;
190
186
  setShowAlertBanner: Dispatch<SetStateAction<boolean>>;
191
187
  setShowColumnFilters: Dispatch<SetStateAction<boolean>>;
@@ -205,12 +201,8 @@ export type MRT_TableState<TData extends Record<string, any>> = TableState & {
205
201
  editingCell: MRT_Cell<TData> | null;
206
202
  editingRow: MRT_Row<TData> | null;
207
203
  globalFilterFn: MRT_FilterOption;
208
- hoveredColumn: {
209
- id: string;
210
- } | MRT_Column<TData> | null;
211
- hoveredRow: {
212
- id: string;
213
- } | MRT_Row<TData> | null;
204
+ hoveredColumn: Partial<MRT_Column<TData>> | null;
205
+ hoveredRow: Partial<MRT_Row<TData>> | null;
214
206
  isFullScreen: boolean;
215
207
  isLoading: boolean;
216
208
  isSaving: boolean;
@@ -530,7 +522,7 @@ export type MRT_TableOptions<TData extends Record<string, any>> = Omit<Partial<T
530
522
  /**
531
523
  * Changes which kind of CSS layout is used to render the table. `semantic` uses default semantic HTML elements, while `grid` adds CSS grid and flexbox styles
532
524
  */
533
- layoutMode?: 'grid' | 'semantic';
525
+ layoutMode?: 'grid' | 'grid-no-grow' | 'semantic';
534
526
  /**
535
527
  * Pass in either a locale imported from `material-react-table/locales/*` or a custom locale object.
536
528
  *
@@ -613,6 +605,15 @@ export type MRT_TableOptions<TData extends Record<string, any>> = Omit<Partial<T
613
605
  isTopToolbar: boolean;
614
606
  table: MRT_TableInstance<TData>;
615
607
  }) => LinearProgressProps) | LinearProgressProps;
608
+ muiPaginationProps?: ((props: {
609
+ table: MRT_TableInstance<TData>;
610
+ }) => Partial<PaginationProps & {
611
+ rowsPerPageOptions?: number[];
612
+ showRowsPerPage?: boolean;
613
+ }>) | Partial<PaginationProps & {
614
+ rowsPerPageOptions?: number[];
615
+ showRowsPerPage?: boolean;
616
+ }>;
616
617
  muiRowDragHandleProps?: ((props: {
617
618
  row: MRT_Row<TData>;
618
619
  table: MRT_TableInstance<TData>;
@@ -673,15 +674,6 @@ export type MRT_TableOptions<TData extends Record<string, any>> = Omit<Partial<T
673
674
  headerGroup: MRT_HeaderGroup<TData>;
674
675
  table: MRT_TableInstance<TData>;
675
676
  }) => TableRowProps) | TableRowProps;
676
- muiTablePaginationProps?: ((props: {
677
- table: MRT_TableInstance<TData>;
678
- }) => Partial<PaginationProps & {
679
- rowsPerPageOptions?: number[];
680
- showRowsPerPage?: boolean;
681
- }>) | Partial<PaginationProps & {
682
- rowsPerPageOptions?: number[];
683
- showRowsPerPage?: boolean;
684
- }>;
685
677
  muiTablePaperProps?: ((props: {
686
678
  table: MRT_TableInstance<TData>;
687
679
  }) => PaperProps) | PaperProps;
@@ -727,12 +719,8 @@ export type MRT_TableOptions<TData extends Record<string, any>> = Omit<Partial<T
727
719
  values: Record<LiteralUnion<string & DeepKeys<TData>>, any>;
728
720
  }) => Promise<void> | void;
729
721
  onGlobalFilterFnChange?: OnChangeFn<MRT_FilterOption>;
730
- onHoveredColumnChange?: OnChangeFn<{
731
- id: string;
732
- } | MRT_Column<TData> | null>;
733
- onHoveredRowChange?: OnChangeFn<{
734
- id: string;
735
- } | MRT_Row<TData> | null>;
722
+ onHoveredColumnChange?: OnChangeFn<Partial<MRT_Column<TData>> | null>;
723
+ onHoveredRowChange?: OnChangeFn<Partial<MRT_Row<TData>> | null>;
736
724
  onIsFullScreenChange?: OnChangeFn<boolean>;
737
725
  onShowAlertBannerChange?: OnChangeFn<boolean>;
738
726
  onShowColumnFiltersChange?: OnChangeFn<boolean>;
@@ -743,7 +731,7 @@ export type MRT_TableOptions<TData extends Record<string, any>> = Omit<Partial<T
743
731
  positionExpandColumn?: 'first' | 'last';
744
732
  positionGlobalFilter?: 'left' | 'none' | 'right';
745
733
  positionPagination?: 'both' | 'bottom' | 'none' | 'top';
746
- positionToolbarAlertBanner?: 'bottom' | 'none' | 'top';
734
+ positionToolbarAlertBanner?: 'bottom' | 'head-overlay' | 'none' | 'top';
747
735
  positionToolbarDropZone?: 'both' | 'bottom' | 'none' | 'top';
748
736
  renderBottomToolbar?: ((props: {
749
737
  table: MRT_TableInstance<TData>;
@@ -795,6 +783,11 @@ export type MRT_TableOptions<TData extends Record<string, any>> = Omit<Partial<T
795
783
  row: MRT_Row<TData>;
796
784
  table: MRT_TableInstance<TData>;
797
785
  }) => ReactNode;
786
+ renderToolbarAlertBannerContent?: (props: {
787
+ groupedAlert: ReactNode | null;
788
+ selectedAlert: ReactNode | null;
789
+ table: MRT_TableInstance<TData>;
790
+ }) => ReactNode;
798
791
  renderToolbarInternalActions?: (props: {
799
792
  table: MRT_TableInstance<TData>;
800
793
  }) => ReactNode;