material-react-table 2.0.0-beta.1 → 2.0.0-beta.11
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/index.d.ts +279 -261
- package/dist/{esm/material-react-table.esm.js → index.esm.js} +943 -921
- package/dist/index.esm.js.map +1 -0
- package/dist/{cjs/index.js → index.js} +948 -926
- package/dist/index.js.map +1 -0
- package/dist/types/MaterialReactTable.d.ts +7 -0
- package/dist/types/body/MRT_TableBody.d.ts +13 -0
- package/dist/types/body/MRT_TableBodyCell.d.ts +15 -0
- package/dist/types/body/MRT_TableBodyCellValue.d.ts +8 -0
- package/dist/types/body/MRT_TableBodyRow.d.ts +18 -0
- package/dist/types/body/MRT_TableBodyRowGrabHandle.d.ts +10 -0
- package/dist/types/body/MRT_TableBodyRowPinButton.d.ts +8 -0
- package/dist/types/body/MRT_TableDetailPanel.d.ts +13 -0
- package/dist/types/buttons/MRT_ColumnPinningButtons.d.ts +8 -0
- package/dist/types/buttons/MRT_CopyButton.d.ts +8 -0
- package/dist/types/buttons/MRT_EditActionButtons.d.ts +9 -0
- package/dist/types/buttons/MRT_ExpandAllButton.d.ts +7 -0
- package/dist/types/buttons/MRT_ExpandButton.d.ts +8 -0
- package/dist/{cjs/types → types}/buttons/MRT_GrabHandleButton.d.ts +3 -3
- package/dist/types/buttons/MRT_RowPinButton.d.ts +10 -0
- package/dist/types/buttons/MRT_ShowHideColumnsButton.d.ts +7 -0
- package/dist/types/buttons/MRT_ToggleDensePaddingButton.d.ts +7 -0
- package/dist/types/buttons/MRT_ToggleFiltersButton.d.ts +7 -0
- package/dist/types/buttons/MRT_ToggleFullScreenButton.d.ts +7 -0
- package/dist/types/buttons/MRT_ToggleGlobalFilterButton.d.ts +7 -0
- package/dist/types/buttons/MRT_ToggleRowActionMenuButton.d.ts +9 -0
- package/dist/types/column.utils.d.ts +119 -0
- package/dist/types/filterFns.d.ts +69 -0
- package/dist/types/footer/MRT_TableFooter.d.ts +11 -0
- package/dist/types/footer/MRT_TableFooterCell.d.ts +8 -0
- package/dist/types/footer/MRT_TableFooterRow.d.ts +12 -0
- package/dist/types/head/MRT_TableHead.d.ts +11 -0
- package/dist/types/head/MRT_TableHeadCell.d.ts +8 -0
- package/dist/types/head/MRT_TableHeadCellColumnActionsButton.d.ts +8 -0
- package/dist/types/head/MRT_TableHeadCellFilterContainer.d.ts +8 -0
- package/dist/types/head/MRT_TableHeadCellFilterLabel.d.ts +8 -0
- package/dist/{cjs/types → types}/head/MRT_TableHeadCellGrabHandle.d.ts +4 -3
- package/dist/types/head/MRT_TableHeadCellResizeHandle.d.ts +8 -0
- package/dist/types/head/MRT_TableHeadCellSortLabel.d.ts +8 -0
- package/dist/types/head/MRT_TableHeadRow.d.ts +12 -0
- package/dist/types/hooks/useMRT_DisplayColumns.d.ts +9 -0
- package/dist/types/hooks/useMRT_Effects.d.ts +2 -0
- package/dist/types/hooks/useMRT_TableInstance.d.ts +2 -0
- package/dist/types/hooks/useMRT_TableOptions.d.ts +22 -0
- package/dist/{cjs/types → types}/index.d.ts +1 -0
- package/dist/types/inputs/MRT_EditCellTextField.d.ts +8 -0
- package/dist/types/inputs/MRT_FilterCheckbox.d.ts +8 -0
- package/dist/types/inputs/MRT_FilterRangeFields.d.ts +8 -0
- package/dist/types/inputs/MRT_FilterRangeSlider.d.ts +8 -0
- package/dist/types/inputs/MRT_FilterTextField.d.ts +9 -0
- package/dist/types/inputs/MRT_GlobalFilterTextField.d.ts +7 -0
- package/dist/types/inputs/MRT_SelectCheckbox.d.ts +9 -0
- package/dist/types/locales/az.d.ts +2 -0
- package/dist/{cjs/types → types}/locales/no.d.ts +1 -1
- package/dist/{esm/types → types}/menus/MRT_ColumnActionMenu.d.ts +4 -3
- package/dist/{esm/types → types}/menus/MRT_FilterOptionMenu.d.ts +4 -3
- package/dist/types/menus/MRT_RowActionMenu.d.ts +12 -0
- package/dist/types/menus/MRT_ShowHideColumnsMenu.d.ts +10 -0
- package/dist/types/menus/MRT_ShowHideColumnsMenuItems.d.ts +12 -0
- package/dist/types/modals/MRT_EditRowModal.d.ts +8 -0
- package/dist/{esm/types → types}/sortingFns.d.ts +3 -3
- package/dist/types/style.utils.d.ts +32 -0
- package/dist/types/table/MRT_Table.d.ts +7 -0
- package/dist/types/table/MRT_TableContainer.d.ts +7 -0
- package/dist/types/table/MRT_TableLoadingOverlay.d.ts +7 -0
- package/dist/types/table/MRT_TablePaper.d.ts +7 -0
- package/dist/{cjs/types → types}/table/index.d.ts +1 -0
- package/dist/types/toolbar/MRT_BottomToolbar.d.ts +7 -0
- package/dist/types/toolbar/MRT_LinearProgressBar.d.ts +8 -0
- package/dist/types/toolbar/MRT_TablePagination.d.ts +11 -0
- package/dist/types/toolbar/MRT_ToolbarAlertBanner.d.ts +8 -0
- package/dist/types/toolbar/MRT_ToolbarDropZone.d.ts +7 -0
- package/dist/types/toolbar/MRT_ToolbarInternalButtons.d.ts +7 -0
- package/dist/types/toolbar/MRT_TopToolbar.d.ts +6 -0
- package/dist/{cjs/types → types}/types.d.ts +69 -50
- package/dist/types/useMaterialReactTable.d.ts +2 -0
- package/locales/ar.d.ts +1 -0
- package/locales/ar.js +0 -1
- package/locales/{ar.esm.js → ar.mjs} +0 -1
- package/locales/az.d.ts +3 -0
- package/locales/az.js +97 -0
- package/locales/az.mjs +93 -0
- package/locales/bg.d.ts +1 -0
- package/locales/bg.js +0 -1
- package/locales/{bg.esm.js → bg.mjs} +0 -1
- package/locales/cs.d.ts +1 -0
- package/locales/cs.js +0 -1
- package/locales/{cs.esm.js → cs.mjs} +0 -1
- package/locales/da.d.ts +1 -0
- package/locales/da.js +0 -1
- package/locales/{da.esm.js → da.mjs} +0 -1
- package/locales/de.d.ts +1 -0
- package/locales/de.js +0 -1
- package/locales/{de.esm.js → de.mjs} +0 -1
- package/locales/en.d.ts +1 -0
- package/locales/en.js +0 -1
- package/locales/{en.esm.js → en.mjs} +0 -1
- package/locales/es.d.ts +1 -0
- package/locales/es.js +0 -1
- package/locales/{es.esm.js → es.mjs} +0 -1
- package/locales/et.d.ts +1 -0
- package/locales/et.js +0 -1
- package/locales/{et.esm.js → et.mjs} +0 -1
- package/locales/fa.d.ts +1 -0
- package/locales/fa.js +0 -1
- package/locales/{fa.esm.js → fa.mjs} +0 -1
- package/locales/fi.d.ts +1 -0
- package/locales/fi.js +0 -1
- package/locales/{fi.esm.js → fi.mjs} +0 -1
- package/locales/fr.d.ts +1 -0
- package/locales/fr.js +0 -1
- package/locales/{fr.esm.js → fr.mjs} +0 -1
- package/locales/hu.d.ts +1 -0
- package/locales/hu.js +0 -1
- package/locales/{hu.esm.js → hu.mjs} +0 -1
- package/locales/hy.d.ts +1 -0
- package/locales/hy.js +0 -1
- package/locales/{hy.esm.js → hy.mjs} +0 -1
- package/locales/id.d.ts +1 -0
- package/locales/id.js +0 -1
- package/locales/{id.esm.js → id.mjs} +0 -1
- package/locales/it.d.ts +1 -0
- package/locales/it.js +0 -1
- package/locales/{it.esm.js → it.mjs} +0 -1
- package/locales/ja.d.ts +1 -0
- package/locales/ja.js +0 -1
- package/locales/{ja.esm.js → ja.mjs} +0 -1
- package/locales/ko.d.ts +1 -0
- package/locales/ko.js +0 -1
- package/locales/{ko.esm.js → ko.mjs} +0 -1
- package/locales/nl.d.ts +1 -0
- package/locales/nl.js +0 -1
- package/locales/{nl.esm.js → nl.mjs} +0 -1
- package/locales/no.d.ts +2 -1
- package/locales/no.js +0 -1
- package/locales/{no.esm.js → no.mjs} +0 -1
- package/locales/np.d.ts +1 -0
- package/locales/np.js +0 -1
- package/locales/{np.esm.js → np.mjs} +0 -1
- package/locales/pl.d.ts +1 -0
- package/locales/pl.js +0 -1
- package/locales/{pl.esm.js → pl.mjs} +0 -1
- package/locales/pt-BR.d.ts +1 -0
- package/locales/pt-BR.js +0 -1
- package/locales/{pt-BR.esm.js → pt-BR.mjs} +0 -1
- package/locales/pt.d.ts +1 -0
- package/locales/pt.js +0 -1
- package/locales/{pt.esm.js → pt.mjs} +0 -1
- package/locales/ro.d.ts +1 -0
- package/locales/ro.js +0 -1
- package/locales/{ro.esm.js → ro.mjs} +0 -1
- package/locales/ru.d.ts +1 -0
- package/locales/ru.js +0 -1
- package/locales/{ru.esm.js → ru.mjs} +0 -1
- package/locales/sk.d.ts +1 -0
- package/locales/sk.js +0 -1
- package/locales/{sk.esm.js → sk.mjs} +0 -1
- package/locales/sr-Cyrl-RS.d.ts +1 -0
- package/locales/sr-Cyrl-RS.js +0 -1
- package/locales/{sr-Cyrl-RS.esm.js → sr-Cyrl-RS.mjs} +0 -1
- package/locales/sr-Latn-RS.d.ts +1 -0
- package/locales/sr-Latn-RS.js +0 -1
- package/locales/{sr-Latn-RS.esm.js → sr-Latn-RS.mjs} +0 -1
- package/locales/sv.d.ts +1 -0
- package/locales/sv.js +0 -1
- package/locales/{sv.esm.js → sv.mjs} +0 -1
- package/locales/tr.d.ts +1 -0
- package/locales/tr.js +0 -1
- package/locales/{tr.esm.js → tr.mjs} +0 -1
- package/locales/uk.d.ts +1 -0
- package/locales/uk.js +0 -1
- package/locales/{uk.esm.js → uk.mjs} +0 -1
- package/locales/vi.d.ts +1 -0
- package/locales/vi.js +0 -1
- package/locales/{vi.esm.js → vi.mjs} +0 -1
- package/locales/zh-Hans.d.ts +1 -0
- package/locales/zh-Hans.js +17 -18
- package/locales/{zh-Hans.esm.js → zh-Hans.mjs} +17 -18
- package/locales/zh-Hant.d.ts +1 -0
- package/locales/zh-Hant.js +0 -1
- package/locales/{zh-Hant.esm.js → zh-Hant.mjs} +0 -1
- package/package.json +215 -31
- package/src/MaterialReactTable.tsx +5 -4
- package/src/body/MRT_TableBody.tsx +14 -8
- package/src/body/MRT_TableBodyCell.tsx +77 -70
- package/src/body/MRT_TableBodyCellValue.tsx +13 -9
- package/src/body/MRT_TableBodyRow.tsx +26 -15
- package/src/body/MRT_TableBodyRowGrabHandle.tsx +16 -7
- package/src/body/MRT_TableBodyRowPinButton.tsx +18 -7
- package/src/body/MRT_TableDetailPanel.tsx +19 -11
- package/src/buttons/MRT_ColumnPinningButtons.tsx +21 -8
- package/src/buttons/MRT_CopyButton.tsx +12 -11
- package/src/buttons/MRT_EditActionButtons.tsx +17 -7
- package/src/buttons/MRT_ExpandAllButton.tsx +13 -11
- package/src/buttons/MRT_ExpandButton.tsx +10 -8
- package/src/buttons/MRT_GrabHandleButton.tsx +10 -8
- package/src/buttons/MRT_RowPinButton.tsx +14 -7
- package/src/buttons/MRT_ShowHideColumnsButton.tsx +4 -4
- package/src/buttons/MRT_ToggleDensePaddingButton.tsx +4 -6
- package/src/buttons/MRT_ToggleFiltersButton.tsx +4 -4
- package/src/buttons/MRT_ToggleFullScreenButton.tsx +3 -4
- package/src/buttons/MRT_ToggleGlobalFilterButton.tsx +4 -6
- package/src/buttons/MRT_ToggleRowActionMenuButton.tsx +15 -9
- package/src/column.utils.ts +46 -141
- package/src/filterFns.ts +15 -14
- package/src/footer/MRT_TableFooter.tsx +11 -7
- package/src/footer/MRT_TableFooterCell.tsx +21 -16
- package/src/footer/MRT_TableFooterRow.tsx +14 -9
- package/src/head/MRT_TableHead.tsx +10 -6
- package/src/head/MRT_TableHeadCell.tsx +102 -91
- package/src/head/MRT_TableHeadCellColumnActionsButton.tsx +13 -12
- package/src/head/MRT_TableHeadCellFilterContainer.tsx +10 -6
- package/src/head/MRT_TableHeadCellFilterLabel.tsx +15 -9
- package/src/head/MRT_TableHeadCellGrabHandle.tsx +10 -3
- package/src/head/MRT_TableHeadCellResizeHandle.tsx +14 -9
- package/src/head/MRT_TableHeadCellSortLabel.tsx +38 -18
- package/src/head/MRT_TableHeadRow.tsx +15 -9
- package/src/hooks/useMRT_DisplayColumns.tsx +14 -10
- package/src/hooks/useMRT_Effects.ts +6 -2
- package/src/hooks/useMRT_TableInstance.ts +3 -2
- package/src/hooks/useMRT_TableOptions.ts +29 -4
- package/src/index.ts +1 -0
- package/src/inputs/MRT_EditCellTextField.tsx +18 -4
- package/src/inputs/MRT_FilterCheckbox.tsx +10 -5
- package/src/inputs/MRT_FilterRangeFields.tsx +19 -5
- package/src/inputs/MRT_FilterRangeSlider.tsx +10 -4
- package/src/inputs/MRT_FilterTextField.tsx +13 -5
- package/src/inputs/MRT_GlobalFilterTextField.tsx +27 -10
- package/src/inputs/MRT_SelectCheckbox.tsx +14 -7
- package/src/locales/az.ts +94 -0
- package/src/locales/no.ts +1 -1
- package/src/locales/zh-Hans.ts +17 -17
- package/src/menus/MRT_ColumnActionMenu.tsx +10 -4
- package/src/menus/MRT_FilterOptionMenu.tsx +6 -3
- package/src/menus/MRT_RowActionMenu.tsx +10 -4
- package/src/menus/MRT_ShowHideColumnsMenu.tsx +10 -4
- package/src/menus/MRT_ShowHideColumnsMenuItems.tsx +17 -10
- package/src/modals/MRT_EditRowModal.tsx +17 -11
- package/src/sortingFns.ts +3 -3
- package/src/style.utils.ts +149 -0
- package/src/table/MRT_Table.tsx +28 -34
- package/src/table/MRT_TableContainer.tsx +17 -46
- package/src/table/MRT_TableLoadingOverlay.tsx +54 -0
- package/src/table/MRT_TablePaper.tsx +13 -6
- package/src/table/index.ts +1 -0
- package/src/toolbar/MRT_BottomToolbar.tsx +16 -14
- package/src/toolbar/MRT_LinearProgressBar.tsx +16 -10
- package/src/toolbar/MRT_TablePagination.tsx +20 -10
- package/src/toolbar/MRT_ToolbarAlertBanner.tsx +11 -7
- package/src/toolbar/MRT_ToolbarDropZone.tsx +8 -4
- package/src/toolbar/MRT_ToolbarInternalButtons.tsx +10 -6
- package/src/toolbar/MRT_TopToolbar.tsx +11 -24
- package/src/types.ts +98 -56
- package/src/useMaterialReactTable.ts +8 -7
- package/dist/cjs/index.js.map +0 -1
- package/dist/cjs/types/MaterialReactTable.d.ts +0 -7
- package/dist/cjs/types/body/MRT_TableBody.d.ts +0 -12
- package/dist/cjs/types/body/MRT_TableBodyCell.d.ts +0 -15
- package/dist/cjs/types/body/MRT_TableBodyCellValue.d.ts +0 -7
- package/dist/cjs/types/body/MRT_TableBodyRow.d.ts +0 -18
- package/dist/cjs/types/body/MRT_TableBodyRowGrabHandle.d.ts +0 -9
- package/dist/cjs/types/body/MRT_TableBodyRowPinButton.d.ts +0 -7
- package/dist/cjs/types/body/MRT_TableDetailPanel.d.ts +0 -12
- package/dist/cjs/types/buttons/MRT_ColumnPinningButtons.d.ts +0 -7
- package/dist/cjs/types/buttons/MRT_CopyButton.d.ts +0 -9
- package/dist/cjs/types/buttons/MRT_EditActionButtons.d.ts +0 -8
- package/dist/cjs/types/buttons/MRT_ExpandAllButton.d.ts +0 -6
- package/dist/cjs/types/buttons/MRT_ExpandButton.d.ts +0 -7
- package/dist/cjs/types/buttons/MRT_RowPinButton.d.ts +0 -9
- package/dist/cjs/types/buttons/MRT_ShowHideColumnsButton.d.ts +0 -7
- package/dist/cjs/types/buttons/MRT_ToggleDensePaddingButton.d.ts +0 -7
- package/dist/cjs/types/buttons/MRT_ToggleFiltersButton.d.ts +0 -7
- package/dist/cjs/types/buttons/MRT_ToggleFullScreenButton.d.ts +0 -7
- package/dist/cjs/types/buttons/MRT_ToggleGlobalFilterButton.d.ts +0 -7
- package/dist/cjs/types/buttons/MRT_ToggleRowActionMenuButton.d.ts +0 -8
- package/dist/cjs/types/column.utils.d.ts +0 -148
- package/dist/cjs/types/filterFns.d.ts +0 -68
- package/dist/cjs/types/footer/MRT_TableFooter.d.ts +0 -10
- package/dist/cjs/types/footer/MRT_TableFooterCell.d.ts +0 -7
- package/dist/cjs/types/footer/MRT_TableFooterRow.d.ts +0 -11
- package/dist/cjs/types/head/MRT_TableHead.d.ts +0 -10
- package/dist/cjs/types/head/MRT_TableHeadCell.d.ts +0 -7
- package/dist/cjs/types/head/MRT_TableHeadCellColumnActionsButton.d.ts +0 -7
- package/dist/cjs/types/head/MRT_TableHeadCellFilterContainer.d.ts +0 -7
- package/dist/cjs/types/head/MRT_TableHeadCellFilterLabel.d.ts +0 -7
- package/dist/cjs/types/head/MRT_TableHeadCellResizeHandle.d.ts +0 -7
- package/dist/cjs/types/head/MRT_TableHeadCellSortLabel.d.ts +0 -9
- package/dist/cjs/types/head/MRT_TableHeadRow.d.ts +0 -11
- package/dist/cjs/types/hooks/useMRT_DisplayColumns.d.ts +0 -9
- package/dist/cjs/types/hooks/useMRT_Effects.d.ts +0 -2
- package/dist/cjs/types/hooks/useMRT_TableInstance.d.ts +0 -2
- package/dist/cjs/types/hooks/useMRT_TableOptions.d.ts +0 -2
- package/dist/cjs/types/inputs/MRT_EditCellTextField.d.ts +0 -7
- package/dist/cjs/types/inputs/MRT_FilterCheckbox.d.ts +0 -7
- package/dist/cjs/types/inputs/MRT_FilterRangeFields.d.ts +0 -7
- package/dist/cjs/types/inputs/MRT_FilterRangeSlider.d.ts +0 -7
- package/dist/cjs/types/inputs/MRT_FilterTextField.d.ts +0 -8
- package/dist/cjs/types/inputs/MRT_GlobalFilterTextField.d.ts +0 -6
- package/dist/cjs/types/inputs/MRT_SelectCheckbox.d.ts +0 -8
- package/dist/cjs/types/menus/MRT_ColumnActionMenu.d.ts +0 -19
- package/dist/cjs/types/menus/MRT_FilterOptionMenu.d.ts +0 -12
- package/dist/cjs/types/menus/MRT_RowActionMenu.d.ts +0 -11
- package/dist/cjs/types/menus/MRT_ShowHideColumnsMenu.d.ts +0 -9
- package/dist/cjs/types/menus/MRT_ShowHideColumnsMenuItems.d.ts +0 -11
- package/dist/cjs/types/modals/MRT_EditRowModal.d.ts +0 -7
- package/dist/cjs/types/sortingFns.d.ts +0 -12
- package/dist/cjs/types/table/MRT_Table.d.ts +0 -6
- package/dist/cjs/types/table/MRT_TableContainer.d.ts +0 -6
- package/dist/cjs/types/table/MRT_TablePaper.d.ts +0 -6
- package/dist/cjs/types/toolbar/MRT_BottomToolbar.d.ts +0 -6
- package/dist/cjs/types/toolbar/MRT_LinearProgressBar.d.ts +0 -7
- package/dist/cjs/types/toolbar/MRT_TablePagination.d.ts +0 -7
- package/dist/cjs/types/toolbar/MRT_ToolbarAlertBanner.d.ts +0 -7
- package/dist/cjs/types/toolbar/MRT_ToolbarDropZone.d.ts +0 -6
- package/dist/cjs/types/toolbar/MRT_ToolbarInternalButtons.d.ts +0 -6
- package/dist/cjs/types/toolbar/MRT_TopToolbar.d.ts +0 -21
- package/dist/cjs/types/useMaterialReactTable.d.ts +0 -2
- package/dist/esm/material-react-table.esm.js.map +0 -1
- package/dist/esm/types/MaterialReactTable.d.ts +0 -7
- package/dist/esm/types/aggregationFns.d.ts +0 -11
- package/dist/esm/types/body/MRT_TableBody.d.ts +0 -12
- package/dist/esm/types/body/MRT_TableBodyCell.d.ts +0 -15
- package/dist/esm/types/body/MRT_TableBodyCellValue.d.ts +0 -7
- package/dist/esm/types/body/MRT_TableBodyRow.d.ts +0 -18
- package/dist/esm/types/body/MRT_TableBodyRowGrabHandle.d.ts +0 -9
- package/dist/esm/types/body/MRT_TableBodyRowPinButton.d.ts +0 -7
- package/dist/esm/types/body/MRT_TableDetailPanel.d.ts +0 -12
- package/dist/esm/types/body/index.d.ts +0 -7
- package/dist/esm/types/buttons/MRT_ColumnPinningButtons.d.ts +0 -7
- package/dist/esm/types/buttons/MRT_CopyButton.d.ts +0 -9
- package/dist/esm/types/buttons/MRT_EditActionButtons.d.ts +0 -8
- package/dist/esm/types/buttons/MRT_ExpandAllButton.d.ts +0 -6
- package/dist/esm/types/buttons/MRT_ExpandButton.d.ts +0 -7
- package/dist/esm/types/buttons/MRT_GrabHandleButton.d.ts +0 -12
- package/dist/esm/types/buttons/MRT_RowPinButton.d.ts +0 -9
- package/dist/esm/types/buttons/MRT_ShowHideColumnsButton.d.ts +0 -7
- package/dist/esm/types/buttons/MRT_ToggleDensePaddingButton.d.ts +0 -7
- package/dist/esm/types/buttons/MRT_ToggleFiltersButton.d.ts +0 -7
- package/dist/esm/types/buttons/MRT_ToggleFullScreenButton.d.ts +0 -7
- package/dist/esm/types/buttons/MRT_ToggleGlobalFilterButton.d.ts +0 -7
- package/dist/esm/types/buttons/MRT_ToggleRowActionMenuButton.d.ts +0 -8
- package/dist/esm/types/buttons/index.d.ts +0 -13
- package/dist/esm/types/column.utils.d.ts +0 -148
- package/dist/esm/types/filterFns.d.ts +0 -68
- package/dist/esm/types/footer/MRT_TableFooter.d.ts +0 -10
- package/dist/esm/types/footer/MRT_TableFooterCell.d.ts +0 -7
- package/dist/esm/types/footer/MRT_TableFooterRow.d.ts +0 -11
- package/dist/esm/types/footer/index.d.ts +0 -3
- package/dist/esm/types/head/MRT_TableHead.d.ts +0 -10
- package/dist/esm/types/head/MRT_TableHeadCell.d.ts +0 -7
- package/dist/esm/types/head/MRT_TableHeadCellColumnActionsButton.d.ts +0 -7
- package/dist/esm/types/head/MRT_TableHeadCellFilterContainer.d.ts +0 -7
- package/dist/esm/types/head/MRT_TableHeadCellFilterLabel.d.ts +0 -7
- package/dist/esm/types/head/MRT_TableHeadCellGrabHandle.d.ts +0 -9
- package/dist/esm/types/head/MRT_TableHeadCellResizeHandle.d.ts +0 -7
- package/dist/esm/types/head/MRT_TableHeadCellSortLabel.d.ts +0 -9
- package/dist/esm/types/head/MRT_TableHeadRow.d.ts +0 -11
- package/dist/esm/types/head/index.d.ts +0 -9
- package/dist/esm/types/hooks/useMRT_DisplayColumns.d.ts +0 -9
- package/dist/esm/types/hooks/useMRT_Effects.d.ts +0 -2
- package/dist/esm/types/hooks/useMRT_TableInstance.d.ts +0 -2
- package/dist/esm/types/hooks/useMRT_TableOptions.d.ts +0 -2
- package/dist/esm/types/icons.d.ts +0 -36
- package/dist/esm/types/index.d.ts +0 -16
- package/dist/esm/types/inputs/MRT_EditCellTextField.d.ts +0 -7
- package/dist/esm/types/inputs/MRT_FilterCheckbox.d.ts +0 -7
- package/dist/esm/types/inputs/MRT_FilterRangeFields.d.ts +0 -7
- package/dist/esm/types/inputs/MRT_FilterRangeSlider.d.ts +0 -7
- package/dist/esm/types/inputs/MRT_FilterTextField.d.ts +0 -8
- package/dist/esm/types/inputs/MRT_GlobalFilterTextField.d.ts +0 -6
- package/dist/esm/types/inputs/MRT_SelectCheckbox.d.ts +0 -8
- package/dist/esm/types/inputs/index.d.ts +0 -7
- package/dist/esm/types/locales/ar.d.ts +0 -2
- package/dist/esm/types/locales/bg.d.ts +0 -2
- package/dist/esm/types/locales/cs.d.ts +0 -2
- package/dist/esm/types/locales/da.d.ts +0 -2
- package/dist/esm/types/locales/de.d.ts +0 -2
- package/dist/esm/types/locales/en.d.ts +0 -2
- package/dist/esm/types/locales/es.d.ts +0 -2
- package/dist/esm/types/locales/et.d.ts +0 -2
- package/dist/esm/types/locales/fa.d.ts +0 -2
- package/dist/esm/types/locales/fi.d.ts +0 -2
- package/dist/esm/types/locales/fr.d.ts +0 -2
- package/dist/esm/types/locales/hu.d.ts +0 -2
- package/dist/esm/types/locales/hy.d.ts +0 -2
- package/dist/esm/types/locales/id.d.ts +0 -2
- package/dist/esm/types/locales/it.d.ts +0 -2
- package/dist/esm/types/locales/ja.d.ts +0 -2
- package/dist/esm/types/locales/ko.d.ts +0 -2
- package/dist/esm/types/locales/nl.d.ts +0 -2
- package/dist/esm/types/locales/no.d.ts +0 -2
- package/dist/esm/types/locales/np.d.ts +0 -2
- package/dist/esm/types/locales/pl.d.ts +0 -2
- package/dist/esm/types/locales/pt-BR.d.ts +0 -2
- package/dist/esm/types/locales/pt.d.ts +0 -2
- package/dist/esm/types/locales/ro.d.ts +0 -2
- package/dist/esm/types/locales/ru.d.ts +0 -2
- package/dist/esm/types/locales/sk.d.ts +0 -2
- package/dist/esm/types/locales/sr-Cyrl-RS.d.ts +0 -2
- package/dist/esm/types/locales/sr-Latn-RS.d.ts +0 -2
- package/dist/esm/types/locales/sv.d.ts +0 -2
- package/dist/esm/types/locales/tr.d.ts +0 -2
- package/dist/esm/types/locales/uk.d.ts +0 -2
- package/dist/esm/types/locales/vi.d.ts +0 -2
- package/dist/esm/types/locales/zh-Hans.d.ts +0 -2
- package/dist/esm/types/locales/zh-Hant.d.ts +0 -2
- package/dist/esm/types/menus/MRT_RowActionMenu.d.ts +0 -11
- package/dist/esm/types/menus/MRT_ShowHideColumnsMenu.d.ts +0 -9
- package/dist/esm/types/menus/MRT_ShowHideColumnsMenuItems.d.ts +0 -11
- package/dist/esm/types/menus/index.d.ts +0 -5
- package/dist/esm/types/modals/MRT_EditRowModal.d.ts +0 -7
- package/dist/esm/types/modals/index.d.ts +0 -1
- package/dist/esm/types/table/MRT_Table.d.ts +0 -6
- package/dist/esm/types/table/MRT_TableContainer.d.ts +0 -6
- package/dist/esm/types/table/MRT_TablePaper.d.ts +0 -6
- package/dist/esm/types/table/index.d.ts +0 -4
- package/dist/esm/types/toolbar/MRT_BottomToolbar.d.ts +0 -6
- package/dist/esm/types/toolbar/MRT_LinearProgressBar.d.ts +0 -7
- package/dist/esm/types/toolbar/MRT_TablePagination.d.ts +0 -7
- package/dist/esm/types/toolbar/MRT_ToolbarAlertBanner.d.ts +0 -7
- package/dist/esm/types/toolbar/MRT_ToolbarDropZone.d.ts +0 -6
- package/dist/esm/types/toolbar/MRT_ToolbarInternalButtons.d.ts +0 -6
- package/dist/esm/types/toolbar/MRT_TopToolbar.d.ts +0 -21
- package/dist/esm/types/toolbar/index.d.ts +0 -7
- package/dist/esm/types/types.d.ts +0 -818
- package/dist/esm/types/useMaterialReactTable.d.ts +0 -2
- package/locales/ar.esm.d.ts +0 -2
- package/locales/ar.esm.js.map +0 -1
- package/locales/ar.js.map +0 -1
- package/locales/bg.esm.d.ts +0 -2
- package/locales/bg.esm.js.map +0 -1
- package/locales/bg.js.map +0 -1
- package/locales/cs.esm.d.ts +0 -2
- package/locales/cs.esm.js.map +0 -1
- package/locales/cs.js.map +0 -1
- package/locales/da.esm.d.ts +0 -2
- package/locales/da.esm.js.map +0 -1
- package/locales/da.js.map +0 -1
- package/locales/de.esm.d.ts +0 -2
- package/locales/de.esm.js.map +0 -1
- package/locales/de.js.map +0 -1
- package/locales/en.esm.d.ts +0 -2
- package/locales/en.esm.js.map +0 -1
- package/locales/en.js.map +0 -1
- package/locales/es.esm.d.ts +0 -2
- package/locales/es.esm.js.map +0 -1
- package/locales/es.js.map +0 -1
- package/locales/et.esm.d.ts +0 -2
- package/locales/et.esm.js.map +0 -1
- package/locales/et.js.map +0 -1
- package/locales/fa.esm.d.ts +0 -2
- package/locales/fa.esm.js.map +0 -1
- package/locales/fa.js.map +0 -1
- package/locales/fi.esm.d.ts +0 -2
- package/locales/fi.esm.js.map +0 -1
- package/locales/fi.js.map +0 -1
- package/locales/fr.esm.d.ts +0 -2
- package/locales/fr.esm.js.map +0 -1
- package/locales/fr.js.map +0 -1
- package/locales/hu.esm.d.ts +0 -2
- package/locales/hu.esm.js.map +0 -1
- package/locales/hu.js.map +0 -1
- package/locales/hy.esm.d.ts +0 -2
- package/locales/hy.esm.js.map +0 -1
- package/locales/hy.js.map +0 -1
- package/locales/id.esm.d.ts +0 -2
- package/locales/id.esm.js.map +0 -1
- package/locales/id.js.map +0 -1
- package/locales/it.esm.d.ts +0 -2
- package/locales/it.esm.js.map +0 -1
- package/locales/it.js.map +0 -1
- package/locales/ja.esm.d.ts +0 -2
- package/locales/ja.esm.js.map +0 -1
- package/locales/ja.js.map +0 -1
- package/locales/ko.esm.d.ts +0 -2
- package/locales/ko.esm.js.map +0 -1
- package/locales/ko.js.map +0 -1
- package/locales/nl.esm.d.ts +0 -2
- package/locales/nl.esm.js.map +0 -1
- package/locales/nl.js.map +0 -1
- package/locales/no.esm.d.ts +0 -2
- package/locales/no.esm.js.map +0 -1
- package/locales/no.js.map +0 -1
- package/locales/np.esm.d.ts +0 -2
- package/locales/np.esm.js.map +0 -1
- package/locales/np.js.map +0 -1
- package/locales/pl.esm.d.ts +0 -2
- package/locales/pl.esm.js.map +0 -1
- package/locales/pl.js.map +0 -1
- package/locales/pt-BR.esm.d.ts +0 -2
- package/locales/pt-BR.esm.js.map +0 -1
- package/locales/pt-BR.js.map +0 -1
- package/locales/pt.esm.d.ts +0 -2
- package/locales/pt.esm.js.map +0 -1
- package/locales/pt.js.map +0 -1
- package/locales/ro.esm.d.ts +0 -2
- package/locales/ro.esm.js.map +0 -1
- package/locales/ro.js.map +0 -1
- package/locales/ru.esm.d.ts +0 -2
- package/locales/ru.esm.js.map +0 -1
- package/locales/ru.js.map +0 -1
- package/locales/sk.esm.d.ts +0 -2
- package/locales/sk.esm.js.map +0 -1
- package/locales/sk.js.map +0 -1
- package/locales/sr-Cyrl-RS.esm.d.ts +0 -2
- package/locales/sr-Cyrl-RS.esm.js.map +0 -1
- package/locales/sr-Cyrl-RS.js.map +0 -1
- package/locales/sr-Latn-RS.esm.d.ts +0 -2
- package/locales/sr-Latn-RS.esm.js.map +0 -1
- package/locales/sr-Latn-RS.js.map +0 -1
- package/locales/sv.esm.d.ts +0 -2
- package/locales/sv.esm.js.map +0 -1
- package/locales/sv.js.map +0 -1
- package/locales/tr.esm.d.ts +0 -2
- package/locales/tr.esm.js.map +0 -1
- package/locales/tr.js.map +0 -1
- package/locales/uk.esm.d.ts +0 -2
- package/locales/uk.esm.js.map +0 -1
- package/locales/uk.js.map +0 -1
- package/locales/vi.esm.d.ts +0 -2
- package/locales/vi.esm.js.map +0 -1
- package/locales/vi.js.map +0 -1
- package/locales/zh-Hans.esm.d.ts +0 -2
- package/locales/zh-Hans.esm.js.map +0 -1
- package/locales/zh-Hans.js.map +0 -1
- package/locales/zh-Hant.esm.d.ts +0 -2
- package/locales/zh-Hant.esm.js.map +0 -1
- package/locales/zh-Hant.js.map +0 -1
- /package/dist/{cjs/types → types}/aggregationFns.d.ts +0 -0
- /package/dist/{cjs/types → types}/body/index.d.ts +0 -0
- /package/dist/{cjs/types → types}/buttons/index.d.ts +0 -0
- /package/dist/{cjs/types → types}/footer/index.d.ts +0 -0
- /package/dist/{cjs/types → types}/head/index.d.ts +0 -0
- /package/dist/{cjs/types → types}/icons.d.ts +0 -0
- /package/dist/{cjs/types → types}/inputs/index.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/ar.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/bg.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/cs.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/da.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/de.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/en.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/es.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/et.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/fa.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/fi.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/fr.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/hu.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/hy.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/id.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/it.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/ja.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/ko.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/nl.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/np.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/pl.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/pt-BR.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/pt.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/ro.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/ru.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/sk.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/sr-Cyrl-RS.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/sr-Latn-RS.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/sv.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/tr.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/uk.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/vi.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/zh-Hans.d.ts +0 -0
- /package/dist/{cjs/types → types}/locales/zh-Hant.d.ts +0 -0
- /package/dist/{cjs/types → types}/menus/index.d.ts +0 -0
- /package/dist/{cjs/types → types}/modals/index.d.ts +0 -0
- /package/dist/{cjs/types → types}/toolbar/index.d.ts +0 -0
package/src/filterFns.ts
CHANGED
@@ -4,8 +4,9 @@ import {
|
|
4
4
|
rankings,
|
5
5
|
} from '@tanstack/match-sorter-utils';
|
6
6
|
import { type Row, filterFns } from '@tanstack/react-table';
|
7
|
+
import { type MRT_RowData } from './types';
|
7
8
|
|
8
|
-
const fuzzy = <TData extends
|
9
|
+
const fuzzy = <TData extends MRT_RowData>(
|
9
10
|
row: Row<TData>,
|
10
11
|
columnId: string,
|
11
12
|
filterValue: number | string,
|
@@ -20,7 +21,7 @@ const fuzzy = <TData extends Record<string, any>>(
|
|
20
21
|
|
21
22
|
fuzzy.autoRemove = (val: any) => !val;
|
22
23
|
|
23
|
-
const contains = <TData extends
|
24
|
+
const contains = <TData extends MRT_RowData>(
|
24
25
|
row: Row<TData>,
|
25
26
|
id: string,
|
26
27
|
filterValue: number | string,
|
@@ -34,7 +35,7 @@ const contains = <TData extends Record<string, any>>(
|
|
34
35
|
|
35
36
|
contains.autoRemove = (val: any) => !val;
|
36
37
|
|
37
|
-
const startsWith = <TData extends
|
38
|
+
const startsWith = <TData extends MRT_RowData>(
|
38
39
|
row: Row<TData>,
|
39
40
|
id: string,
|
40
41
|
filterValue: number | string,
|
@@ -48,7 +49,7 @@ const startsWith = <TData extends Record<string, any>>(
|
|
48
49
|
|
49
50
|
startsWith.autoRemove = (val: any) => !val;
|
50
51
|
|
51
|
-
const endsWith = <TData extends
|
52
|
+
const endsWith = <TData extends MRT_RowData>(
|
52
53
|
row: Row<TData>,
|
53
54
|
id: string,
|
54
55
|
filterValue: number | string,
|
@@ -62,7 +63,7 @@ const endsWith = <TData extends Record<string, any>>(
|
|
62
63
|
|
63
64
|
endsWith.autoRemove = (val: any) => !val;
|
64
65
|
|
65
|
-
const equals = <TData extends
|
66
|
+
const equals = <TData extends MRT_RowData>(
|
66
67
|
row: Row<TData>,
|
67
68
|
id: string,
|
68
69
|
filterValue: number | string,
|
@@ -72,7 +73,7 @@ const equals = <TData extends Record<string, any>>(
|
|
72
73
|
|
73
74
|
equals.autoRemove = (val: any) => !val;
|
74
75
|
|
75
|
-
const notEquals = <TData extends
|
76
|
+
const notEquals = <TData extends MRT_RowData>(
|
76
77
|
row: Row<TData>,
|
77
78
|
id: string,
|
78
79
|
filterValue: number | string,
|
@@ -82,7 +83,7 @@ const notEquals = <TData extends Record<string, any>>(
|
|
82
83
|
|
83
84
|
notEquals.autoRemove = (val: any) => !val;
|
84
85
|
|
85
|
-
const greaterThan = <TData extends
|
86
|
+
const greaterThan = <TData extends MRT_RowData>(
|
86
87
|
row: Row<TData>,
|
87
88
|
id: string,
|
88
89
|
filterValue: number | string,
|
@@ -94,7 +95,7 @@ const greaterThan = <TData extends Record<string, any>>(
|
|
94
95
|
|
95
96
|
greaterThan.autoRemove = (val: any) => !val;
|
96
97
|
|
97
|
-
const greaterThanOrEqualTo = <TData extends
|
98
|
+
const greaterThanOrEqualTo = <TData extends MRT_RowData>(
|
98
99
|
row: Row<TData>,
|
99
100
|
id: string,
|
100
101
|
filterValue: number | string,
|
@@ -102,7 +103,7 @@ const greaterThanOrEqualTo = <TData extends Record<string, any>>(
|
|
102
103
|
|
103
104
|
greaterThanOrEqualTo.autoRemove = (val: any) => !val;
|
104
105
|
|
105
|
-
const lessThan = <TData extends
|
106
|
+
const lessThan = <TData extends MRT_RowData>(
|
106
107
|
row: Row<TData>,
|
107
108
|
id: string,
|
108
109
|
filterValue: number | string,
|
@@ -114,7 +115,7 @@ const lessThan = <TData extends Record<string, any>>(
|
|
114
115
|
|
115
116
|
lessThan.autoRemove = (val: any) => !val;
|
116
117
|
|
117
|
-
const lessThanOrEqualTo = <TData extends
|
118
|
+
const lessThanOrEqualTo = <TData extends MRT_RowData>(
|
118
119
|
row: Row<TData>,
|
119
120
|
id: string,
|
120
121
|
filterValue: number | string,
|
@@ -122,7 +123,7 @@ const lessThanOrEqualTo = <TData extends Record<string, any>>(
|
|
122
123
|
|
123
124
|
lessThanOrEqualTo.autoRemove = (val: any) => !val;
|
124
125
|
|
125
|
-
const between = <TData extends
|
126
|
+
const between = <TData extends MRT_RowData>(
|
126
127
|
row: Row<TData>,
|
127
128
|
id: string,
|
128
129
|
filterValues: [number | string, number | string],
|
@@ -137,7 +138,7 @@ const between = <TData extends Record<string, any>>(
|
|
137
138
|
|
138
139
|
between.autoRemove = (val: any) => !val;
|
139
140
|
|
140
|
-
const betweenInclusive = <TData extends
|
141
|
+
const betweenInclusive = <TData extends MRT_RowData>(
|
141
142
|
row: Row<TData>,
|
142
143
|
id: string,
|
143
144
|
filterValues: [number | string, number | string],
|
@@ -152,7 +153,7 @@ const betweenInclusive = <TData extends Record<string, any>>(
|
|
152
153
|
|
153
154
|
betweenInclusive.autoRemove = (val: any) => !val;
|
154
155
|
|
155
|
-
const empty = <TData extends
|
156
|
+
const empty = <TData extends MRT_RowData>(
|
156
157
|
row: Row<TData>,
|
157
158
|
id: string,
|
158
159
|
_filterValue: number | string,
|
@@ -160,7 +161,7 @@ const empty = <TData extends Record<string, any>>(
|
|
160
161
|
|
161
162
|
empty.autoRemove = (val: any) => !val;
|
162
163
|
|
163
|
-
const notEmpty = <TData extends
|
164
|
+
const notEmpty = <TData extends MRT_RowData>(
|
164
165
|
row: Row<TData>,
|
165
166
|
id: string,
|
166
167
|
_filterValue: number | string,
|
@@ -1,21 +1,22 @@
|
|
1
1
|
import { type VirtualItem } from '@tanstack/react-virtual';
|
2
|
-
import TableFooter from '@mui/material/TableFooter';
|
2
|
+
import TableFooter, { type TableFooterProps } from '@mui/material/TableFooter';
|
3
3
|
import { MRT_TableFooterRow } from './MRT_TableFooterRow';
|
4
4
|
import { parseFromValuesOrFunc } from '../column.utils';
|
5
|
-
import { type MRT_TableInstance } from '../types';
|
5
|
+
import { type MRT_RowData, type MRT_TableInstance } from '../types';
|
6
6
|
|
7
|
-
interface Props<TData extends
|
7
|
+
interface Props<TData extends MRT_RowData> extends TableFooterProps {
|
8
8
|
table: MRT_TableInstance<TData>;
|
9
9
|
virtualColumns?: VirtualItem[];
|
10
10
|
virtualPaddingLeft?: number;
|
11
11
|
virtualPaddingRight?: number;
|
12
12
|
}
|
13
13
|
|
14
|
-
export const MRT_TableFooter = <TData extends
|
14
|
+
export const MRT_TableFooter = <TData extends MRT_RowData>({
|
15
15
|
table,
|
16
16
|
virtualColumns,
|
17
17
|
virtualPaddingLeft,
|
18
18
|
virtualPaddingRight,
|
19
|
+
...rest
|
19
20
|
}: Props<TData>) => {
|
20
21
|
const {
|
21
22
|
getFooterGroups,
|
@@ -25,9 +26,12 @@ export const MRT_TableFooter = <TData extends Record<string, any>>({
|
|
25
26
|
} = table;
|
26
27
|
const { isFullScreen } = getState();
|
27
28
|
|
28
|
-
const tableFooterProps =
|
29
|
-
|
30
|
-
|
29
|
+
const tableFooterProps = {
|
30
|
+
...parseFromValuesOrFunc(muiTableFooterProps, {
|
31
|
+
table,
|
32
|
+
}),
|
33
|
+
...rest,
|
34
|
+
};
|
31
35
|
|
32
36
|
const stickFooter =
|
33
37
|
(isFullScreen || enableStickyFooter) && enableStickyFooter !== false;
|
@@ -1,15 +1,21 @@
|
|
1
|
-
import TableCell from '@mui/material/TableCell';
|
2
|
-
import {
|
3
|
-
import {
|
1
|
+
import TableCell, { type TableCellProps } from '@mui/material/TableCell';
|
2
|
+
import { parseFromValuesOrFunc } from '../column.utils';
|
3
|
+
import { getCommonMRTCellStyles } from '../style.utils';
|
4
|
+
import {
|
5
|
+
type MRT_Header,
|
6
|
+
type MRT_RowData,
|
7
|
+
type MRT_TableInstance,
|
8
|
+
} from '../types';
|
4
9
|
|
5
|
-
interface Props<TData extends
|
10
|
+
interface Props<TData extends MRT_RowData> extends TableCellProps {
|
6
11
|
footer: MRT_Header<TData>;
|
7
12
|
table: MRT_TableInstance<TData>;
|
8
13
|
}
|
9
14
|
|
10
|
-
export const MRT_TableFooterCell = <TData extends
|
15
|
+
export const MRT_TableFooterCell = <TData extends MRT_RowData>({
|
11
16
|
footer,
|
12
17
|
table,
|
18
|
+
...rest
|
13
19
|
}: Props<TData>) => {
|
14
20
|
const {
|
15
21
|
getState,
|
@@ -20,12 +26,11 @@ export const MRT_TableFooterCell = <TData extends Record<string, any>>({
|
|
20
26
|
const { columnDef } = column;
|
21
27
|
const { columnDefType } = columnDef;
|
22
28
|
|
29
|
+
const args = { column, table };
|
23
30
|
const tableCellProps = {
|
24
|
-
...parseFromValuesOrFunc(muiTableFooterCellProps,
|
25
|
-
...parseFromValuesOrFunc(columnDef.muiTableFooterCellProps,
|
26
|
-
|
27
|
-
table,
|
28
|
-
}),
|
31
|
+
...parseFromValuesOrFunc(muiTableFooterCellProps, args),
|
32
|
+
...parseFromValuesOrFunc(columnDef.muiTableFooterCellProps, args),
|
33
|
+
...rest,
|
29
34
|
};
|
30
35
|
|
31
36
|
return (
|
@@ -35,7 +40,7 @@ export const MRT_TableFooterCell = <TData extends Record<string, any>>({
|
|
35
40
|
variant="head"
|
36
41
|
{...tableCellProps}
|
37
42
|
sx={(theme) => ({
|
38
|
-
display: layoutMode?.startsWith('grid') ? 'grid' :
|
43
|
+
display: layoutMode?.startsWith('grid') ? 'grid' : undefined,
|
39
44
|
fontWeight: 'bold',
|
40
45
|
justifyContent: columnDefType === 'group' ? 'center' : undefined,
|
41
46
|
p:
|
@@ -46,16 +51,17 @@ export const MRT_TableFooterCell = <TData extends Record<string, any>>({
|
|
46
51
|
: '1.5rem',
|
47
52
|
verticalAlign: 'top',
|
48
53
|
zIndex: column.getIsPinned() && columnDefType !== 'group' ? 2 : 1,
|
49
|
-
...
|
54
|
+
...getCommonMRTCellStyles({
|
50
55
|
column,
|
51
56
|
table,
|
52
57
|
tableCellProps,
|
53
58
|
theme,
|
54
59
|
}),
|
60
|
+
...(parseFromValuesOrFunc(tableCellProps?.sx, theme) as any),
|
55
61
|
})}
|
56
62
|
>
|
57
|
-
|
58
|
-
|
63
|
+
{tableCellProps.children ??
|
64
|
+
(footer.isPlaceholder
|
59
65
|
? null
|
60
66
|
: parseFromValuesOrFunc(columnDef.Footer, {
|
61
67
|
column,
|
@@ -63,8 +69,7 @@ export const MRT_TableFooterCell = <TData extends Record<string, any>>({
|
|
63
69
|
table,
|
64
70
|
}) ??
|
65
71
|
columnDef.footer ??
|
66
|
-
null}
|
67
|
-
</>
|
72
|
+
null)}
|
68
73
|
</TableCell>
|
69
74
|
);
|
70
75
|
};
|
@@ -1,15 +1,16 @@
|
|
1
1
|
import { type VirtualItem } from '@tanstack/react-virtual';
|
2
|
-
import TableRow from '@mui/material/TableRow';
|
3
|
-
import { lighten } from '@mui/material/styles';
|
2
|
+
import TableRow, { type TableRowProps } from '@mui/material/TableRow';
|
4
3
|
import { MRT_TableFooterCell } from './MRT_TableFooterCell';
|
5
4
|
import { parseFromValuesOrFunc } from '../column.utils';
|
5
|
+
import { getMRTTheme } from '../style.utils';
|
6
6
|
import {
|
7
7
|
type MRT_Header,
|
8
8
|
type MRT_HeaderGroup,
|
9
|
+
type MRT_RowData,
|
9
10
|
type MRT_TableInstance,
|
10
11
|
} from '../types';
|
11
12
|
|
12
|
-
interface Props<TData extends
|
13
|
+
interface Props<TData extends MRT_RowData> extends TableRowProps {
|
13
14
|
footerGroup: MRT_HeaderGroup<TData>;
|
14
15
|
table: MRT_TableInstance<TData>;
|
15
16
|
virtualColumns?: VirtualItem[];
|
@@ -17,12 +18,13 @@ interface Props<TData extends Record<string, any>> {
|
|
17
18
|
virtualPaddingRight?: number;
|
18
19
|
}
|
19
20
|
|
20
|
-
export const MRT_TableFooterRow = <TData extends
|
21
|
+
export const MRT_TableFooterRow = <TData extends MRT_RowData>({
|
21
22
|
footerGroup,
|
22
23
|
table,
|
23
24
|
virtualColumns,
|
24
25
|
virtualPaddingLeft,
|
25
26
|
virtualPaddingRight,
|
27
|
+
...rest
|
26
28
|
}: Props<TData>) => {
|
27
29
|
const {
|
28
30
|
options: { layoutMode, muiTableFooterRowProps },
|
@@ -39,16 +41,19 @@ export const MRT_TableFooterRow = <TData extends Record<string, any>>({
|
|
39
41
|
)
|
40
42
|
return null;
|
41
43
|
|
42
|
-
const tableRowProps =
|
43
|
-
|
44
|
-
|
45
|
-
|
44
|
+
const tableRowProps = {
|
45
|
+
...parseFromValuesOrFunc(muiTableFooterRowProps, {
|
46
|
+
footerGroup,
|
47
|
+
table,
|
48
|
+
}),
|
49
|
+
...rest,
|
50
|
+
};
|
46
51
|
|
47
52
|
return (
|
48
53
|
<TableRow
|
49
54
|
{...tableRowProps}
|
50
55
|
sx={(theme) => ({
|
51
|
-
backgroundColor:
|
56
|
+
backgroundColor: getMRTTheme(table, theme).baseBackgroundColor,
|
52
57
|
display: layoutMode?.startsWith('grid') ? 'flex' : undefined,
|
53
58
|
width: '100%',
|
54
59
|
...(parseFromValuesOrFunc(tableRowProps?.sx, theme) as any),
|
@@ -1,22 +1,23 @@
|
|
1
1
|
import { type VirtualItem } from '@tanstack/react-virtual';
|
2
|
-
import TableHead from '@mui/material/TableHead';
|
2
|
+
import TableHead, { type TableHeadProps } from '@mui/material/TableHead';
|
3
3
|
import { MRT_TableHeadRow } from './MRT_TableHeadRow';
|
4
4
|
import { parseFromValuesOrFunc } from '../column.utils';
|
5
5
|
import { MRT_ToolbarAlertBanner } from '../toolbar';
|
6
|
-
import { type MRT_TableInstance } from '../types';
|
6
|
+
import { type MRT_RowData, type MRT_TableInstance } from '../types';
|
7
7
|
|
8
|
-
interface Props<TData extends
|
8
|
+
interface Props<TData extends MRT_RowData> extends TableHeadProps {
|
9
9
|
table: MRT_TableInstance<TData>;
|
10
10
|
virtualColumns?: VirtualItem[];
|
11
11
|
virtualPaddingLeft?: number;
|
12
12
|
virtualPaddingRight?: number;
|
13
13
|
}
|
14
14
|
|
15
|
-
export const MRT_TableHead = <TData extends
|
15
|
+
export const MRT_TableHead = <TData extends MRT_RowData>({
|
16
16
|
table,
|
17
17
|
virtualColumns,
|
18
18
|
virtualPaddingLeft,
|
19
19
|
virtualPaddingRight,
|
20
|
+
...rest
|
20
21
|
}: Props<TData>) => {
|
21
22
|
const {
|
22
23
|
getHeaderGroups,
|
@@ -32,7 +33,10 @@ export const MRT_TableHead = <TData extends Record<string, any>>({
|
|
32
33
|
} = table;
|
33
34
|
const { isFullScreen, showAlertBanner } = getState();
|
34
35
|
|
35
|
-
const tableHeadProps =
|
36
|
+
const tableHeadProps = {
|
37
|
+
...parseFromValuesOrFunc(muiTableHeadProps, { table }),
|
38
|
+
...rest,
|
39
|
+
};
|
36
40
|
|
37
41
|
const stickyHeader = enableStickyHeader || isFullScreen;
|
38
42
|
|
@@ -65,7 +69,7 @@ export const MRT_TableHead = <TData extends Record<string, any>>({
|
|
65
69
|
<th
|
66
70
|
colSpan={table.getVisibleLeafColumns().length}
|
67
71
|
style={{
|
68
|
-
display: layoutMode?.startsWith('grid') ? 'grid' :
|
72
|
+
display: layoutMode?.startsWith('grid') ? 'grid' : undefined,
|
69
73
|
padding: 0,
|
70
74
|
}}
|
71
75
|
>
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import { type DragEvent, useMemo } from 'react';
|
2
2
|
import Box from '@mui/material/Box';
|
3
|
-
import TableCell from '@mui/material/TableCell';
|
3
|
+
import TableCell, { type TableCellProps } from '@mui/material/TableCell';
|
4
4
|
import { useTheme } from '@mui/material/styles';
|
5
5
|
import { type Theme } from '@mui/material/styles';
|
6
6
|
import { MRT_TableHeadCellColumnActionsButton } from './MRT_TableHeadCellColumnActionsButton';
|
@@ -9,18 +9,23 @@ import { MRT_TableHeadCellFilterLabel } from './MRT_TableHeadCellFilterLabel';
|
|
9
9
|
import { MRT_TableHeadCellGrabHandle } from './MRT_TableHeadCellGrabHandle';
|
10
10
|
import { MRT_TableHeadCellResizeHandle } from './MRT_TableHeadCellResizeHandle';
|
11
11
|
import { MRT_TableHeadCellSortLabel } from './MRT_TableHeadCellSortLabel';
|
12
|
-
import { getCommonCellStyles } from '../column.utils';
|
13
12
|
import { parseFromValuesOrFunc } from '../column.utils';
|
14
|
-
import {
|
13
|
+
import { getCommonMRTCellStyles, getMRTTheme } from '../style.utils';
|
14
|
+
import {
|
15
|
+
type MRT_Header,
|
16
|
+
type MRT_RowData,
|
17
|
+
type MRT_TableInstance,
|
18
|
+
} from '../types';
|
15
19
|
|
16
|
-
interface Props<TData extends
|
20
|
+
interface Props<TData extends MRT_RowData> extends TableCellProps {
|
17
21
|
header: MRT_Header<TData>;
|
18
22
|
table: MRT_TableInstance<TData>;
|
19
23
|
}
|
20
24
|
|
21
|
-
export const MRT_TableHeadCell = <TData extends
|
25
|
+
export const MRT_TableHeadCell = <TData extends MRT_RowData>({
|
22
26
|
header,
|
23
27
|
table,
|
28
|
+
...rest
|
24
29
|
}: Props<TData>) => {
|
25
30
|
const theme = useTheme();
|
26
31
|
const {
|
@@ -56,8 +61,11 @@ export const MRT_TableHeadCell = <TData extends Record<string, any>>({
|
|
56
61
|
column,
|
57
62
|
table,
|
58
63
|
}),
|
64
|
+
...rest,
|
59
65
|
};
|
60
66
|
|
67
|
+
const { draggingBorderColor } = getMRTTheme(table, theme);
|
68
|
+
|
61
69
|
const showColumnActions =
|
62
70
|
(enableColumnActions || columnDef.enableColumnActions) &&
|
63
71
|
columnDef.enableColumnActions !== false;
|
@@ -83,11 +91,11 @@ export const MRT_TableHeadCell = <TData extends Record<string, any>>({
|
|
83
91
|
const borderStyle =
|
84
92
|
columnSizingInfo.isResizingColumn === column.id &&
|
85
93
|
!header.subHeaders.length
|
86
|
-
? `2px solid ${
|
94
|
+
? `2px solid ${draggingBorderColor} !important`
|
87
95
|
: draggingColumn?.id === column.id
|
88
|
-
? `1px dashed ${theme.palette.
|
96
|
+
? `1px dashed ${theme.palette.grey[500]}`
|
89
97
|
: hoveredColumn?.id === column.id
|
90
|
-
? `2px dashed ${
|
98
|
+
? `2px dashed ${draggingBorderColor}`
|
91
99
|
: undefined;
|
92
100
|
|
93
101
|
if (columnSizingInfo.isResizingColumn === column.id) {
|
@@ -172,7 +180,7 @@ export const MRT_TableHeadCell = <TData extends Record<string, any>>({
|
|
172
180
|
: column.getIsPinned() && columnDefType !== 'group'
|
173
181
|
? 2
|
174
182
|
: 1,
|
175
|
-
...
|
183
|
+
...getCommonMRTCellStyles({
|
176
184
|
column,
|
177
185
|
header,
|
178
186
|
table,
|
@@ -182,97 +190,100 @@ export const MRT_TableHeadCell = <TData extends Record<string, any>>({
|
|
182
190
|
...draggingBorders,
|
183
191
|
})}
|
184
192
|
>
|
185
|
-
{header.isPlaceholder
|
186
|
-
|
187
|
-
|
188
|
-
sx={{
|
189
|
-
alignItems: 'center',
|
190
|
-
display: 'flex',
|
191
|
-
flexDirection:
|
192
|
-
tableCellProps?.align === 'right' ? 'row-reverse' : 'row',
|
193
|
-
justifyContent:
|
194
|
-
columnDefType === 'group' || tableCellProps?.align === 'center'
|
195
|
-
? 'center'
|
196
|
-
: column.getCanResize()
|
197
|
-
? 'space-between'
|
198
|
-
: 'flex-start',
|
199
|
-
position: 'relative',
|
200
|
-
width: '100%',
|
201
|
-
}}
|
202
|
-
>
|
203
|
-
<Box
|
204
|
-
className="Mui-TableHeadCell-Content-Labels"
|
205
|
-
onClick={column.getToggleSortingHandler()}
|
206
|
-
sx={{
|
207
|
-
alignItems: 'center',
|
208
|
-
cursor:
|
209
|
-
column.getCanSort() && columnDefType !== 'group'
|
210
|
-
? 'pointer'
|
211
|
-
: undefined,
|
212
|
-
display: 'flex',
|
213
|
-
flexDirection:
|
214
|
-
tableCellProps?.align === 'right' ? 'row-reverse' : 'row',
|
215
|
-
overflow: columnDefType === 'data' ? 'hidden' : undefined,
|
216
|
-
pl:
|
217
|
-
tableCellProps?.align === 'center'
|
218
|
-
? `${headerPL}rem`
|
219
|
-
: undefined,
|
220
|
-
}}
|
221
|
-
>
|
193
|
+
{header.isPlaceholder
|
194
|
+
? null
|
195
|
+
: tableCellProps.children ?? (
|
222
196
|
<Box
|
223
|
-
className="Mui-TableHeadCell-Content
|
197
|
+
className="Mui-TableHeadCell-Content"
|
224
198
|
sx={{
|
225
|
-
'
|
226
|
-
|
227
|
-
|
228
|
-
|
229
|
-
|
230
|
-
|
231
|
-
|
232
|
-
|
199
|
+
alignItems: 'center',
|
200
|
+
display: 'flex',
|
201
|
+
flexDirection:
|
202
|
+
tableCellProps?.align === 'right' ? 'row-reverse' : 'row',
|
203
|
+
justifyContent:
|
204
|
+
columnDefType === 'group' ||
|
205
|
+
tableCellProps?.align === 'center'
|
206
|
+
? 'center'
|
207
|
+
: column.getCanResize()
|
208
|
+
? 'space-between'
|
209
|
+
: 'flex-start',
|
210
|
+
position: 'relative',
|
211
|
+
width: '100%',
|
233
212
|
}}
|
234
|
-
title={columnDefType === 'data' ? columnDef.header : undefined}
|
235
|
-
>
|
236
|
-
{headerElement}
|
237
|
-
</Box>
|
238
|
-
{column.getCanFilter() && (
|
239
|
-
<MRT_TableHeadCellFilterLabel header={header} table={table} />
|
240
|
-
)}
|
241
|
-
{column.getCanSort() && (
|
242
|
-
<MRT_TableHeadCellSortLabel
|
243
|
-
header={header}
|
244
|
-
table={table}
|
245
|
-
tableCellProps={tableCellProps}
|
246
|
-
/>
|
247
|
-
)}
|
248
|
-
</Box>
|
249
|
-
{columnDefType !== 'group' && (
|
250
|
-
<Box
|
251
|
-
className="Mui-TableHeadCell-Content-Actions"
|
252
|
-
sx={{ whiteSpace: 'nowrap' }}
|
253
213
|
>
|
254
|
-
|
255
|
-
|
256
|
-
|
257
|
-
|
258
|
-
|
259
|
-
|
214
|
+
<Box
|
215
|
+
className="Mui-TableHeadCell-Content-Labels"
|
216
|
+
onClick={column.getToggleSortingHandler()}
|
217
|
+
sx={{
|
218
|
+
alignItems: 'center',
|
219
|
+
cursor:
|
220
|
+
column.getCanSort() && columnDefType !== 'group'
|
221
|
+
? 'pointer'
|
222
|
+
: undefined,
|
223
|
+
display: 'flex',
|
224
|
+
flexDirection:
|
225
|
+
tableCellProps?.align === 'right' ? 'row-reverse' : 'row',
|
226
|
+
overflow: columnDefType === 'data' ? 'hidden' : undefined,
|
227
|
+
pl:
|
228
|
+
tableCellProps?.align === 'center'
|
229
|
+
? `${headerPL}rem`
|
230
|
+
: undefined,
|
231
|
+
}}
|
232
|
+
>
|
233
|
+
<Box
|
234
|
+
className="Mui-TableHeadCell-Content-Wrapper"
|
235
|
+
sx={{
|
236
|
+
'&:hover': {
|
237
|
+
textOverflow: 'clip',
|
238
|
+
},
|
239
|
+
minWidth: `${Math.min(columnDef.header?.length ?? 0, 4)}ch`,
|
240
|
+
overflow: columnDefType === 'data' ? 'hidden' : undefined,
|
241
|
+
textOverflow: 'ellipsis',
|
242
|
+
whiteSpace:
|
243
|
+
(columnDef.header?.length ?? 0) < 20
|
244
|
+
? 'nowrap'
|
245
|
+
: 'normal',
|
260
246
|
}}
|
261
|
-
|
247
|
+
title={
|
248
|
+
columnDefType === 'data' ? columnDef.header : undefined
|
249
|
+
}
|
250
|
+
>
|
251
|
+
{headerElement}
|
252
|
+
</Box>
|
253
|
+
{column.getCanFilter() && (
|
254
|
+
<MRT_TableHeadCellFilterLabel header={header} table={table} />
|
255
|
+
)}
|
256
|
+
{column.getCanSort() && (
|
257
|
+
<MRT_TableHeadCellSortLabel header={header} table={table} />
|
258
|
+
)}
|
259
|
+
</Box>
|
260
|
+
{columnDefType !== 'group' && (
|
261
|
+
<Box
|
262
|
+
className="Mui-TableHeadCell-Content-Actions"
|
263
|
+
sx={{ whiteSpace: 'nowrap' }}
|
264
|
+
>
|
265
|
+
{showDragHandle && (
|
266
|
+
<MRT_TableHeadCellGrabHandle
|
267
|
+
column={column}
|
268
|
+
table={table}
|
269
|
+
tableHeadCellRef={{
|
270
|
+
current: tableHeadCellRefs.current[column.id],
|
271
|
+
}}
|
272
|
+
/>
|
273
|
+
)}
|
274
|
+
{showColumnActions && (
|
275
|
+
<MRT_TableHeadCellColumnActionsButton
|
276
|
+
header={header}
|
277
|
+
table={table}
|
278
|
+
/>
|
279
|
+
)}
|
280
|
+
</Box>
|
262
281
|
)}
|
263
|
-
{
|
264
|
-
<
|
265
|
-
header={header}
|
266
|
-
table={table}
|
267
|
-
/>
|
282
|
+
{column.getCanResize() && (
|
283
|
+
<MRT_TableHeadCellResizeHandle header={header} table={table} />
|
268
284
|
)}
|
269
285
|
</Box>
|
270
286
|
)}
|
271
|
-
{column.getCanResize() && (
|
272
|
-
<MRT_TableHeadCellResizeHandle header={header} table={table} />
|
273
|
-
)}
|
274
|
-
</Box>
|
275
|
-
)}
|
276
287
|
{columnFilterDisplayMode === 'subheader' && column.getCanFilter() && (
|
277
288
|
<MRT_TableHeadCellFilterContainer header={header} table={table} />
|
278
289
|
)}
|
@@ -1,24 +1,28 @@
|
|
1
1
|
import { type MouseEvent, useState } from 'react';
|
2
|
-
import IconButton from '@mui/material/IconButton';
|
2
|
+
import IconButton, { type IconButtonProps } from '@mui/material/IconButton';
|
3
3
|
import Tooltip from '@mui/material/Tooltip';
|
4
4
|
import { parseFromValuesOrFunc } from '../column.utils';
|
5
5
|
import { MRT_ColumnActionMenu } from '../menus/MRT_ColumnActionMenu';
|
6
|
-
import {
|
6
|
+
import {
|
7
|
+
type MRT_Header,
|
8
|
+
type MRT_RowData,
|
9
|
+
type MRT_TableInstance,
|
10
|
+
} from '../types';
|
7
11
|
|
8
|
-
interface Props<TData extends
|
12
|
+
interface Props<TData extends MRT_RowData> extends IconButtonProps {
|
9
13
|
header: MRT_Header<TData>;
|
10
14
|
table: MRT_TableInstance<TData>;
|
11
15
|
}
|
12
16
|
|
13
17
|
export const MRT_TableHeadCellColumnActionsButton = <
|
14
|
-
TData extends
|
18
|
+
TData extends MRT_RowData,
|
15
19
|
>({
|
16
20
|
header,
|
17
21
|
table,
|
22
|
+
...rest
|
18
23
|
}: Props<TData>) => {
|
19
24
|
const {
|
20
25
|
options: {
|
21
|
-
columnFilterDisplayMode,
|
22
26
|
icons: { MoreVertIcon },
|
23
27
|
localization,
|
24
28
|
muiColumnActionsButtonProps,
|
@@ -44,12 +48,12 @@ export const MRT_TableHeadCellColumnActionsButton = <
|
|
44
48
|
column,
|
45
49
|
table,
|
46
50
|
}),
|
51
|
+
...rest,
|
47
52
|
};
|
48
53
|
|
49
54
|
return (
|
50
55
|
<>
|
51
56
|
<Tooltip
|
52
|
-
arrow
|
53
57
|
enterDelay={1000}
|
54
58
|
enterNextDelay={1000}
|
55
59
|
placement="top"
|
@@ -65,18 +69,15 @@ export const MRT_TableHeadCellColumnActionsButton = <
|
|
65
69
|
opacity: 1,
|
66
70
|
},
|
67
71
|
height: '2rem',
|
68
|
-
m: '-4px',
|
72
|
+
m: '-8px -4px',
|
69
73
|
opacity: 0.3,
|
70
|
-
|
71
|
-
columnFilterDisplayMode !== 'popover' ? 'translateX(-4px)' : ''
|
72
|
-
}`,
|
73
|
-
transition: 'opacity 150ms',
|
74
|
+
transition: 'all 150ms',
|
74
75
|
width: '2rem',
|
75
76
|
...(parseFromValuesOrFunc(iconButtonProps?.sx, theme) as any),
|
76
77
|
})}
|
77
78
|
title={undefined}
|
78
79
|
>
|
79
|
-
<MoreVertIcon />
|
80
|
+
<MoreVertIcon style={{ transform: 'scale(0.9)' }} />
|
80
81
|
</IconButton>
|
81
82
|
</Tooltip>
|
82
83
|
{anchorEl && (
|