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/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/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/package.json b/docs/package.json
index b1ea8ed..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": {
@@ -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/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/docs/public/partners/inventree-dark.png b/docs/public/partners/inventree-dark.png
new file mode 100644
index 0000000..d9a3809
Binary files /dev/null and b/docs/public/partners/inventree-dark.png differ
diff --git a/docs/public/partners/inventree-light.png b/docs/public/partners/inventree-light.png
new file mode 100644
index 0000000..9236fbf
Binary files /dev/null and b/docs/public/partners/inventree-light.png differ
diff --git a/package.json b/package.json
index 5b44ada..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": [
@@ -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/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/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",
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
*/
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"