material-react-table 1.15.0 → 2.0.0-alpha.0
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.
- package/dist/cjs/index.js +1626 -1324
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/MaterialReactTable.d.ts +7 -11
- package/dist/cjs/types/body/MRT_TableBody.d.ts +4 -5
- package/dist/cjs/types/body/MRT_TableBodyCell.d.ts +5 -5
- package/dist/cjs/types/body/MRT_TableBodyCellValue.d.ts +4 -4
- package/dist/cjs/types/body/MRT_TableBodyRow.d.ts +5 -6
- package/dist/cjs/types/body/MRT_TableBodyRowGrabHandle.d.ts +5 -5
- package/dist/cjs/types/body/MRT_TableDetailPanel.d.ts +6 -6
- package/dist/cjs/types/body/index.d.ts +6 -0
- package/dist/cjs/types/buttons/MRT_ColumnPinningButtons.d.ts +2 -2
- package/dist/cjs/types/buttons/MRT_CopyButton.d.ts +2 -2
- package/dist/cjs/types/buttons/MRT_EditActionButtons.d.ts +2 -2
- package/dist/cjs/types/buttons/MRT_ExpandAllButton.d.ts +3 -3
- package/dist/cjs/types/buttons/MRT_ExpandButton.d.ts +2 -2
- package/dist/cjs/types/buttons/MRT_GrabHandleButton.d.ts +2 -2
- package/dist/cjs/types/buttons/MRT_ShowHideColumnsButton.d.ts +2 -2
- package/dist/cjs/types/buttons/MRT_ToggleDensePaddingButton.d.ts +2 -2
- package/dist/cjs/types/buttons/MRT_ToggleFiltersButton.d.ts +2 -2
- package/dist/cjs/types/buttons/MRT_ToggleFullScreenButton.d.ts +7 -0
- package/dist/cjs/types/buttons/MRT_ToggleGlobalFilterButton.d.ts +2 -2
- package/dist/cjs/types/buttons/MRT_ToggleRowActionMenuButton.d.ts +2 -2
- package/dist/cjs/types/buttons/index.d.ts +12 -0
- package/dist/cjs/types/column.utils.d.ts +39 -51
- package/dist/cjs/types/filterFns.d.ts +14 -14
- package/dist/cjs/types/footer/MRT_TableFooter.d.ts +3 -3
- package/dist/cjs/types/footer/MRT_TableFooterCell.d.ts +4 -4
- package/dist/cjs/types/footer/MRT_TableFooterRow.d.ts +4 -4
- package/dist/cjs/types/footer/index.d.ts +3 -0
- package/dist/cjs/types/head/MRT_TableHead.d.ts +3 -3
- package/dist/cjs/types/head/MRT_TableHeadCell.d.ts +4 -4
- package/dist/cjs/types/head/MRT_TableHeadCellColumnActionsButton.d.ts +4 -4
- package/dist/cjs/types/head/MRT_TableHeadCellFilterContainer.d.ts +4 -4
- package/dist/cjs/types/head/MRT_TableHeadCellFilterLabel.d.ts +4 -4
- package/dist/cjs/types/head/MRT_TableHeadCellGrabHandle.d.ts +4 -4
- package/dist/cjs/types/head/MRT_TableHeadCellResizeHandle.d.ts +4 -4
- package/dist/cjs/types/head/MRT_TableHeadCellSortLabel.d.ts +4 -4
- package/dist/cjs/types/head/MRT_TableHeadRow.d.ts +4 -4
- package/dist/cjs/types/head/index.d.ts +9 -0
- package/dist/cjs/types/hooks/useMRT_DisplayColumns.d.ts +9 -0
- package/dist/cjs/types/hooks/useMRT_Effects.d.ts +2 -0
- package/dist/cjs/types/hooks/useMRT_TableInstance.d.ts +2 -0
- package/dist/cjs/types/hooks/useMRT_TableOptions.d.ts +2 -0
- package/dist/cjs/types/index.d.ts +14 -25
- package/dist/cjs/types/inputs/MRT_EditCellTextField.d.ts +2 -3
- package/dist/cjs/types/inputs/MRT_FilterCheckbox.d.ts +4 -4
- package/dist/cjs/types/inputs/MRT_FilterRangeFields.d.ts +4 -4
- package/dist/cjs/types/inputs/MRT_FilterRangeSlider.d.ts +4 -4
- package/dist/cjs/types/inputs/MRT_FilterTextField.d.ts +4 -4
- package/dist/cjs/types/inputs/MRT_GlobalFilterTextField.d.ts +2 -2
- package/dist/cjs/types/inputs/MRT_SelectCheckbox.d.ts +4 -4
- package/dist/cjs/types/inputs/index.d.ts +7 -0
- package/dist/cjs/types/locales/ar.d.ts +2 -0
- package/dist/cjs/types/locales/bg.d.ts +2 -0
- package/dist/cjs/types/locales/et.d.ts +2 -0
- package/dist/cjs/types/locales/ko.d.ts +2 -0
- package/dist/cjs/types/menus/MRT_ColumnActionMenu.d.ts +4 -4
- package/dist/cjs/types/menus/MRT_FilterOptionMenu.d.ts +2 -2
- package/dist/cjs/types/menus/MRT_RowActionMenu.d.ts +4 -4
- package/dist/cjs/types/menus/MRT_ShowHideColumnsMenu.d.ts +2 -2
- package/dist/cjs/types/menus/MRT_ShowHideColumnsMenuItems.d.ts +2 -2
- package/dist/cjs/types/menus/index.d.ts +5 -0
- package/dist/cjs/types/modals/MRT_EditRowModal.d.ts +7 -0
- package/dist/cjs/types/modals/index.d.ts +1 -0
- package/dist/cjs/types/sortingFns.d.ts +3 -2
- package/dist/cjs/types/table/MRT_Table.d.ts +3 -3
- package/dist/cjs/types/table/MRT_TableContainer.d.ts +3 -3
- package/dist/cjs/types/table/MRT_TablePaper.d.ts +3 -3
- package/dist/cjs/types/table/index.d.ts +4 -0
- package/dist/cjs/types/toolbar/MRT_BottomToolbar.d.ts +2 -2
- package/dist/cjs/types/toolbar/MRT_LinearProgressBar.d.ts +2 -2
- package/dist/cjs/types/toolbar/MRT_TablePagination.d.ts +2 -2
- package/dist/cjs/types/toolbar/MRT_ToolbarAlertBanner.d.ts +2 -2
- package/dist/cjs/types/toolbar/MRT_ToolbarDropZone.d.ts +2 -2
- package/dist/cjs/types/toolbar/MRT_ToolbarInternalButtons.d.ts +2 -2
- package/dist/cjs/types/toolbar/MRT_TopToolbar.d.ts +2 -2
- package/dist/cjs/types/toolbar/index.d.ts +7 -0
- package/dist/cjs/types/types.d.ts +115 -84
- package/dist/cjs/types/useMaterialReactTable.d.ts +2 -0
- package/dist/esm/material-react-table.esm.js +1556 -1318
- package/dist/esm/material-react-table.esm.js.map +1 -1
- package/dist/esm/types/MaterialReactTable.d.ts +7 -11
- package/dist/esm/types/body/MRT_TableBody.d.ts +4 -5
- package/dist/esm/types/body/MRT_TableBodyCell.d.ts +5 -5
- package/dist/esm/types/body/MRT_TableBodyCellValue.d.ts +4 -4
- package/dist/esm/types/body/MRT_TableBodyRow.d.ts +5 -6
- package/dist/esm/types/body/MRT_TableBodyRowGrabHandle.d.ts +5 -5
- package/dist/esm/types/body/MRT_TableDetailPanel.d.ts +6 -6
- package/dist/esm/types/body/index.d.ts +6 -0
- package/dist/esm/types/buttons/MRT_ColumnPinningButtons.d.ts +2 -2
- package/dist/esm/types/buttons/MRT_CopyButton.d.ts +2 -2
- package/dist/esm/types/buttons/MRT_EditActionButtons.d.ts +2 -2
- package/dist/esm/types/buttons/MRT_ExpandAllButton.d.ts +3 -3
- package/dist/esm/types/buttons/MRT_ExpandButton.d.ts +2 -2
- package/dist/esm/types/buttons/MRT_GrabHandleButton.d.ts +2 -2
- package/dist/esm/types/buttons/MRT_ShowHideColumnsButton.d.ts +2 -2
- package/dist/esm/types/buttons/MRT_ToggleDensePaddingButton.d.ts +2 -2
- package/dist/esm/types/buttons/MRT_ToggleFiltersButton.d.ts +2 -2
- package/dist/esm/types/buttons/MRT_ToggleFullScreenButton.d.ts +7 -0
- package/dist/esm/types/buttons/MRT_ToggleGlobalFilterButton.d.ts +2 -2
- package/dist/esm/types/buttons/MRT_ToggleRowActionMenuButton.d.ts +2 -2
- package/dist/esm/types/buttons/index.d.ts +12 -0
- package/dist/esm/types/column.utils.d.ts +39 -51
- package/dist/esm/types/filterFns.d.ts +14 -14
- package/dist/esm/types/footer/MRT_TableFooter.d.ts +3 -3
- package/dist/esm/types/footer/MRT_TableFooterCell.d.ts +4 -4
- package/dist/esm/types/footer/MRT_TableFooterRow.d.ts +4 -4
- package/dist/esm/types/footer/index.d.ts +3 -0
- package/dist/esm/types/head/MRT_TableHead.d.ts +3 -3
- package/dist/esm/types/head/MRT_TableHeadCell.d.ts +4 -4
- package/dist/esm/types/head/MRT_TableHeadCellColumnActionsButton.d.ts +4 -4
- package/dist/esm/types/head/MRT_TableHeadCellFilterContainer.d.ts +4 -4
- package/dist/esm/types/head/MRT_TableHeadCellFilterLabel.d.ts +4 -4
- package/dist/esm/types/head/MRT_TableHeadCellGrabHandle.d.ts +4 -4
- package/dist/esm/types/head/MRT_TableHeadCellResizeHandle.d.ts +4 -4
- package/dist/esm/types/head/MRT_TableHeadCellSortLabel.d.ts +4 -4
- package/dist/esm/types/head/MRT_TableHeadRow.d.ts +4 -4
- package/dist/esm/types/head/index.d.ts +9 -0
- package/dist/esm/types/hooks/useMRT_DisplayColumns.d.ts +9 -0
- package/dist/esm/types/hooks/useMRT_Effects.d.ts +2 -0
- package/dist/esm/types/hooks/useMRT_TableInstance.d.ts +2 -0
- package/dist/esm/types/hooks/useMRT_TableOptions.d.ts +2 -0
- package/dist/esm/types/index.d.ts +14 -25
- package/dist/esm/types/inputs/MRT_EditCellTextField.d.ts +2 -3
- package/dist/esm/types/inputs/MRT_FilterCheckbox.d.ts +4 -4
- package/dist/esm/types/inputs/MRT_FilterRangeFields.d.ts +4 -4
- package/dist/esm/types/inputs/MRT_FilterRangeSlider.d.ts +4 -4
- package/dist/esm/types/inputs/MRT_FilterTextField.d.ts +4 -4
- package/dist/esm/types/inputs/MRT_GlobalFilterTextField.d.ts +2 -2
- package/dist/esm/types/inputs/MRT_SelectCheckbox.d.ts +4 -4
- package/dist/esm/types/inputs/index.d.ts +7 -0
- package/dist/esm/types/locales/ar.d.ts +2 -0
- package/dist/esm/types/locales/bg.d.ts +2 -0
- package/dist/esm/types/locales/et.d.ts +2 -0
- package/dist/esm/types/locales/ko.d.ts +2 -0
- package/dist/esm/types/menus/MRT_ColumnActionMenu.d.ts +4 -4
- package/dist/esm/types/menus/MRT_FilterOptionMenu.d.ts +2 -2
- package/dist/esm/types/menus/MRT_RowActionMenu.d.ts +4 -4
- package/dist/esm/types/menus/MRT_ShowHideColumnsMenu.d.ts +2 -2
- package/dist/esm/types/menus/MRT_ShowHideColumnsMenuItems.d.ts +2 -2
- package/dist/esm/types/menus/index.d.ts +5 -0
- package/dist/esm/types/modals/MRT_EditRowModal.d.ts +7 -0
- package/dist/esm/types/modals/index.d.ts +1 -0
- package/dist/esm/types/sortingFns.d.ts +3 -2
- package/dist/esm/types/table/MRT_Table.d.ts +3 -3
- package/dist/esm/types/table/MRT_TableContainer.d.ts +3 -3
- package/dist/esm/types/table/MRT_TablePaper.d.ts +3 -3
- package/dist/esm/types/table/index.d.ts +4 -0
- package/dist/esm/types/toolbar/MRT_BottomToolbar.d.ts +2 -2
- package/dist/esm/types/toolbar/MRT_LinearProgressBar.d.ts +2 -2
- package/dist/esm/types/toolbar/MRT_TablePagination.d.ts +2 -2
- package/dist/esm/types/toolbar/MRT_ToolbarAlertBanner.d.ts +2 -2
- package/dist/esm/types/toolbar/MRT_ToolbarDropZone.d.ts +2 -2
- package/dist/esm/types/toolbar/MRT_ToolbarInternalButtons.d.ts +2 -2
- package/dist/esm/types/toolbar/MRT_TopToolbar.d.ts +2 -2
- package/dist/esm/types/toolbar/index.d.ts +7 -0
- package/dist/esm/types/types.d.ts +115 -84
- package/dist/esm/types/useMaterialReactTable.d.ts +2 -0
- package/dist/index.d.ts +598 -148
- package/locales/ar.d.ts +2 -0
- package/locales/ar.esm.d.ts +2 -0
- package/locales/ar.esm.js +93 -0
- package/locales/ar.esm.js.map +1 -0
- package/locales/ar.js +97 -0
- package/locales/ar.js.map +1 -0
- package/locales/bg.d.ts +2 -0
- package/locales/bg.esm.d.ts +2 -0
- package/locales/bg.esm.js +93 -0
- package/locales/bg.esm.js.map +1 -0
- package/locales/bg.js +97 -0
- package/locales/bg.js.map +1 -0
- package/locales/cs.esm.js +1 -2
- package/locales/cs.esm.js.map +1 -1
- package/locales/cs.js +1 -2
- package/locales/cs.js.map +1 -1
- package/locales/da.esm.js +0 -1
- package/locales/da.esm.js.map +1 -1
- package/locales/da.js +0 -1
- package/locales/da.js.map +1 -1
- package/locales/de.esm.js +0 -1
- package/locales/de.esm.js.map +1 -1
- package/locales/de.js +0 -1
- package/locales/de.js.map +1 -1
- package/locales/en.esm.js +0 -1
- package/locales/en.esm.js.map +1 -1
- package/locales/en.js +0 -1
- package/locales/en.js.map +1 -1
- package/locales/es.esm.js +0 -1
- package/locales/es.esm.js.map +1 -1
- package/locales/es.js +0 -1
- package/locales/es.js.map +1 -1
- package/locales/et.d.ts +2 -0
- package/locales/et.esm.d.ts +2 -0
- package/locales/et.esm.js +93 -0
- package/locales/et.esm.js.map +1 -0
- package/locales/et.js +97 -0
- package/locales/et.js.map +1 -0
- package/locales/fa.esm.js +0 -1
- package/locales/fa.esm.js.map +1 -1
- package/locales/fa.js +0 -1
- package/locales/fa.js.map +1 -1
- package/locales/fi.esm.js +0 -1
- package/locales/fi.esm.js.map +1 -1
- package/locales/fi.js +0 -1
- package/locales/fi.js.map +1 -1
- package/locales/fr.esm.js +0 -1
- package/locales/fr.esm.js.map +1 -1
- package/locales/fr.js +0 -1
- package/locales/fr.js.map +1 -1
- package/locales/hu.esm.js +0 -1
- package/locales/hu.esm.js.map +1 -1
- package/locales/hu.js +0 -1
- package/locales/hu.js.map +1 -1
- package/locales/id.esm.js +0 -1
- package/locales/id.esm.js.map +1 -1
- package/locales/id.js +0 -1
- package/locales/id.js.map +1 -1
- package/locales/it.esm.js +0 -1
- package/locales/it.esm.js.map +1 -1
- package/locales/it.js +0 -1
- package/locales/it.js.map +1 -1
- package/locales/ja.esm.js +0 -1
- package/locales/ja.esm.js.map +1 -1
- package/locales/ja.js +0 -1
- package/locales/ja.js.map +1 -1
- package/locales/ko.d.ts +2 -0
- package/locales/ko.esm.d.ts +2 -0
- package/locales/ko.esm.js +93 -0
- package/locales/ko.esm.js.map +1 -0
- package/locales/ko.js +97 -0
- package/locales/ko.js.map +1 -0
- package/locales/nl.esm.js +0 -1
- package/locales/nl.esm.js.map +1 -1
- package/locales/nl.js +0 -1
- package/locales/nl.js.map +1 -1
- package/locales/no.esm.js +0 -1
- package/locales/no.esm.js.map +1 -1
- package/locales/no.js +0 -1
- package/locales/no.js.map +1 -1
- package/locales/pl.esm.js +0 -1
- package/locales/pl.esm.js.map +1 -1
- package/locales/pl.js +0 -1
- package/locales/pl.js.map +1 -1
- package/locales/pt-BR.esm.js +0 -1
- package/locales/pt-BR.esm.js.map +1 -1
- package/locales/pt-BR.js +0 -1
- package/locales/pt-BR.js.map +1 -1
- package/locales/pt.esm.js +0 -1
- package/locales/pt.esm.js.map +1 -1
- package/locales/pt.js +0 -1
- package/locales/pt.js.map +1 -1
- package/locales/ro.esm.js +0 -1
- package/locales/ro.esm.js.map +1 -1
- package/locales/ro.js +0 -1
- package/locales/ro.js.map +1 -1
- package/locales/ru.esm.js +0 -1
- package/locales/ru.esm.js.map +1 -1
- package/locales/ru.js +0 -1
- package/locales/ru.js.map +1 -1
- package/locales/sk.esm.js +0 -1
- package/locales/sk.esm.js.map +1 -1
- package/locales/sk.js +0 -1
- package/locales/sk.js.map +1 -1
- package/locales/sr-Cyrl-RS.esm.js +0 -1
- package/locales/sr-Cyrl-RS.esm.js.map +1 -1
- package/locales/sr-Cyrl-RS.js +0 -1
- package/locales/sr-Cyrl-RS.js.map +1 -1
- package/locales/sr-Latn-RS.esm.js +0 -1
- package/locales/sr-Latn-RS.esm.js.map +1 -1
- package/locales/sr-Latn-RS.js +0 -1
- package/locales/sr-Latn-RS.js.map +1 -1
- package/locales/sv.esm.js +0 -1
- package/locales/sv.esm.js.map +1 -1
- package/locales/sv.js +0 -1
- package/locales/sv.js.map +1 -1
- package/locales/tr.esm.js +0 -1
- package/locales/tr.esm.js.map +1 -1
- package/locales/tr.js +0 -1
- package/locales/tr.js.map +1 -1
- package/locales/uk.esm.js +0 -1
- package/locales/uk.esm.js.map +1 -1
- package/locales/uk.js +0 -1
- package/locales/uk.js.map +1 -1
- package/locales/vi.esm.js +0 -1
- package/locales/vi.esm.js.map +1 -1
- package/locales/vi.js +0 -1
- package/locales/vi.js.map +1 -1
- package/locales/zh-Hans.esm.js +7 -8
- package/locales/zh-Hans.esm.js.map +1 -1
- package/locales/zh-Hans.js +7 -8
- package/locales/zh-Hans.js.map +1 -1
- package/locales/zh-Hant.esm.js +1 -2
- package/locales/zh-Hant.esm.js.map +1 -1
- package/locales/zh-Hant.js +1 -2
- package/locales/zh-Hant.js.map +1 -1
- package/package.json +10 -8
- package/src/MaterialReactTable.tsx +31 -168
- package/src/body/MRT_TableBody.tsx +10 -23
- package/src/body/MRT_TableBodyCell.tsx +35 -38
- package/src/body/MRT_TableBodyCellValue.tsx +7 -4
- package/src/body/MRT_TableBodyRow.tsx +7 -7
- package/src/body/MRT_TableBodyRowGrabHandle.tsx +13 -10
- package/src/body/MRT_TableDetailPanel.tsx +11 -11
- package/src/body/index.ts +6 -0
- package/src/buttons/MRT_ColumnPinningButtons.tsx +2 -4
- package/src/buttons/MRT_CopyButton.tsx +9 -9
- package/src/buttons/MRT_EditActionButtons.tsx +56 -25
- package/src/buttons/MRT_ExpandAllButton.tsx +5 -3
- package/src/buttons/MRT_ExpandButton.tsx +2 -2
- package/src/buttons/MRT_GrabHandleButton.tsx +2 -2
- package/src/buttons/MRT_ShowHideColumnsButton.tsx +2 -5
- package/src/buttons/MRT_ToggleDensePaddingButton.tsx +2 -3
- package/src/buttons/MRT_ToggleFiltersButton.tsx +2 -5
- package/src/buttons/{MRT_FullScreenToggleButton.tsx → MRT_ToggleFullScreenButton.tsx} +13 -6
- package/src/buttons/MRT_ToggleGlobalFilterButton.tsx +3 -5
- package/src/buttons/MRT_ToggleRowActionMenuButton.tsx +16 -8
- package/src/buttons/index.ts +12 -0
- package/src/column.utils.ts +96 -45
- package/src/filterFns.ts +14 -14
- package/src/footer/MRT_TableFooter.tsx +4 -4
- package/src/footer/MRT_TableFooterCell.tsx +7 -4
- package/src/footer/MRT_TableFooterRow.tsx +6 -6
- package/src/footer/index.ts +3 -0
- package/src/head/MRT_TableHead.tsx +4 -4
- package/src/head/MRT_TableHeadCell.tsx +7 -4
- package/src/head/MRT_TableHeadCellColumnActionsButton.tsx +14 -12
- package/src/head/MRT_TableHeadCellFilterContainer.tsx +9 -4
- package/src/head/MRT_TableHeadCellFilterLabel.tsx +9 -4
- package/src/head/MRT_TableHeadCellGrabHandle.tsx +13 -13
- package/src/head/MRT_TableHeadCellResizeHandle.tsx +9 -4
- package/src/head/MRT_TableHeadCellSortLabel.tsx +8 -6
- package/src/head/MRT_TableHeadRow.tsx +6 -6
- package/src/head/index.ts +9 -0
- package/src/hooks/useMRT_DisplayColumns.tsx +142 -0
- package/src/hooks/useMRT_Effects.ts +77 -0
- package/src/hooks/useMRT_TableInstance.ts +291 -0
- package/src/hooks/useMRT_TableOptions.ts +169 -0
- package/src/index.ts +16 -0
- package/src/inputs/MRT_EditCellTextField.tsx +39 -25
- package/src/inputs/MRT_FilterCheckbox.tsx +14 -11
- package/src/inputs/MRT_FilterRangeFields.tsx +7 -4
- package/src/inputs/MRT_FilterRangeSlider.tsx +18 -19
- package/src/inputs/MRT_FilterTextField.tsx +15 -15
- package/src/inputs/MRT_GlobalFilterTextField.tsx +2 -4
- package/src/inputs/MRT_SelectCheckbox.tsx +8 -4
- package/src/inputs/index.ts +7 -0
- package/src/locales/ar.ts +94 -0
- package/src/locales/bg.ts +93 -0
- package/src/{_locales → locales}/cs.ts +1 -2
- package/src/{_locales → locales}/da.ts +0 -1
- package/src/{_locales → locales}/de.ts +0 -1
- package/src/{_locales → locales}/en.ts +1 -1
- package/src/{_locales → locales}/es.ts +0 -1
- package/src/locales/et.ts +94 -0
- package/src/{_locales → locales}/fa.ts +0 -1
- package/src/{_locales → locales}/fi.ts +0 -1
- package/src/{_locales → locales}/fr.ts +0 -1
- package/src/{_locales → locales}/hu.ts +0 -1
- package/src/{_locales → locales}/id.ts +0 -1
- package/src/{_locales → locales}/it.ts +0 -1
- package/src/{_locales → locales}/ja.ts +0 -1
- package/src/locales/ko.ts +93 -0
- package/src/{_locales → locales}/nl.ts +0 -1
- package/src/{_locales → locales}/no.ts +1 -1
- package/src/{_locales → locales}/pl.ts +0 -1
- package/src/{_locales → locales}/pt-BR.ts +0 -1
- package/src/{_locales → locales}/pt.ts +0 -1
- package/src/{_locales → locales}/ro.ts +0 -1
- package/src/{_locales → locales}/ru.ts +0 -1
- package/src/{_locales → locales}/sk.ts +0 -1
- package/src/{_locales → locales}/sr-Cyrl-RS.ts +0 -1
- package/src/{_locales → locales}/sr-Latn-RS.ts +0 -1
- package/src/{_locales → locales}/sv.ts +0 -1
- package/src/{_locales → locales}/tr.ts +0 -1
- package/src/{_locales → locales}/uk.ts +0 -1
- package/src/{_locales → locales}/vi.ts +0 -1
- package/src/{_locales → locales}/zh-Hans.ts +7 -8
- package/src/{_locales → locales}/zh-Hant.ts +1 -2
- package/src/menus/MRT_ColumnActionMenu.tsx +8 -8
- package/src/menus/MRT_FilterOptionMenu.tsx +4 -3
- package/src/menus/MRT_RowActionMenu.tsx +5 -5
- package/src/menus/MRT_ShowHideColumnsMenu.tsx +4 -6
- package/src/menus/MRT_ShowHideColumnsMenuItems.tsx +4 -4
- package/src/menus/index.ts +5 -0
- package/src/modals/MRT_EditRowModal.tsx +115 -0
- package/src/modals/index.ts +1 -0
- package/src/sortingFns.ts +6 -2
- package/src/table/MRT_Table.tsx +40 -33
- package/src/table/MRT_TableContainer.tsx +23 -5
- package/src/table/MRT_TablePaper.tsx +13 -4
- package/src/table/index.ts +4 -0
- package/src/toolbar/MRT_BottomToolbar.tsx +2 -2
- package/src/toolbar/MRT_LinearProgressBar.tsx +2 -2
- package/src/toolbar/MRT_TablePagination.tsx +2 -2
- package/src/toolbar/MRT_ToolbarAlertBanner.tsx +2 -2
- package/src/toolbar/MRT_ToolbarDropZone.tsx +2 -2
- package/src/toolbar/MRT_ToolbarInternalButtons.tsx +6 -8
- package/src/toolbar/MRT_TopToolbar.tsx +2 -2
- package/src/toolbar/index.ts +7 -0
- package/src/types.ts +781 -765
- package/src/useMaterialReactTable.ts +11 -0
- package/dist/cjs/types/body/MRT_EditRowModal.d.ts +0 -8
- package/dist/cjs/types/buttons/MRT_FullScreenToggleButton.d.ts +0 -7
- package/dist/cjs/types/table/MRT_TableRoot.d.ts +0 -1
- package/dist/esm/types/body/MRT_EditRowModal.d.ts +0 -8
- package/dist/esm/types/buttons/MRT_FullScreenToggleButton.d.ts +0 -7
- package/dist/esm/types/table/MRT_TableRoot.d.ts +0 -1
- package/src/body/MRT_EditRowModal.tsx +0 -57
- package/src/index.tsx +0 -50
- package/src/table/MRT_TableRoot.tsx +0 -421
- /package/dist/cjs/types/{_locales → locales}/cs.d.ts +0 -0
- /package/dist/cjs/types/{_locales → locales}/da.d.ts +0 -0
- /package/dist/cjs/types/{_locales → locales}/de.d.ts +0 -0
- /package/dist/cjs/types/{_locales → locales}/en.d.ts +0 -0
- /package/dist/cjs/types/{_locales → locales}/es.d.ts +0 -0
- /package/dist/cjs/types/{_locales → locales}/fa.d.ts +0 -0
- /package/dist/cjs/types/{_locales → locales}/fi.d.ts +0 -0
- /package/dist/cjs/types/{_locales → locales}/fr.d.ts +0 -0
- /package/dist/cjs/types/{_locales → locales}/hu.d.ts +0 -0
- /package/dist/cjs/types/{_locales → locales}/id.d.ts +0 -0
- /package/dist/cjs/types/{_locales → locales}/it.d.ts +0 -0
- /package/dist/cjs/types/{_locales → locales}/ja.d.ts +0 -0
- /package/dist/cjs/types/{_locales → locales}/nl.d.ts +0 -0
- /package/dist/cjs/types/{_locales → locales}/no.d.ts +0 -0
- /package/dist/cjs/types/{_locales → locales}/pl.d.ts +0 -0
- /package/dist/cjs/types/{_locales → locales}/pt-BR.d.ts +0 -0
- /package/dist/cjs/types/{_locales → locales}/pt.d.ts +0 -0
- /package/dist/cjs/types/{_locales → locales}/ro.d.ts +0 -0
- /package/dist/cjs/types/{_locales → locales}/ru.d.ts +0 -0
- /package/dist/cjs/types/{_locales → locales}/sk.d.ts +0 -0
- /package/dist/cjs/types/{_locales → locales}/sr-Cyrl-RS.d.ts +0 -0
- /package/dist/cjs/types/{_locales → locales}/sr-Latn-RS.d.ts +0 -0
- /package/dist/cjs/types/{_locales → locales}/sv.d.ts +0 -0
- /package/dist/cjs/types/{_locales → locales}/tr.d.ts +0 -0
- /package/dist/cjs/types/{_locales → locales}/uk.d.ts +0 -0
- /package/dist/cjs/types/{_locales → locales}/vi.d.ts +0 -0
- /package/dist/cjs/types/{_locales → locales}/zh-Hans.d.ts +0 -0
- /package/dist/cjs/types/{_locales → locales}/zh-Hant.d.ts +0 -0
- /package/dist/esm/types/{_locales → locales}/cs.d.ts +0 -0
- /package/dist/esm/types/{_locales → locales}/da.d.ts +0 -0
- /package/dist/esm/types/{_locales → locales}/de.d.ts +0 -0
- /package/dist/esm/types/{_locales → locales}/en.d.ts +0 -0
- /package/dist/esm/types/{_locales → locales}/es.d.ts +0 -0
- /package/dist/esm/types/{_locales → locales}/fa.d.ts +0 -0
- /package/dist/esm/types/{_locales → locales}/fi.d.ts +0 -0
- /package/dist/esm/types/{_locales → locales}/fr.d.ts +0 -0
- /package/dist/esm/types/{_locales → locales}/hu.d.ts +0 -0
- /package/dist/esm/types/{_locales → locales}/id.d.ts +0 -0
- /package/dist/esm/types/{_locales → locales}/it.d.ts +0 -0
- /package/dist/esm/types/{_locales → locales}/ja.d.ts +0 -0
- /package/dist/esm/types/{_locales → locales}/nl.d.ts +0 -0
- /package/dist/esm/types/{_locales → locales}/no.d.ts +0 -0
- /package/dist/esm/types/{_locales → locales}/pl.d.ts +0 -0
- /package/dist/esm/types/{_locales → locales}/pt-BR.d.ts +0 -0
- /package/dist/esm/types/{_locales → locales}/pt.d.ts +0 -0
- /package/dist/esm/types/{_locales → locales}/ro.d.ts +0 -0
- /package/dist/esm/types/{_locales → locales}/ru.d.ts +0 -0
- /package/dist/esm/types/{_locales → locales}/sk.d.ts +0 -0
- /package/dist/esm/types/{_locales → locales}/sr-Cyrl-RS.d.ts +0 -0
- /package/dist/esm/types/{_locales → locales}/sr-Latn-RS.d.ts +0 -0
- /package/dist/esm/types/{_locales → locales}/sv.d.ts +0 -0
- /package/dist/esm/types/{_locales → locales}/tr.d.ts +0 -0
- /package/dist/esm/types/{_locales → locales}/uk.d.ts +0 -0
- /package/dist/esm/types/{_locales → locales}/vi.d.ts +0 -0
- /package/dist/esm/types/{_locales → locales}/zh-Hans.d.ts +0 -0
- /package/dist/esm/types/{_locales → locales}/zh-Hant.d.ts +0 -0
package/src/column.utils.ts
CHANGED
@@ -1,12 +1,18 @@
|
|
1
|
+
import { type ReactNode } from 'react';
|
2
|
+
import {
|
3
|
+
type Row,
|
4
|
+
type Renderable,
|
5
|
+
flexRender as _flexRender,
|
6
|
+
createRow as _createRow,
|
7
|
+
} from '@tanstack/react-table';
|
1
8
|
import { alpha, lighten } from '@mui/material/styles';
|
2
9
|
import { type MRT_AggregationFns } from './aggregationFns';
|
3
10
|
import { type MRT_FilterFns } from './filterFns';
|
4
11
|
import { type MRT_SortingFns } from './sortingFns';
|
5
|
-
import { type Row } from '@tanstack/react-table';
|
6
12
|
import { type TableCellProps } from '@mui/material/TableCell';
|
7
13
|
import { type Theme } from '@mui/material/styles';
|
8
14
|
import {
|
9
|
-
type
|
15
|
+
type MRT_TableOptions,
|
10
16
|
type MRT_Column,
|
11
17
|
type MRT_ColumnDef,
|
12
18
|
type MRT_ColumnOrderState,
|
@@ -16,14 +22,15 @@ import {
|
|
16
22
|
type MRT_GroupingState,
|
17
23
|
type MRT_Header,
|
18
24
|
type MRT_TableInstance,
|
25
|
+
type MRT_Row,
|
19
26
|
} from './types';
|
20
27
|
|
21
|
-
export const getColumnId = <TData extends Record<string, any
|
28
|
+
export const getColumnId = <TData extends Record<string, any>>(
|
22
29
|
columnDef: MRT_ColumnDef<TData>,
|
23
30
|
): string =>
|
24
31
|
columnDef.id ?? columnDef.accessorKey?.toString?.() ?? columnDef.header;
|
25
32
|
|
26
|
-
export const getAllLeafColumnDefs = <TData extends Record<string, any
|
33
|
+
export const getAllLeafColumnDefs = <TData extends Record<string, any>>(
|
27
34
|
columns: MRT_ColumnDef<TData>[],
|
28
35
|
): MRT_ColumnDef<TData>[] => {
|
29
36
|
const allLeafColumnDefs: MRT_ColumnDef<TData>[] = [];
|
@@ -40,7 +47,7 @@ export const getAllLeafColumnDefs = <TData extends Record<string, any> = {}>(
|
|
40
47
|
return allLeafColumnDefs;
|
41
48
|
};
|
42
49
|
|
43
|
-
export const prepareColumns = <TData extends Record<string, any
|
50
|
+
export const prepareColumns = <TData extends Record<string, any>>({
|
44
51
|
aggregationFns,
|
45
52
|
columnDefs,
|
46
53
|
columnFilterFns,
|
@@ -49,13 +56,12 @@ export const prepareColumns = <TData extends Record<string, any> = {}>({
|
|
49
56
|
sortingFns,
|
50
57
|
}: {
|
51
58
|
aggregationFns: typeof MRT_AggregationFns &
|
52
|
-
|
59
|
+
MRT_TableOptions<TData>['aggregationFns'];
|
53
60
|
columnDefs: MRT_ColumnDef<TData>[];
|
54
61
|
columnFilterFns: { [key: string]: MRT_FilterOption };
|
55
62
|
defaultDisplayColumn: Partial<MRT_ColumnDef<TData>>;
|
56
|
-
filterFns: typeof MRT_FilterFns &
|
57
|
-
sortingFns: typeof MRT_SortingFns &
|
58
|
-
MaterialReactTableProps<TData>['sortingFns'];
|
63
|
+
filterFns: typeof MRT_FilterFns & MRT_TableOptions<TData>['filterFns'];
|
64
|
+
sortingFns: typeof MRT_SortingFns & MRT_TableOptions<TData>['sortingFns'];
|
59
65
|
}): MRT_DefinedColumnDef<TData>[] =>
|
60
66
|
columnDefs.map((columnDef) => {
|
61
67
|
//assign columnId
|
@@ -97,7 +103,7 @@ export const prepareColumns = <TData extends Record<string, any> = {}>({
|
|
97
103
|
if (Object.keys(filterFns).includes(columnFilterFns[columnDef.id])) {
|
98
104
|
columnDef.filterFn =
|
99
105
|
filterFns[columnFilterFns[columnDef.id]] ?? filterFns.fuzzy;
|
100
|
-
(columnDef as MRT_DefinedColumnDef)._filterFn =
|
106
|
+
(columnDef as MRT_DefinedColumnDef<TData>)._filterFn =
|
101
107
|
columnFilterFns[columnDef.id];
|
102
108
|
}
|
103
109
|
|
@@ -115,7 +121,7 @@ export const prepareColumns = <TData extends Record<string, any> = {}>({
|
|
115
121
|
return columnDef;
|
116
122
|
}) as MRT_DefinedColumnDef<TData>[];
|
117
123
|
|
118
|
-
export const reorderColumn = <TData extends Record<string, any
|
124
|
+
export const reorderColumn = <TData extends Record<string, any>>(
|
119
125
|
draggedColumn: MRT_Column<TData>,
|
120
126
|
targetColumn: MRT_Column<TData>,
|
121
127
|
columnOrder: MRT_ColumnOrderState,
|
@@ -132,8 +138,8 @@ export const reorderColumn = <TData extends Record<string, any> = {}>(
|
|
132
138
|
return newColumnOrder;
|
133
139
|
};
|
134
140
|
|
135
|
-
export const showExpandColumn = <TData extends Record<string, any
|
136
|
-
props:
|
141
|
+
export const showExpandColumn = <TData extends Record<string, any>>(
|
142
|
+
props: MRT_TableOptions<TData>,
|
137
143
|
grouping?: MRT_GroupingState,
|
138
144
|
) =>
|
139
145
|
!!(
|
@@ -142,17 +148,15 @@ export const showExpandColumn = <TData extends Record<string, any> = {}>(
|
|
142
148
|
props.renderDetailPanel
|
143
149
|
);
|
144
150
|
|
145
|
-
export const getLeadingDisplayColumnIds = <
|
146
|
-
|
147
|
-
>(
|
148
|
-
props: MaterialReactTableProps<TData>,
|
151
|
+
export const getLeadingDisplayColumnIds = <TData extends Record<string, any>>(
|
152
|
+
props: MRT_TableOptions<TData>,
|
149
153
|
) =>
|
150
154
|
[
|
151
155
|
(props.enableRowDragging || props.enableRowOrdering) && 'mrt-row-drag',
|
152
156
|
props.positionActionsColumn === 'first' &&
|
153
157
|
(props.enableRowActions ||
|
154
158
|
(props.enableEditing &&
|
155
|
-
['row', 'modal'].includes(props.
|
159
|
+
['row', 'modal'].includes(props.editDisplayMode ?? ''))) &&
|
156
160
|
'mrt-row-actions',
|
157
161
|
props.positionExpandColumn === 'first' &&
|
158
162
|
showExpandColumn(props) &&
|
@@ -161,26 +165,22 @@ export const getLeadingDisplayColumnIds = <
|
|
161
165
|
props.enableRowNumbers && 'mrt-row-numbers',
|
162
166
|
].filter(Boolean) as MRT_DisplayColumnIds[];
|
163
167
|
|
164
|
-
export const getTrailingDisplayColumnIds = <
|
165
|
-
|
166
|
-
>(
|
167
|
-
props: MaterialReactTableProps<TData>,
|
168
|
+
export const getTrailingDisplayColumnIds = <TData extends Record<string, any>>(
|
169
|
+
props: MRT_TableOptions<TData>,
|
168
170
|
) =>
|
169
171
|
[
|
170
172
|
props.positionActionsColumn === 'last' &&
|
171
173
|
(props.enableRowActions ||
|
172
174
|
(props.enableEditing &&
|
173
|
-
['row', 'modal'].includes(props.
|
175
|
+
['row', 'modal'].includes(props.editDisplayMode ?? ''))) &&
|
174
176
|
'mrt-row-actions',
|
175
177
|
props.positionExpandColumn === 'last' &&
|
176
178
|
showExpandColumn(props) &&
|
177
179
|
'mrt-row-expand',
|
178
180
|
].filter(Boolean) as MRT_DisplayColumnIds[];
|
179
181
|
|
180
|
-
export const getDefaultColumnOrderIds = <
|
181
|
-
|
182
|
-
>(
|
183
|
-
props: MaterialReactTableProps<TData>,
|
182
|
+
export const getDefaultColumnOrderIds = <TData extends Record<string, any>>(
|
183
|
+
props: MRT_TableOptions<TData>,
|
184
184
|
) => {
|
185
185
|
const leadingDisplayCols: string[] = getLeadingDisplayColumnIds(props);
|
186
186
|
const trailingDisplayCols: string[] = getTrailingDisplayColumnIds(props);
|
@@ -194,9 +194,7 @@ export const getDefaultColumnOrderIds = <
|
|
194
194
|
return [...leadingDisplayCols, ...allLeafColumnDefs, ...trailingDisplayCols];
|
195
195
|
};
|
196
196
|
|
197
|
-
export const getDefaultColumnFilterFn = <
|
198
|
-
TData extends Record<string, any> = {},
|
199
|
-
>(
|
197
|
+
export const getDefaultColumnFilterFn = <TData extends Record<string, any>>(
|
200
198
|
columnDef: MRT_ColumnDef<TData>,
|
201
199
|
): MRT_FilterOption => {
|
202
200
|
if (columnDef.filterVariant === 'multi-select') return 'arrIncludesSome';
|
@@ -213,24 +211,24 @@ export const getDefaultColumnFilterFn = <
|
|
213
211
|
return 'fuzzy';
|
214
212
|
};
|
215
213
|
|
216
|
-
export const getIsFirstColumn = (
|
217
|
-
column: MRT_Column
|
218
|
-
table: MRT_TableInstance
|
214
|
+
export const getIsFirstColumn = <TData extends Record<string, any>>(
|
215
|
+
column: MRT_Column<TData>,
|
216
|
+
table: MRT_TableInstance<TData>,
|
219
217
|
) => {
|
220
218
|
return table.getVisibleLeafColumns()[0].id === column.id;
|
221
219
|
};
|
222
220
|
|
223
|
-
export const getIsLastColumn = (
|
224
|
-
column: MRT_Column
|
225
|
-
table: MRT_TableInstance
|
221
|
+
export const getIsLastColumn = <TData extends Record<string, any>>(
|
222
|
+
column: MRT_Column<TData>,
|
223
|
+
table: MRT_TableInstance<TData>,
|
226
224
|
) => {
|
227
225
|
const columns = table.getVisibleLeafColumns();
|
228
226
|
return columns[columns.length - 1].id === column.id;
|
229
227
|
};
|
230
228
|
|
231
|
-
export const getIsLastLeftPinnedColumn = (
|
232
|
-
table: MRT_TableInstance
|
233
|
-
column: MRT_Column
|
229
|
+
export const getIsLastLeftPinnedColumn = <TData extends Record<string, any>>(
|
230
|
+
table: MRT_TableInstance<TData>,
|
231
|
+
column: MRT_Column<TData>,
|
234
232
|
) => {
|
235
233
|
return (
|
236
234
|
column.getIsPinned() === 'left' &&
|
@@ -238,27 +236,57 @@ export const getIsLastLeftPinnedColumn = (
|
|
238
236
|
);
|
239
237
|
};
|
240
238
|
|
241
|
-
export const getIsFirstRightPinnedColumn =
|
239
|
+
export const getIsFirstRightPinnedColumn = <TData extends Record<string, any>>(
|
240
|
+
column: MRT_Column<TData>,
|
241
|
+
) => {
|
242
242
|
return column.getIsPinned() === 'right' && column.getPinnedIndex() === 0;
|
243
243
|
};
|
244
244
|
|
245
|
-
export const getTotalRight =
|
245
|
+
export const getTotalRight = <TData extends Record<string, any>>(
|
246
|
+
table: MRT_TableInstance<TData>,
|
247
|
+
column: MRT_Column<TData>,
|
248
|
+
) => {
|
246
249
|
return table
|
247
250
|
.getRightLeafHeaders()
|
248
251
|
.slice(column.getPinnedIndex() + 1)
|
249
252
|
.reduce((acc, col) => acc + col.getSize(), 0);
|
250
253
|
};
|
251
254
|
|
252
|
-
export const
|
255
|
+
export const getCanRankRows = <TData extends Record<string, any>>(
|
256
|
+
table: MRT_TableInstance<TData>,
|
257
|
+
) => {
|
258
|
+
const { options, getState } = table;
|
259
|
+
const {
|
260
|
+
manualExpanding,
|
261
|
+
manualFiltering,
|
262
|
+
manualGrouping,
|
263
|
+
manualSorting,
|
264
|
+
enableGlobalFilterRankedResults,
|
265
|
+
} = options;
|
266
|
+
const { globalFilterFn, expanded } = getState();
|
267
|
+
|
268
|
+
return (
|
269
|
+
!manualExpanding &&
|
270
|
+
!manualFiltering &&
|
271
|
+
!manualGrouping &&
|
272
|
+
!manualSorting &&
|
273
|
+
enableGlobalFilterRankedResults &&
|
274
|
+
globalFilterFn === 'fuzzy' &&
|
275
|
+
expanded !== true &&
|
276
|
+
!Object.values(expanded).some(Boolean)
|
277
|
+
);
|
278
|
+
};
|
279
|
+
|
280
|
+
export const getCommonCellStyles = <TData extends Record<string, any>>({
|
253
281
|
column,
|
254
282
|
header,
|
255
283
|
table,
|
256
284
|
tableCellProps,
|
257
285
|
theme,
|
258
286
|
}: {
|
259
|
-
column: MRT_Column
|
260
|
-
header?: MRT_Header
|
261
|
-
table: MRT_TableInstance
|
287
|
+
column: MRT_Column<TData>;
|
288
|
+
header?: MRT_Header<TData>;
|
289
|
+
table: MRT_TableInstance<TData>;
|
262
290
|
tableCellProps: TableCellProps;
|
263
291
|
theme: Theme;
|
264
292
|
}) => {
|
@@ -358,3 +386,26 @@ export const MRT_DefaultDisplayColumn = {
|
|
358
386
|
} as const;
|
359
387
|
|
360
388
|
export const parseCSSVarId = (id: string) => id.replace(/[^a-zA-Z0-9]/g, '_');
|
389
|
+
|
390
|
+
export const flexRender = _flexRender as (
|
391
|
+
Comp: Renderable<any>,
|
392
|
+
props: any,
|
393
|
+
) => ReactNode | JSX.Element;
|
394
|
+
|
395
|
+
export const createRow = <TData extends Record<string, any>>(
|
396
|
+
table: MRT_TableInstance<TData>,
|
397
|
+
originalRow?: TData,
|
398
|
+
): MRT_Row<TData> =>
|
399
|
+
_createRow(
|
400
|
+
table as any,
|
401
|
+
'mrt-row-create',
|
402
|
+
originalRow ??
|
403
|
+
Object.assign(
|
404
|
+
{},
|
405
|
+
...getAllLeafColumnDefs(table.options.columns).map((col) => ({
|
406
|
+
[getColumnId(col)]: '',
|
407
|
+
})),
|
408
|
+
),
|
409
|
+
-1,
|
410
|
+
0,
|
411
|
+
) as MRT_Row<TData>;
|
package/src/filterFns.ts
CHANGED
@@ -5,7 +5,7 @@ import {
|
|
5
5
|
} from '@tanstack/match-sorter-utils';
|
6
6
|
import { filterFns, type Row } from '@tanstack/react-table';
|
7
7
|
|
8
|
-
const fuzzy = <TData extends Record<string, any
|
8
|
+
const fuzzy = <TData extends Record<string, any>>(
|
9
9
|
row: Row<TData>,
|
10
10
|
columnId: string,
|
11
11
|
filterValue: string | number,
|
@@ -20,7 +20,7 @@ const fuzzy = <TData extends Record<string, any> = {}>(
|
|
20
20
|
|
21
21
|
fuzzy.autoRemove = (val: any) => !val;
|
22
22
|
|
23
|
-
const contains = <TData extends Record<string, any
|
23
|
+
const contains = <TData extends Record<string, any>>(
|
24
24
|
row: Row<TData>,
|
25
25
|
id: string,
|
26
26
|
filterValue: string | number,
|
@@ -34,7 +34,7 @@ const contains = <TData extends Record<string, any> = {}>(
|
|
34
34
|
|
35
35
|
contains.autoRemove = (val: any) => !val;
|
36
36
|
|
37
|
-
const startsWith = <TData extends Record<string, any
|
37
|
+
const startsWith = <TData extends Record<string, any>>(
|
38
38
|
row: Row<TData>,
|
39
39
|
id: string,
|
40
40
|
filterValue: string | number,
|
@@ -48,7 +48,7 @@ const startsWith = <TData extends Record<string, any> = {}>(
|
|
48
48
|
|
49
49
|
startsWith.autoRemove = (val: any) => !val;
|
50
50
|
|
51
|
-
const endsWith = <TData extends Record<string, any
|
51
|
+
const endsWith = <TData extends Record<string, any>>(
|
52
52
|
row: Row<TData>,
|
53
53
|
id: string,
|
54
54
|
filterValue: string | number,
|
@@ -62,7 +62,7 @@ const endsWith = <TData extends Record<string, any> = {}>(
|
|
62
62
|
|
63
63
|
endsWith.autoRemove = (val: any) => !val;
|
64
64
|
|
65
|
-
const equals = <TData extends Record<string, any
|
65
|
+
const equals = <TData extends Record<string, any>>(
|
66
66
|
row: Row<TData>,
|
67
67
|
id: string,
|
68
68
|
filterValue: string | number,
|
@@ -72,7 +72,7 @@ const equals = <TData extends Record<string, any> = {}>(
|
|
72
72
|
|
73
73
|
equals.autoRemove = (val: any) => !val;
|
74
74
|
|
75
|
-
const notEquals = <TData extends Record<string, any
|
75
|
+
const notEquals = <TData extends Record<string, any>>(
|
76
76
|
row: Row<TData>,
|
77
77
|
id: string,
|
78
78
|
filterValue: string | number,
|
@@ -82,7 +82,7 @@ const notEquals = <TData extends Record<string, any> = {}>(
|
|
82
82
|
|
83
83
|
notEquals.autoRemove = (val: any) => !val;
|
84
84
|
|
85
|
-
const greaterThan = <TData extends Record<string, any
|
85
|
+
const greaterThan = <TData extends Record<string, any>>(
|
86
86
|
row: Row<TData>,
|
87
87
|
id: string,
|
88
88
|
filterValue: string | number,
|
@@ -94,7 +94,7 @@ const greaterThan = <TData extends Record<string, any> = {}>(
|
|
94
94
|
|
95
95
|
greaterThan.autoRemove = (val: any) => !val;
|
96
96
|
|
97
|
-
const greaterThanOrEqualTo = <TData extends Record<string, any
|
97
|
+
const greaterThanOrEqualTo = <TData extends Record<string, any>>(
|
98
98
|
row: Row<TData>,
|
99
99
|
id: string,
|
100
100
|
filterValue: string | number,
|
@@ -102,7 +102,7 @@ const greaterThanOrEqualTo = <TData extends Record<string, any> = {}>(
|
|
102
102
|
|
103
103
|
greaterThanOrEqualTo.autoRemove = (val: any) => !val;
|
104
104
|
|
105
|
-
const lessThan = <TData extends Record<string, any
|
105
|
+
const lessThan = <TData extends Record<string, any>>(
|
106
106
|
row: Row<TData>,
|
107
107
|
id: string,
|
108
108
|
filterValue: string | number,
|
@@ -114,7 +114,7 @@ const lessThan = <TData extends Record<string, any> = {}>(
|
|
114
114
|
|
115
115
|
lessThan.autoRemove = (val: any) => !val;
|
116
116
|
|
117
|
-
const lessThanOrEqualTo = <TData extends Record<string, any
|
117
|
+
const lessThanOrEqualTo = <TData extends Record<string, any>>(
|
118
118
|
row: Row<TData>,
|
119
119
|
id: string,
|
120
120
|
filterValue: string | number,
|
@@ -122,7 +122,7 @@ const lessThanOrEqualTo = <TData extends Record<string, any> = {}>(
|
|
122
122
|
|
123
123
|
lessThanOrEqualTo.autoRemove = (val: any) => !val;
|
124
124
|
|
125
|
-
const between = <TData extends Record<string, any
|
125
|
+
const between = <TData extends Record<string, any>>(
|
126
126
|
row: Row<TData>,
|
127
127
|
id: string,
|
128
128
|
filterValues: [string | number, string | number],
|
@@ -137,7 +137,7 @@ const between = <TData extends Record<string, any> = {}>(
|
|
137
137
|
|
138
138
|
between.autoRemove = (val: any) => !val;
|
139
139
|
|
140
|
-
const betweenInclusive = <TData extends Record<string, any
|
140
|
+
const betweenInclusive = <TData extends Record<string, any>>(
|
141
141
|
row: Row<TData>,
|
142
142
|
id: string,
|
143
143
|
filterValues: [string | number, string | number],
|
@@ -152,7 +152,7 @@ const betweenInclusive = <TData extends Record<string, any> = {}>(
|
|
152
152
|
|
153
153
|
betweenInclusive.autoRemove = (val: any) => !val;
|
154
154
|
|
155
|
-
const empty = <TData extends Record<string, any
|
155
|
+
const empty = <TData extends Record<string, any>>(
|
156
156
|
row: Row<TData>,
|
157
157
|
id: string,
|
158
158
|
_filterValue: string | number,
|
@@ -160,7 +160,7 @@ const empty = <TData extends Record<string, any> = {}>(
|
|
160
160
|
|
161
161
|
empty.autoRemove = (val: any) => !val;
|
162
162
|
|
163
|
-
const notEmpty = <TData extends Record<string, any
|
163
|
+
const notEmpty = <TData extends Record<string, any>>(
|
164
164
|
row: Row<TData>,
|
165
165
|
id: string,
|
166
166
|
_filterValue: string | number,
|
@@ -3,19 +3,19 @@ import { MRT_TableFooterRow } from './MRT_TableFooterRow';
|
|
3
3
|
import { type VirtualItem } from '@tanstack/react-virtual';
|
4
4
|
import { type MRT_TableInstance } from '../types';
|
5
5
|
|
6
|
-
interface Props {
|
7
|
-
table: MRT_TableInstance
|
6
|
+
interface Props<TData extends Record<string, any>> {
|
7
|
+
table: MRT_TableInstance<TData>;
|
8
8
|
virtualColumns?: VirtualItem[];
|
9
9
|
virtualPaddingLeft?: number;
|
10
10
|
virtualPaddingRight?: number;
|
11
11
|
}
|
12
12
|
|
13
|
-
export const MRT_TableFooter = ({
|
13
|
+
export const MRT_TableFooter = <TData extends Record<string, any>>({
|
14
14
|
table,
|
15
15
|
virtualColumns,
|
16
16
|
virtualPaddingLeft,
|
17
17
|
virtualPaddingRight,
|
18
|
-
}: Props) => {
|
18
|
+
}: Props<TData>) => {
|
19
19
|
const {
|
20
20
|
getFooterGroups,
|
21
21
|
getState,
|
@@ -2,12 +2,15 @@ import TableCell from '@mui/material/TableCell';
|
|
2
2
|
import { getCommonCellStyles } from '../column.utils';
|
3
3
|
import { type MRT_Header, type MRT_TableInstance } from '../types';
|
4
4
|
|
5
|
-
interface Props {
|
6
|
-
footer: MRT_Header
|
7
|
-
table: MRT_TableInstance
|
5
|
+
interface Props<TData extends Record<string, any>> {
|
6
|
+
footer: MRT_Header<TData>;
|
7
|
+
table: MRT_TableInstance<TData>;
|
8
8
|
}
|
9
9
|
|
10
|
-
export const MRT_TableFooterCell =
|
10
|
+
export const MRT_TableFooterCell = <TData extends Record<string, any>>({
|
11
|
+
footer,
|
12
|
+
table,
|
13
|
+
}: Props<TData>) => {
|
11
14
|
const {
|
12
15
|
getState,
|
13
16
|
options: { layoutMode, muiTableFooterCellProps },
|
@@ -8,21 +8,21 @@ import {
|
|
8
8
|
type MRT_TableInstance,
|
9
9
|
} from '../types';
|
10
10
|
|
11
|
-
interface Props {
|
12
|
-
footerGroup: MRT_HeaderGroup
|
13
|
-
table: MRT_TableInstance
|
11
|
+
interface Props<TData extends Record<string, any>> {
|
12
|
+
footerGroup: MRT_HeaderGroup<TData>;
|
13
|
+
table: MRT_TableInstance<TData>;
|
14
14
|
virtualColumns?: VirtualItem[];
|
15
15
|
virtualPaddingLeft?: number;
|
16
16
|
virtualPaddingRight?: number;
|
17
17
|
}
|
18
18
|
|
19
|
-
export const MRT_TableFooterRow = ({
|
19
|
+
export const MRT_TableFooterRow = <TData extends Record<string, any>>({
|
20
20
|
footerGroup,
|
21
21
|
table,
|
22
22
|
virtualColumns,
|
23
23
|
virtualPaddingLeft,
|
24
24
|
virtualPaddingRight,
|
25
|
-
}: Props) => {
|
25
|
+
}: Props<TData>) => {
|
26
26
|
const {
|
27
27
|
options: { layoutMode, muiTableFooterRowProps },
|
28
28
|
} = table;
|
@@ -61,7 +61,7 @@ export const MRT_TableFooterRow = ({
|
|
61
61
|
{(virtualColumns ?? footerGroup.headers).map((footerOrVirtualFooter) => {
|
62
62
|
const footer = virtualColumns
|
63
63
|
? footerGroup.headers[footerOrVirtualFooter.index]
|
64
|
-
: (footerOrVirtualFooter as MRT_Header);
|
64
|
+
: (footerOrVirtualFooter as MRT_Header<TData>);
|
65
65
|
|
66
66
|
return (
|
67
67
|
<MRT_TableFooterCell footer={footer} key={footer.id} table={table} />
|
@@ -3,19 +3,19 @@ import { MRT_TableHeadRow } from './MRT_TableHeadRow';
|
|
3
3
|
import { type VirtualItem } from '@tanstack/react-virtual';
|
4
4
|
import { type MRT_TableInstance } from '../types';
|
5
5
|
|
6
|
-
interface Props {
|
7
|
-
table: MRT_TableInstance
|
6
|
+
interface Props<TData extends Record<string, any>> {
|
7
|
+
table: MRT_TableInstance<TData>;
|
8
8
|
virtualColumns?: VirtualItem[];
|
9
9
|
virtualPaddingLeft?: number;
|
10
10
|
virtualPaddingRight?: number;
|
11
11
|
}
|
12
12
|
|
13
|
-
export const MRT_TableHead = ({
|
13
|
+
export const MRT_TableHead = <TData extends Record<string, any>>({
|
14
14
|
table,
|
15
15
|
virtualColumns,
|
16
16
|
virtualPaddingLeft,
|
17
17
|
virtualPaddingRight,
|
18
|
-
}: Props) => {
|
18
|
+
}: Props<TData>) => {
|
19
19
|
const {
|
20
20
|
getHeaderGroups,
|
21
21
|
getState,
|
@@ -12,12 +12,15 @@ import { getCommonCellStyles } from '../column.utils';
|
|
12
12
|
import { type Theme } from '@mui/material/styles';
|
13
13
|
import { type MRT_Header, type MRT_TableInstance } from '../types';
|
14
14
|
|
15
|
-
interface Props {
|
16
|
-
header: MRT_Header
|
17
|
-
table: MRT_TableInstance
|
15
|
+
interface Props<TData extends Record<string, any>> {
|
16
|
+
header: MRT_Header<TData>;
|
17
|
+
table: MRT_TableInstance<TData>;
|
18
18
|
}
|
19
19
|
|
20
|
-
export const MRT_TableHeadCell =
|
20
|
+
export const MRT_TableHeadCell = <TData extends Record<string, any>>({
|
21
|
+
header,
|
22
|
+
table,
|
23
|
+
}: Props<TData>) => {
|
21
24
|
const theme = useTheme();
|
22
25
|
const {
|
23
26
|
getState,
|
@@ -4,20 +4,22 @@ import Tooltip from '@mui/material/Tooltip';
|
|
4
4
|
import { MRT_ColumnActionMenu } from '../menus/MRT_ColumnActionMenu';
|
5
5
|
import { type MRT_Header, type MRT_TableInstance } from '../types';
|
6
6
|
|
7
|
-
interface Props {
|
8
|
-
header: MRT_Header
|
9
|
-
table: MRT_TableInstance
|
7
|
+
interface Props<TData extends Record<string, any>> {
|
8
|
+
header: MRT_Header<TData>;
|
9
|
+
table: MRT_TableInstance<TData>;
|
10
10
|
}
|
11
11
|
|
12
|
-
export const MRT_TableHeadCellColumnActionsButton =
|
12
|
+
export const MRT_TableHeadCellColumnActionsButton = <
|
13
|
+
TData extends Record<string, any>,
|
14
|
+
>({
|
13
15
|
header,
|
14
16
|
table,
|
15
|
-
}: Props) => {
|
17
|
+
}: Props<TData>) => {
|
16
18
|
const {
|
17
19
|
options: {
|
18
20
|
icons: { MoreVertIcon },
|
19
21
|
localization,
|
20
|
-
|
22
|
+
muiColumnActionsButtonProps,
|
21
23
|
},
|
22
24
|
} = table;
|
23
25
|
const { column } = header;
|
@@ -32,17 +34,17 @@ export const MRT_TableHeadCellColumnActionsButton = ({
|
|
32
34
|
};
|
33
35
|
|
34
36
|
const mTableHeadCellColumnActionsButtonProps =
|
35
|
-
|
36
|
-
?
|
37
|
-
:
|
37
|
+
muiColumnActionsButtonProps instanceof Function
|
38
|
+
? muiColumnActionsButtonProps({ column, table })
|
39
|
+
: muiColumnActionsButtonProps;
|
38
40
|
|
39
41
|
const mcTableHeadCellColumnActionsButtonProps =
|
40
|
-
columnDef.
|
41
|
-
? columnDef.
|
42
|
+
columnDef.muiColumnActionsButtonProps instanceof Function
|
43
|
+
? columnDef.muiColumnActionsButtonProps({
|
42
44
|
column,
|
43
45
|
table,
|
44
46
|
})
|
45
|
-
: columnDef.
|
47
|
+
: columnDef.muiColumnActionsButtonProps;
|
46
48
|
|
47
49
|
const iconButtonProps = {
|
48
50
|
...mTableHeadCellColumnActionsButtonProps,
|
@@ -5,12 +5,17 @@ import { MRT_FilterCheckbox } from '../inputs/MRT_FilterCheckbox';
|
|
5
5
|
import { MRT_FilterRangeSlider } from '../inputs/MRT_FilterRangeSlider';
|
6
6
|
import { type MRT_Header, type MRT_TableInstance } from '../types';
|
7
7
|
|
8
|
-
interface Props {
|
9
|
-
header: MRT_Header
|
10
|
-
table: MRT_TableInstance
|
8
|
+
interface Props<TData extends Record<string, any>> {
|
9
|
+
header: MRT_Header<TData>;
|
10
|
+
table: MRT_TableInstance<TData>;
|
11
11
|
}
|
12
12
|
|
13
|
-
export const MRT_TableHeadCellFilterContainer =
|
13
|
+
export const MRT_TableHeadCellFilterContainer = <
|
14
|
+
TData extends Record<string, any>,
|
15
|
+
>({
|
16
|
+
header,
|
17
|
+
table,
|
18
|
+
}: Props<TData>) => {
|
14
19
|
const { getState } = table;
|
15
20
|
const { showColumnFilters } = getState();
|
16
21
|
const { column } = header;
|
@@ -5,12 +5,17 @@ import IconButton from '@mui/material/IconButton';
|
|
5
5
|
import Tooltip from '@mui/material/Tooltip';
|
6
6
|
import { type MRT_Header, type MRT_TableInstance } from '../types';
|
7
7
|
|
8
|
-
interface Props {
|
9
|
-
header: MRT_Header
|
10
|
-
table: MRT_TableInstance
|
8
|
+
interface Props<TData extends Record<string, any>> {
|
9
|
+
header: MRT_Header<TData>;
|
10
|
+
table: MRT_TableInstance<TData>;
|
11
11
|
}
|
12
12
|
|
13
|
-
export const MRT_TableHeadCellFilterLabel =
|
13
|
+
export const MRT_TableHeadCellFilterLabel = <
|
14
|
+
TData extends Record<string, any>,
|
15
|
+
>({
|
16
|
+
header,
|
17
|
+
table,
|
18
|
+
}: Props<TData>) => {
|
14
19
|
const {
|
15
20
|
options: {
|
16
21
|
icons: { FilterAltIcon },
|