From 0aa372d5492211ca9d6e70b0b4dd67c04081043c Mon Sep 17 00:00:00 2001 From: Ionut-Cristian Florescu Date: Tue, 7 Nov 2023 18:14:26 +0200 Subject: [PATCH 1/4] Update dev deps --- docs/package.json | 2 +- package.json | 4 +- yarn.lock | 132 +++++++++++++++++++++++----------------------- 3 files changed, 69 insertions(+), 69 deletions(-) diff --git a/docs/package.json b/docs/package.json index b1ea8ed..7fc571a 100644 --- a/docs/package.json +++ b/docs/package.json @@ -14,7 +14,7 @@ "@emotion/react": "^11.11.1", "@emotion/server": "^11.11.0", "@faker-js/faker": "^8.2.0", - "@formkit/auto-animate": "^0.8.0", + "@formkit/auto-animate": "^0.8.1", "@mantine/core": "^6.0.21", "@mantine/dates": "^6.0.21", "@mantine/hooks": "^6.0.21", diff --git a/package.json b/package.json index 5b44ada..5268ddf 100644 --- a/package.json +++ b/package.json @@ -27,8 +27,8 @@ "@testing-library/react-hooks": "^8.0.1", "@testing-library/user-event": "^14.5.1", "@types/jest": "^29.5.7", - "@typescript-eslint/eslint-plugin": "^6.9.1", - "@typescript-eslint/parser": "^6.9.1", + "@typescript-eslint/eslint-plugin": "^6.10.0", + "@typescript-eslint/parser": "^6.10.0", "babel-jest": "^29.7.0", "eslint": "^8.53.0", "eslint-config-next": "^14.0.1", diff --git a/yarn.lock b/yarn.lock index 80726fa..9c3899e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1580,10 +1580,10 @@ resolved "https://registry.yarnpkg.com/@floating-ui/utils/-/utils-0.1.1.tgz#1a5b1959a528e374e8037c4396c3e825d6cf4a83" integrity sha512-m0G6wlnhm/AX0H12IOWtK8gASEMffnX08RtKkCgTdHb9JpHKGloI7icFfLg9ZmQeavcvR0PKmzxClyuFPSjKWw== -"@formkit/auto-animate@^0.8.0": - version "0.8.0" - resolved "https://registry.yarnpkg.com/@formkit/auto-animate/-/auto-animate-0.8.0.tgz#da55124e665573ef3c5ace1099f1f1702a5cec87" - integrity sha512-G8f7489ka0mWyi+1IEZT+xgIwcpWtRMmE2x+IrVoQ+KM1cP6VDj/TbujZjwxdb0P8w8b16/qBfViRmydbYHwMw== +"@formkit/auto-animate@^0.8.1": + version "0.8.1" + resolved "https://registry.yarnpkg.com/@formkit/auto-animate/-/auto-animate-0.8.1.tgz#bcaba2969609ca3a7453eacd42b383a2739dfa35" + integrity sha512-0/Z2cuNXWVVIG/l0SpcHAWFhGdvLJ8DRvEfRWvmojtmRWfEy+LWNwgDazbZqY0qQYtkHcoEK3jBLkhiZaB/4Ig== "@humanwhocodes/config-array@^0.11.13": version "0.11.13" @@ -2519,16 +2519,16 @@ dependencies: "@types/yargs-parser" "*" -"@typescript-eslint/eslint-plugin@^6.9.1": - version "6.9.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.9.1.tgz#d8ce497dc0ed42066e195c8ecc40d45c7b1254f4" - integrity sha512-w0tiiRc9I4S5XSXXrMHOWgHgxbrBn1Ro+PmiYhSg2ZVdxrAJtQgzU5o2m1BfP6UOn7Vxcc6152vFjQfmZR4xEg== +"@typescript-eslint/eslint-plugin@^6.10.0": + version "6.10.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.10.0.tgz#cfe2bd34e26d2289212946b96ab19dcad64b661a" + integrity sha512-uoLj4g2OTL8rfUQVx2AFO1hp/zja1wABJq77P6IclQs6I/m9GLrm7jCdgzZkvWdDCQf1uEvoa8s8CupsgWQgVg== dependencies: "@eslint-community/regexpp" "^4.5.1" - "@typescript-eslint/scope-manager" "6.9.1" - "@typescript-eslint/type-utils" "6.9.1" - "@typescript-eslint/utils" "6.9.1" - "@typescript-eslint/visitor-keys" "6.9.1" + "@typescript-eslint/scope-manager" "6.10.0" + "@typescript-eslint/type-utils" "6.10.0" + "@typescript-eslint/utils" "6.10.0" + "@typescript-eslint/visitor-keys" "6.10.0" debug "^4.3.4" graphemer "^1.4.0" ignore "^5.2.4" @@ -2547,17 +2547,25 @@ "@typescript-eslint/visitor-keys" "6.3.0" debug "^4.3.4" -"@typescript-eslint/parser@^6.9.1": - version "6.9.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-6.9.1.tgz#4f685f672f8b9580beb38d5fb99d52fc3e34f7a3" - integrity sha512-C7AK2wn43GSaCUZ9do6Ksgi2g3mwFkMO3Cis96kzmgudoVaKyt62yNzJOktP0HDLb/iO2O0n2lBOzJgr6Q/cyg== +"@typescript-eslint/parser@^6.10.0": + version "6.10.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-6.10.0.tgz#578af79ae7273193b0b6b61a742a2bc8e02f875a" + integrity sha512-+sZwIj+s+io9ozSxIWbNB5873OSdfeBEH/FR0re14WLI6BaKuSOnnwCJ2foUiu8uXf4dRp1UqHP0vrZ1zXGrog== dependencies: - "@typescript-eslint/scope-manager" "6.9.1" - "@typescript-eslint/types" "6.9.1" - "@typescript-eslint/typescript-estree" "6.9.1" - "@typescript-eslint/visitor-keys" "6.9.1" + "@typescript-eslint/scope-manager" "6.10.0" + "@typescript-eslint/types" "6.10.0" + "@typescript-eslint/typescript-estree" "6.10.0" + "@typescript-eslint/visitor-keys" "6.10.0" debug "^4.3.4" +"@typescript-eslint/scope-manager@6.10.0": + version "6.10.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-6.10.0.tgz#b0276118b13d16f72809e3cecc86a72c93708540" + integrity sha512-TN/plV7dzqqC2iPNf1KrxozDgZs53Gfgg5ZHyw8erd6jd5Ta/JIEcdCheXFt9b1NYb93a1wmIIVW/2gLkombDg== + dependencies: + "@typescript-eslint/types" "6.10.0" + "@typescript-eslint/visitor-keys" "6.10.0" + "@typescript-eslint/scope-manager@6.3.0": version "6.3.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-6.3.0.tgz#6b74e338c4b88d5e1dfc1a28c570dd5cf8c86b09" @@ -2566,73 +2574,73 @@ "@typescript-eslint/types" "6.3.0" "@typescript-eslint/visitor-keys" "6.3.0" -"@typescript-eslint/scope-manager@6.9.1": - version "6.9.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-6.9.1.tgz#e96afeb9a68ad1cd816dba233351f61e13956b75" - integrity sha512-38IxvKB6NAne3g/+MyXMs2Cda/Sz+CEpmm+KLGEM8hx/CvnSRuw51i8ukfwB/B/sESdeTGet1NH1Wj7I0YXswg== +"@typescript-eslint/type-utils@6.10.0": + version "6.10.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-6.10.0.tgz#1007faede067c78bdbcef2e8abb31437e163e2e1" + integrity sha512-wYpPs3hgTFblMYwbYWPT3eZtaDOjbLyIYuqpwuLBBqhLiuvJ+9sEp2gNRJEtR5N/c9G1uTtQQL5AhV0fEPJYcg== dependencies: - "@typescript-eslint/types" "6.9.1" - "@typescript-eslint/visitor-keys" "6.9.1" - -"@typescript-eslint/type-utils@6.9.1": - version "6.9.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-6.9.1.tgz#efd5db20ed35a74d3c7d8fba51b830ecba09ce32" - integrity sha512-eh2oHaUKCK58qIeYp19F5V5TbpM52680sB4zNSz29VBQPTWIlE/hCj5P5B1AChxECe/fmZlspAWFuRniep1Skg== - dependencies: - "@typescript-eslint/typescript-estree" "6.9.1" - "@typescript-eslint/utils" "6.9.1" + "@typescript-eslint/typescript-estree" "6.10.0" + "@typescript-eslint/utils" "6.10.0" debug "^4.3.4" ts-api-utils "^1.0.1" +"@typescript-eslint/types@6.10.0": + version "6.10.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-6.10.0.tgz#f4f0a84aeb2ac546f21a66c6e0da92420e921367" + integrity sha512-36Fq1PWh9dusgo3vH7qmQAj5/AZqARky1Wi6WpINxB6SkQdY5vQoT2/7rW7uBIsPDcvvGCLi4r10p0OJ7ITAeg== + "@typescript-eslint/types@6.3.0": version "6.3.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-6.3.0.tgz#84517f1427923e714b8418981e493b6635ab4c9d" integrity sha512-K6TZOvfVyc7MO9j60MkRNWyFSf86IbOatTKGrpTQnzarDZPYPVy0oe3myTMq7VjhfsUAbNUW8I5s+2lZvtx1gg== -"@typescript-eslint/types@6.9.1": - version "6.9.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-6.9.1.tgz#a6cfc20db0fcedcb2f397ea728ef583e0ee72459" - integrity sha512-BUGslGOb14zUHOUmDB2FfT6SI1CcZEJYfF3qFwBeUrU6srJfzANonwRYHDpLBuzbq3HaoF2XL2hcr01c8f8OaQ== - -"@typescript-eslint/typescript-estree@6.3.0": - version "6.3.0" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-6.3.0.tgz#20e1e10e2f51cdb9e19a2751215cac92c003643c" - integrity sha512-Xh4NVDaC4eYKY4O3QGPuQNp5NxBAlEvNQYOqJquR2MePNxO11E5K3t5x4M4Mx53IZvtpW+mBxIT0s274fLUocg== +"@typescript-eslint/typescript-estree@6.10.0": + version "6.10.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-6.10.0.tgz#667381eed6f723a1a8ad7590a31f312e31e07697" + integrity sha512-ek0Eyuy6P15LJVeghbWhSrBCj/vJpPXXR+EpaRZqou7achUWL8IdYnMSC5WHAeTWswYQuP2hAZgij/bC9fanBg== dependencies: - "@typescript-eslint/types" "6.3.0" - "@typescript-eslint/visitor-keys" "6.3.0" + "@typescript-eslint/types" "6.10.0" + "@typescript-eslint/visitor-keys" "6.10.0" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" semver "^7.5.4" ts-api-utils "^1.0.1" -"@typescript-eslint/typescript-estree@6.9.1": - version "6.9.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-6.9.1.tgz#8c77910a49a04f0607ba94d78772da07dab275ad" - integrity sha512-U+mUylTHfcqeO7mLWVQ5W/tMLXqVpRv61wm9ZtfE5egz7gtnmqVIw9ryh0mgIlkKk9rZLY3UHygsBSdB9/ftyw== +"@typescript-eslint/typescript-estree@6.3.0": + version "6.3.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-6.3.0.tgz#20e1e10e2f51cdb9e19a2751215cac92c003643c" + integrity sha512-Xh4NVDaC4eYKY4O3QGPuQNp5NxBAlEvNQYOqJquR2MePNxO11E5K3t5x4M4Mx53IZvtpW+mBxIT0s274fLUocg== dependencies: - "@typescript-eslint/types" "6.9.1" - "@typescript-eslint/visitor-keys" "6.9.1" + "@typescript-eslint/types" "6.3.0" + "@typescript-eslint/visitor-keys" "6.3.0" debug "^4.3.4" globby "^11.1.0" is-glob "^4.0.3" semver "^7.5.4" ts-api-utils "^1.0.1" -"@typescript-eslint/utils@6.9.1": - version "6.9.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-6.9.1.tgz#763da41281ef0d16974517b5f0d02d85897a1c1e" - integrity sha512-L1T0A5nFdQrMVunpZgzqPL6y2wVreSyHhKGZryS6jrEN7bD9NplVAyMryUhXsQ4TWLnZmxc2ekar/lSGIlprCA== +"@typescript-eslint/utils@6.10.0": + version "6.10.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-6.10.0.tgz#4d76062d94413c30e402c9b0df8c14aef8d77336" + integrity sha512-v+pJ1/RcVyRc0o4wAGux9x42RHmAjIGzPRo538Z8M1tVx6HOnoQBCX/NoadHQlZeC+QO2yr4nNSFWOoraZCAyg== dependencies: "@eslint-community/eslint-utils" "^4.4.0" "@types/json-schema" "^7.0.12" "@types/semver" "^7.5.0" - "@typescript-eslint/scope-manager" "6.9.1" - "@typescript-eslint/types" "6.9.1" - "@typescript-eslint/typescript-estree" "6.9.1" + "@typescript-eslint/scope-manager" "6.10.0" + "@typescript-eslint/types" "6.10.0" + "@typescript-eslint/typescript-estree" "6.10.0" semver "^7.5.4" +"@typescript-eslint/visitor-keys@6.10.0": + version "6.10.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-6.10.0.tgz#b9eaf855a1ac7e95633ae1073af43d451e8f84e3" + integrity sha512-xMGluxQIEtOM7bqFCo+rCMh5fqI+ZxV5RUUOa29iVPz1OgCZrtc7rFnz5cLUazlkPKYqX+75iuDq7m0HQ48nCg== + dependencies: + "@typescript-eslint/types" "6.10.0" + eslint-visitor-keys "^3.4.1" + "@typescript-eslint/visitor-keys@6.3.0": version "6.3.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-6.3.0.tgz#8d09aa3e389ae0971426124c155ac289afbe450a" @@ -2641,14 +2649,6 @@ "@typescript-eslint/types" "6.3.0" eslint-visitor-keys "^3.4.1" -"@typescript-eslint/visitor-keys@6.9.1": - version "6.9.1" - resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-6.9.1.tgz#6753a9225a0ba00459b15d6456b9c2780b66707d" - integrity sha512-MUaPUe/QRLEffARsmNfmpghuQkW436DvESW+h+M52w0coICHRfD6Np9/K6PdACwnrq1HmuLl+cSPZaJmeVPkSw== - dependencies: - "@typescript-eslint/types" "6.9.1" - eslint-visitor-keys "^3.4.1" - "@ungap/structured-clone@^1.2.0": version "1.2.0" resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406" From b50a57fd8db92451e39fb9c74d8d64d0f7067317 Mon Sep 17 00:00:00 2001 From: Ionut-Cristian Florescu Date: Tue, 7 Nov 2023 18:16:33 +0200 Subject: [PATCH 2/4] Docs: add InvenTree to package users --- docs/components/AppPartners.tsx | 5 +++++ docs/public/partners/inventree-dark.png | Bin 0 -> 6551 bytes docs/public/partners/inventree-light.png | Bin 0 -> 6491 bytes 3 files changed, 5 insertions(+) create mode 100644 docs/public/partners/inventree-dark.png create mode 100644 docs/public/partners/inventree-light.png diff --git a/docs/components/AppPartners.tsx b/docs/components/AppPartners.tsx index cded06a..142acda 100644 --- a/docs/components/AppPartners.tsx +++ b/docs/components/AppPartners.tsx @@ -21,6 +21,11 @@ const PARTNERS = [ logo: { base: 'markup', ext: 'png', themed: true, scale: 72 }, link: 'https://www.getmarkup.com', }, + { + name: 'InvenTree', + logo: { base: 'inventree', ext: 'png', themed: true, scale: 140, shift: 1 }, + link: 'https://inventree.org', + }, { name: 'BookieBase', logo: { base: 'bookiebase', ext: 'svg', themed: true, scale: 72, shift: 2 }, diff --git a/docs/public/partners/inventree-dark.png b/docs/public/partners/inventree-dark.png new file mode 100644 index 0000000000000000000000000000000000000000..d9a38099cf777b2c144eddc9e689e3fed33c612f GIT binary patch literal 6551 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 Y4!|8&H_I{f90fy3PEEF2+C1?80K4XZNB{r; literal 0 HcmV?d00001 diff --git a/docs/public/partners/inventree-light.png b/docs/public/partners/inventree-light.png new file mode 100644 index 0000000000000000000000000000000000000000..9236fbf6ce24821a91cc7aace730c9ff171e307e GIT binary patch literal 6491 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 Date: Tue, 7 Nov 2023 18:47:28 +0200 Subject: [PATCH 3/4] Backport pinning the last column feature --- docs/config.ts | 5 + docs/examples/PinLastColumnExample.tsx | 96 +++++++++++++++++++ .../examples/pinning-the-last-column.tsx | 49 ++++++++++ package/DataTable.tsx | 42 +++++++- package/types/DataTableProps.ts | 5 + 5 files changed, 195 insertions(+), 2 deletions(-) create mode 100644 docs/examples/PinLastColumnExample.tsx create mode 100644 docs/pages/examples/pinning-the-last-column.tsx diff --git a/docs/config.ts b/docs/config.ts index 10e92de..4f098be 100644 --- a/docs/config.ts +++ b/docs/config.ts @@ -181,6 +181,11 @@ export const PAGES: ({ external?: true; title: string; color?: MantineColor; des title: 'Row actions cell', description: 'Example: how to implement a row actions cell on Mantine DataTable', }, + { + path: 'pinning-the-last-column', + title: 'Pinning the last column', + description: 'Example: how to pin the last column on Mantine DataTable', + }, { path: 'links-or-buttons-inside-clickable-rows-or-cells', title: 'Links or buttons inside clickable rows/cells', diff --git a/docs/examples/PinLastColumnExample.tsx b/docs/examples/PinLastColumnExample.tsx new file mode 100644 index 0000000..3e2d36e --- /dev/null +++ b/docs/examples/PinLastColumnExample.tsx @@ -0,0 +1,96 @@ +import { ActionIcon, Box, Button, Grid, Group, Stack, Text } from '@mantine/core'; +import { closeModal, openModal } from '@mantine/modals'; +import { IconEdit, IconEye, IconTrash } from '@tabler/icons-react'; +import { DataTable } from 'mantine-datatable'; +import { employees, type Employee } from '~/data'; + +const records = employees.slice(0, 5); + +const showModal = ({ employee, action }: { employee: Employee; action: 'view' | 'edit' | 'delete' }) => { + openModal({ + modalId: action, + title: + action === 'view' + ? 'Showing company information' + : action === 'edit' + ? 'Editing company information' + : 'Deleting company', + children: ( + + + {action === 'view' + ? 'Here’s where you could show more information...' + : action === 'edit' + ? 'Here’s where you could put an edit form...' + : 'Here’s where you could ask for confirmation before deleting...'} + + + ID + {employee.id} + First name + {employee.firstName} + Last name + {employee.lastName} + + + + ), + }); +}; + +export default function PinLastColumnExample() { + // example-start + return ( + Row actions, + textAlignment: 'right', + render: (employee) => ( + // example-skip action cells custom rendering + + showModal({ employee, action: 'view' })} + > + + + showModal({ employee, action: 'edit' })} + > + + + showModal({ employee, action: 'delete' })} + > + + + + // example-resume + ), + }, + ]} + records={records} + /> + ); + // example-end +} diff --git a/docs/pages/examples/pinning-the-last-column.tsx b/docs/pages/examples/pinning-the-last-column.tsx new file mode 100644 index 0000000..286f935 --- /dev/null +++ b/docs/pages/examples/pinning-the-last-column.tsx @@ -0,0 +1,49 @@ +import { Code, Container } from '@mantine/core'; +import { GetStaticProps, InferGetStaticPropsType } from 'next'; +import CodeBlock from '~/components/CodeBlock'; +import InternalLink from '~/components/InternalLink'; +import PageNavigation from '~/components/PageNavigation'; +import PageText from '~/components/PageText'; +import PageTitle from '~/components/PageTitle'; +import PinLastColumnExample from '~/examples/PinLastColumnExample'; +import readCodeExample from '~/lib/readCodeExample'; + +const PATH = 'examples/pinning-the-last-column'; + +export const getStaticProps: GetStaticProps<{ + code: string; +}> = async () => ({ + props: { code: (await readCodeExample('examples/PinLastColumnExample.tsx')) as string }, +}); + +export default function Page({ code }: InferGetStaticPropsType) { + return ( + + + + You may have noticed that when you are using{' '} + row selection and the table needs to scroll + horizontally, the checkbox column is always visible. This is because the checkbox column is pinned to the left + side of the table. + + + In the same way, pinning the last column to the right side of the table could be useful when you have a table + with many columns and you want to make sure the last column is always visible, even when the table is scrolled + horizontally. For instance, you could use this feature to ensure that the{' '} + row actions are always visible. + + + You can achieve this by setting the pinLastColumn DataTable prop to true: + + + Here is the code: + + + Combining this feature with column grouping may lead + to minor visual artifacts. + + Head over to the next example to discover more features. + + + ); +} diff --git a/package/DataTable.tsx b/package/DataTable.tsx index e1ebc37..a8df8d3 100644 --- a/package/DataTable.tsx +++ b/package/DataTable.tsx @@ -1,4 +1,4 @@ -import { Box, MantineSize, Portal, Table, createStyles, packSx, type MantineTheme } from '@mantine/core'; +import { Box, MantineSize, Portal, Table, createStyles, packSx, px, type MantineTheme } from '@mantine/core'; import { useMergedRef } from '@mantine/hooks'; import { useCallback, @@ -39,6 +39,7 @@ const useStyles = createStyles( ) => { const borderColorValue = typeof borderColor === 'function' ? borderColor(theme) : borderColor; const rowBorderColorValue = typeof rowBorderColor === 'function' ? rowBorderColor(theme) : rowBorderColor; + const shadowGradientAlpha = theme.colorScheme === 'dark' ? 0.5 : 0.05; return { root: { @@ -101,6 +102,40 @@ const useStyles = createStyles( verticalAlign: 'bottom', }, }, + pinLastColumn: { + 'th:last-of-type, td:last-of-type': { + position: 'sticky', + right: 0, + zIndex: 1, + background: 'inherit', + '&::after': { + content: "''", + position: 'absolute', + top: 0, + bottom: 0, + width: theme.spacing.sm, + background: `linear-gradient(to left, ${theme.fn.rgba(theme.black, shadowGradientAlpha)}, ${theme.fn.rgba( + theme.black, + 0 + )}), linear-gradient(to left, ${theme.fn.rgba(theme.black, shadowGradientAlpha)}, ${theme.fn.rgba( + theme.black, + 0 + )} 30%)`, + borderRight: `1px solid ${theme.colorScheme === 'dark' ? theme.colors.dark[4] : theme.colors.gray[3]}`, + left: -px(theme.spacing.sm), + pointerEvents: 'none', + opacity: 0, + transition: `opacity 0.2s`, + }, + }, + }, + pinnedColumnShadowVisible: { + 'th:last-of-type, td:last-of-type': { + '&::after': { + opacity: 1, + }, + }, + }, }; } ); @@ -120,6 +155,7 @@ export default function DataTable({ fetching, columns, groups, + pinLastColumn, defaultColumnProps, defaultColumnRender, idAccessor = 'id', @@ -332,7 +368,7 @@ export default function DataTable({ viewportRef={useMergedRef(scrollViewportRef, scrollViewportRefProp || null)} topShadowVisible={!scrolledToTop} leftShadowVisible={!(selectedRecords || scrolledToLeft)} - rightShadowVisible={!scrolledToRight} + rightShadowVisible={!scrolledToRight && !pinLastColumn} bottomShadowVisible={!scrolledToBottom} headerHeight={headerHeight} footerHeight={footerHeight} @@ -349,6 +385,8 @@ export default function DataTable({ [classes.verticalAlignmentTop]: verticalAlignment === 'top', [classes.verticalAlignmentBottom]: verticalAlignment === 'bottom', [classes.tableWithColumnBordersAndSelectableRecords]: selectionColumnVisible && withColumnBorders, + [classes.pinLastColumn]: pinLastColumn, + [classes.pinnedColumnShadowVisible]: pinLastColumn && !scrolledToRight, })} striped={recordsLength ? striped : false} {...otherProps} diff --git a/package/types/DataTableProps.ts b/package/types/DataTableProps.ts index 502abf8..bedb227 100644 --- a/package/types/DataTableProps.ts +++ b/package/types/DataTableProps.ts @@ -64,6 +64,11 @@ export type DataTableProps = { */ fetching?: boolean; + /** + * If true, the last column will be pinned to the right side of the table. + */ + pinLastColumn?: boolean; + /** * Default column props; will be merged with column props provided to each column */ From 2925d3f4d01524a8a03d5e11667b1442508bae1b Mon Sep 17 00:00:00 2001 From: Ionut-Cristian Florescu Date: Tue, 7 Nov 2023 18:49:02 +0200 Subject: [PATCH 4/4] Update changelog & bump version --- CHANGELOG.md | 4 ++++ docs/package.json | 2 +- package.json | 2 +- package/package.json | 2 +- 4 files changed, 7 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5e6fb28..362abce 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,10 @@ The following is a list of notable changes to the Mantine DataTable component. Minor versions that are not listed in the changelog are bug fixes and small improvements. +## 6.0.5 (2023-11-07) + +- Implement `pinLastColumn` feature + ## 6.0.0 (2023-10-01) - Bump version to 6.0.0 to match the compatible versions of `@mantine/hooks` and `@mantine/core`. From now on, let's keep the major version of `mantine-datatable` in sync with the major version of Mantine core diff --git a/docs/package.json b/docs/package.json index 7fc571a..62ee5cc 100644 --- a/docs/package.json +++ b/docs/package.json @@ -1,6 +1,6 @@ { "name": "mantine-datatable-docs", - "version": "6.0.4", + "version": "6.0.5", "description": "Docs website for mantine-datatable; see ../package/package.json for more info", "private": true, "scripts": { diff --git a/package.json b/package.json index 5268ddf..1d1d957 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "mantine-datatable-turborepo", - "version": "6.0.4", + "version": "6.0.5", "description": "Monorepo for mantine-datatable; see package/package.json for more info", "private": true, "workspaces": [ diff --git a/package/package.json b/package/package.json index 51d5259..8a99bbf 100644 --- a/package/package.json +++ b/package/package.json @@ -1,6 +1,6 @@ { "name": "mantine-datatable", - "version": "6.0.4", + "version": "6.0.5", "description": "The dependency-free datatable component for Mantine UI, featuring asynchronous data loading support, pagination, multple rows selection, column sorting, custom cell data rendering, row context menu, row expansion and more", "keywords": [ "mantine",