Skip to content

Commit 9de1ba7

Browse files
authored
Merge pull request #785 from icflorescu/next
Release 8.3.10
2 parents 14560c2 + bb18de6 commit 9de1ba7

File tree

7 files changed

+1513
-2214
lines changed

7 files changed

+1513
-2214
lines changed

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,11 @@
33
The following is a list of notable changes to the Mantine DataTable component.
44
Minor versions that are not listed in the changelog are bug fixes and small improvements.
55

6+
## 8.3.10 (2025-12-15)
7+
8+
- Fix [#784](https://github.com/icflorescu/mantine-datatable/issues/784) - pagination still producing **some** output when recordsLength is 0
9+
- Update deps to ensure compatibility with Mantine 8.3.10
10+
611
## 8.3.9 (2025-12-05)
712

813
- Implement comprehensive RTL support, thanks to [Reem Assaf](https://github.com/ReemX) (see [PR #781](https://github.com/icflorescu/mantine-datatable/pull/781/))
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
.buttonSectionRtl {
2+
margin-left: var(--mantine-spacing-xs);
3+
margin-right: 0;
4+
}

app/examples/rtl-support/RTLSupportExample.tsx

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,10 @@
33
import { ActionIcon, Box, Button, DirectionProvider, Group, SegmentedControl, Stack, Text } from '@mantine/core';
44
import { IconColumns3, IconEdit, IconEye, IconTrash } from '@tabler/icons-react';
55
import { DataTable, useDataTableColumns, type DataTableSortStatus } from '__PACKAGE__';
6+
import clsx from 'clsx';
67
import { useMemo, useState } from 'react';
78
import { companies, employees, type Employee } from '~/data';
9+
import classes from './RTLSupportExample.module.css';
810

911
// Example 1: Basic table without pinned columns
1012
export function RTLBasicExample({ direction }: { direction: 'ltr' | 'rtl' }) {
@@ -46,7 +48,13 @@ export function RTLDraggingExample({ direction }: { direction: 'ltr' | 'rtl' })
4648
<Box dir={direction}>
4749
<Stack gap="xs">
4850
<Group gap="xs">
49-
<Button size="xs" variant="light" leftSection={<IconColumns3 size={16} />} onClick={resetColumnsOrder}>
51+
<Button
52+
classNames={{ section: clsx({ [classes.buttonSectionRtl]: direction === 'rtl' }) }}
53+
size="xs"
54+
variant="light"
55+
leftSection={<IconColumns3 size={16} />}
56+
onClick={resetColumnsOrder}
57+
>
5058
Reset order
5159
</Button>
5260
</Group>

app/examples/rtl-support/page.tsx

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,19 @@ import { PageNavigation } from '~/components/PageNavigation';
77
import { PageTitle } from '~/components/PageTitle';
88
import { Txt } from '~/components/Txt';
99
import { readCodeFile } from '~/lib/code';
10-
import { getRouteMetadata } from '~/lib/utils';
10+
import { allPromiseProps, getRouteMetadata } from '~/lib/utils';
1111
import { RTLSupportExample } from './RTLSupportExample';
1212

1313
const PATH: Route = '/examples/rtl-support';
1414

1515
export const metadata = getRouteMetadata(PATH);
1616

1717
export default async function RTLSupportExamplePage() {
18-
const code = await readCodeFile<string>(`${PATH}/RTLSupportExample.tsx`);
18+
// const code = await readCodeFile<string>(`${PATH}/RTLSupportExample.tsx`);
19+
const code = await allPromiseProps({
20+
'RTLSupportExample.tsx': readCodeFile<string>(`${PATH}/RTLSupportExample.tsx`),
21+
'RTLSupportExample.module.css': readCodeFile<string>(`${PATH}/RTLSupportExample.module.css`),
22+
});
1923

2024
return (
2125
<>
@@ -35,7 +39,7 @@ export default async function RTLSupportExamplePage() {
3539
</Txt>
3640
<RTLSupportExample />
3741
<Txt>Here is the code:</Txt>
38-
<CodeBlock code={code} />
42+
<CodeBlock tabs={{ code, keys: ['RTLSupportExample.tsx', 'RTLSupportExample.module.css'] }} />
3943
<Txt>Head over to the next example to discover more features.</Txt>
4044
<PageNavigation of={PATH} />
4145
</>

package.json

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "mantine-datatable",
3-
"version": "8.3.9",
3+
"version": "8.3.10",
44
"description": "The lightweight, dependency-free, dark-theme aware table component for your Mantine UI data-rich applications, featuring asynchronous data loading support, pagination, intuitive Gmail-style additive batch rows selection, column sorting, custom cell data rendering, row expansion, nesting, context menus, and much more",
55
"keywords": [
66
"mantine",
@@ -77,41 +77,41 @@
7777
"@faker-js/faker": "^10.1.0",
7878
"@formkit/auto-animate": "^0.9.0",
7979
"@hello-pangea/dnd": "^18.0.1",
80-
"@mantine/code-highlight": "^8.3.9",
81-
"@mantine/core": "^8.3.9",
82-
"@mantine/dates": "^8.3.9",
83-
"@mantine/hooks": "^8.3.9",
84-
"@mantine/modals": "^8.3.9",
85-
"@mantine/notifications": "^8.3.9",
86-
"@next/eslint-plugin-next": "^15.5.7",
87-
"@tabler/icons-react": "^3.35.0",
80+
"@mantine/code-highlight": "^8.3.10",
81+
"@mantine/core": "^8.3.10",
82+
"@mantine/dates": "^8.3.10",
83+
"@mantine/hooks": "^8.3.10",
84+
"@mantine/modals": "^8.3.10",
85+
"@mantine/notifications": "^8.3.10",
86+
"@next/eslint-plugin-next": "^15.5.9",
87+
"@tabler/icons-react": "^3.36.0",
8888
"@tanstack/react-query": "^5.90.12",
8989
"@types/lodash": "^4.17.21",
90-
"@types/node": "^24.10.1",
90+
"@types/node": "^25.0.2",
9191
"@types/react": "^19.2.7",
9292
"@types/react-dom": "^19.2.3",
93-
"@typescript-eslint/eslint-plugin": "^8.48.1",
94-
"@typescript-eslint/parser": "^8.48.1",
93+
"@typescript-eslint/eslint-plugin": "^8.49.0",
94+
"@typescript-eslint/parser": "^8.49.0",
9595
"clsx": "^2.1.1",
9696
"cssnano": "^7.1.2",
9797
"dayjs": "^1.11.19",
98-
"eslint": "^9.39.1",
99-
"eslint-config-next": "^15.5.7",
98+
"eslint": "^9.39.2",
99+
"eslint-config-next": "^15.5.9",
100100
"eslint-config-prettier": "^10.1.8",
101101
"eslint-plugin-react-hooks": "^7.0.1",
102102
"lodash": "^4.17.21",
103103
"mantine-contextmenu": "^8.3.11",
104-
"next": "^15.5.7",
104+
"next": "^15.5.9",
105105
"postcss": "^8.5.6",
106106
"postcss-cli": "^11.0.1",
107107
"postcss-import": "^16.1.1",
108108
"postcss-preset-mantine": "^1.18.0",
109109
"postcss-simple-vars": "^7.0.1",
110110
"prettier": "^3.7.4",
111-
"react": "^19.2.1",
112-
"react-dom": "^19.2.1",
111+
"react": "^19.2.3",
112+
"react-dom": "^19.2.3",
113113
"sharp": "^0.34.5",
114-
"shiki": "^3.19.0",
114+
"shiki": "^3.20.0",
115115
"swr": "^2.3.7",
116116
"tsup": "^8.5.1",
117117
"typescript": "^5.9.3"

package/DataTable.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -434,7 +434,7 @@ export function DataTable<T>({
434434
</Table>
435435
</TableWrapper>
436436
</DataTableScrollArea>
437-
{page && (
437+
{page && recordsLength && (
438438
<DataTablePagination
439439
className={classNames?.pagination}
440440
style={styles?.pagination}

0 commit comments

Comments
 (0)