Compare commits

..

5 Commits

Author SHA1 Message Date
darshanr0107
f356836f71 Merge branch 'tooltip-positioning-issue' of https://github.com/mermaid-js/mermaid into tooltip-positioning-issue 2025-10-07 12:53:22 +05:30
darshanr0107
ff15e51d2e chore: added changeset
on-behalf-of: @Mermaid-Chart <hello@mermaidchart.com>
2025-10-07 12:53:10 +05:30
autofix-ci[bot]
ddd4763db2 [autofix.ci] apply automated fixes 2025-10-07 06:50:56 +00:00
darshanr0107
6670ad7229 fix : escape HTML in tooltip titles to prevent DOM injection
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2025-10-07 12:15:32 +05:30
darshanr0107
b4a5fe6c45 fix: tooltip appears at bottom of page instead of near hovered element
on-behalf-of: @Mermaid-Chart <hello@mermaidchart.com>
2025-10-07 11:56:26 +05:30
5 changed files with 173 additions and 226 deletions

View File

@@ -0,0 +1,5 @@
---
'mermaid': patch
---
fix: Correct tooltip placement to appear near hovered element

View File

@@ -64,12 +64,12 @@
},
"devDependencies": {
"@applitools/eyes-cypress": "^3.55.2",
"@argos-ci/cypress": "^6.1.3",
"@argos-ci/cypress": "^6.1.1",
"@changesets/changelog-github": "^0.5.1",
"@changesets/cli": "^2.29.7",
"@cspell/eslint-plugin": "^8.19.4",
"@cypress/code-coverage": "^3.14.6",
"@eslint/js": "^9.37.0",
"@eslint/js": "^9.26.0",
"@rollup/plugin-typescript": "^12.1.4",
"@types/cors": "^2.8.19",
"@types/express": "^5.0.3",
@@ -93,7 +93,7 @@
"cypress-image-snapshot": "^4.0.1",
"cypress-split": "^1.24.23",
"esbuild": "^0.25.10",
"eslint": "^9.37.0",
"eslint": "^9.26.0",
"eslint-config-prettier": "^10.1.8",
"eslint-plugin-cypress": "^4.3.0",
"eslint-plugin-html": "^8.1.3",
@@ -126,7 +126,7 @@
"tslib": "^2.8.1",
"tsx": "^4.20.5",
"typescript": "~5.7.3",
"typescript-eslint": "^8.46.0",
"typescript-eslint": "^8.38.0",
"vite": "^7.0.7",
"vite-plugin-istanbul": "^7.0.0",
"vitest": "^3.2.4"

View File

@@ -1,4 +1,4 @@
import { select, type Selection } from 'd3';
import { select } from 'd3';
import { log } from '../../logger.js';
import { getConfig } from '../../diagram-api/diagramAPI.js';
import common from '../common/common.js';
@@ -473,43 +473,61 @@ export class ClassDB implements DiagramDB {
LOLLIPOP: 4,
};
// Utility function to escape HTML meta-characters
private escapeHtml(str: string): string {
return str
.replace(/&/g, '&amp;')
.replace(/</g, '&lt;')
.replace(/>/g, '&gt;')
.replace(/"/g, '&quot;')
.replace(/'/g, '&#39;');
}
private readonly setupToolTips = (element: Element) => {
let tooltipElem: Selection<HTMLDivElement, unknown, HTMLElement, unknown> =
select('.mermaidTooltip');
// @ts-expect-error - Incorrect types
if ((tooltipElem._groups || tooltipElem)[0][0] === null) {
let tooltipElem = select<HTMLDivElement, unknown>('.mermaidTooltip');
if (tooltipElem.empty()) {
tooltipElem = select('body')
.append('div')
.attr('class', 'mermaidTooltip')
.style('opacity', 0);
.style('opacity', 0)
.style('position', 'absolute')
.style('text-align', 'center')
.style('max-width', '200px')
.style('padding', '2px')
.style('font-size', '12px')
.style('background', '#ffffde')
.style('border', '1px solid #333')
.style('border-radius', '2px')
.style('pointer-events', 'none')
.style('z-index', '100');
}
const svg = select(element).select('svg');
const nodes = svg.selectAll('g.node');
const nodes = svg.selectAll('g').filter(function () {
return select(this).attr('title') !== null;
});
nodes
.on('mouseover', (event: MouseEvent) => {
const el = select(event.currentTarget as HTMLElement);
const title = el.attr('title');
// Don't try to draw a tooltip if no data is provided
if (title === null) {
if (!title) {
return;
}
// @ts-ignore - getBoundingClientRect is not part of the d3 type definition
const rect = this.getBoundingClientRect();
const rect = (event.currentTarget as Element).getBoundingClientRect();
tooltipElem.transition().duration(200).style('opacity', '.9');
tooltipElem
.text(el.attr('title'))
.style('left', window.scrollX + rect.left + (rect.right - rect.left) / 2 + 'px')
.style('top', window.scrollY + rect.top - 14 + document.body.scrollTop + 'px');
tooltipElem.html(tooltipElem.html().replace(/&lt;br\/&gt;/g, '<br/>'));
.html(this.escapeHtml(title).replace(/&lt;br\/&gt;/g, '<br/>'))
.style('left', `${window.scrollX + rect.left + rect.width / 2}px`)
.style('top', `${window.scrollY + rect.bottom + 4}px`);
el.classed('hover', true);
})
.on('mouseout', (event: MouseEvent) => {
tooltipElem.transition().duration(500).style('opacity', 0);
const el = select(event.currentTarget as HTMLElement);
el.classed('hover', false);
select(event.currentTarget as HTMLElement).classed('hover', false);
});
};

View File

@@ -611,6 +611,21 @@ You have to call mermaid.initialize.`
const el = select(e.currentTarget as Element);
el.classed('hover', false);
});
// @ts-ignore TODO: fix this
tooltipElem = select('body')
.append('div')
.attr('class', 'mermaidTooltip')
.style('opacity', 0)
.style('position', 'absolute')
.style('text-align', 'center')
.style('max-width', '200px')
.style('padding', '2px')
.style('font-size', '12px')
.style('background', '#ffffde')
.style('border', '1px solid #333')
.style('border-radius', '2px')
.style('pointer-events', 'none')
.style('z-index', '100');
}
/**

319
pnpm-lock.yaml generated
View File

@@ -17,8 +17,8 @@ importers:
specifier: ^3.55.2
version: 3.55.2(encoding@0.1.13)(typescript@5.7.3)
'@argos-ci/cypress':
specifier: ^6.1.3
version: 6.1.3(cypress@14.5.4)
specifier: ^6.1.1
version: 6.1.1(cypress@14.5.4)
'@changesets/changelog-github':
specifier: ^0.5.1
version: 0.5.1(encoding@0.1.13)
@@ -27,13 +27,13 @@ importers:
version: 2.29.7(@types/node@22.18.6)
'@cspell/eslint-plugin':
specifier: ^8.19.4
version: 8.19.4(eslint@9.37.0(jiti@2.5.1))
version: 8.19.4(eslint@9.35.0(jiti@2.5.1))
'@cypress/code-coverage':
specifier: ^3.14.6
version: 3.14.6(@babel/core@7.28.4)(@babel/preset-env@7.28.3(@babel/core@7.28.4))(babel-loader@10.0.0(@babel/core@7.28.4)(webpack@5.101.3(esbuild@0.25.10)))(cypress@14.5.4)(webpack@5.101.3(esbuild@0.25.10))
'@eslint/js':
specifier: ^9.37.0
version: 9.37.0
specifier: ^9.26.0
version: 9.35.0
'@rollup/plugin-typescript':
specifier: ^12.1.4
version: 12.1.4(rollup@4.50.2)(tslib@2.8.1)(typescript@5.7.3)
@@ -104,32 +104,32 @@ importers:
specifier: ^0.25.10
version: 0.25.10
eslint:
specifier: ^9.37.0
version: 9.37.0(jiti@2.5.1)
specifier: ^9.26.0
version: 9.35.0(jiti@2.5.1)
eslint-config-prettier:
specifier: ^10.1.8
version: 10.1.8(eslint@9.37.0(jiti@2.5.1))
version: 10.1.8(eslint@9.35.0(jiti@2.5.1))
eslint-plugin-cypress:
specifier: ^4.3.0
version: 4.3.0(eslint@9.37.0(jiti@2.5.1))
version: 4.3.0(eslint@9.35.0(jiti@2.5.1))
eslint-plugin-html:
specifier: ^8.1.3
version: 8.1.3
eslint-plugin-jest:
specifier: ^28.14.0
version: 28.14.0(@typescript-eslint/eslint-plugin@8.46.0(@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.7.3))(eslint@9.37.0(jiti@2.5.1))(typescript@5.7.3))(eslint@9.37.0(jiti@2.5.1))(jest@30.1.3(@types/node@22.18.6))(typescript@5.7.3)
version: 28.14.0(@typescript-eslint/eslint-plugin@8.43.0(@typescript-eslint/parser@8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.7.3))(eslint@9.35.0(jiti@2.5.1))(typescript@5.7.3))(eslint@9.35.0(jiti@2.5.1))(jest@30.1.3(@types/node@22.18.6))(typescript@5.7.3)
eslint-plugin-jsdoc:
specifier: ^50.8.0
version: 50.8.0(eslint@9.37.0(jiti@2.5.1))
version: 50.8.0(eslint@9.35.0(jiti@2.5.1))
eslint-plugin-json:
specifier: ^4.0.1
version: 4.0.1
eslint-plugin-lodash:
specifier: ^8.0.0
version: 8.0.0(eslint@9.37.0(jiti@2.5.1))
version: 8.0.0(eslint@9.35.0(jiti@2.5.1))
eslint-plugin-markdown:
specifier: ^5.1.0
version: 5.1.0(eslint@9.37.0(jiti@2.5.1))
version: 5.1.0(eslint@9.35.0(jiti@2.5.1))
eslint-plugin-no-only-tests:
specifier: ^3.3.0
version: 3.3.0
@@ -138,7 +138,7 @@ importers:
version: 0.4.0
eslint-plugin-unicorn:
specifier: ^59.0.1
version: 59.0.1(eslint@9.37.0(jiti@2.5.1))
version: 59.0.1(eslint@9.35.0(jiti@2.5.1))
express:
specifier: ^5.1.0
version: 5.1.0
@@ -203,8 +203,8 @@ importers:
specifier: ~5.7.3
version: 5.7.3
typescript-eslint:
specifier: ^8.46.0
version: 8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.7.3)
specifier: ^8.38.0
version: 8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.7.3)
vite:
specifier: ^7.0.7
version: 7.1.5(@types/node@22.18.6)(jiti@2.5.1)(terser@5.44.0)(tsx@4.20.5)(yaml@2.8.1)
@@ -793,26 +793,26 @@ packages:
resolution: {integrity: sha512-8mBaNNJ0zUBlb09ycc8aFTKajoqEu+E7M7kdV1IENIwuVOI3ecM6x9vr4ptWQz0LTnel7M+L3NPqAGJqoQ3AKA==}
engines: {node: '>=12.13.0'}
'@argos-ci/api-client@0.12.0':
resolution: {integrity: sha512-WfhI+StLJKIKERWQaIm7Kv1/k+YO/CYIp3djDVhZIU6mv/8yalyNXHnkRC6ofq1kPpmRvoag1KW79/C2WsB4Ag==}
'@argos-ci/api-client@0.11.0':
resolution: {integrity: sha512-mv7LWrJfEDjjs+CmAJaM1GIexpb3A8TwuyTUCTKgDp/SHdbU0uF8uC6lV4P/mfeGIvBYZzIRKq/frd+IETlC2g==}
engines: {node: '>=20.0.0'}
'@argos-ci/browser@5.0.0':
resolution: {integrity: sha512-SKAD7EXoLX4u50dzTIT/ABnpD284+DnBfoJM0ZrTIav2eiiVJyknNKSznF5w118lYGnYvugTXbKMnukGPzJeOA==}
engines: {node: '>=20.0.0'}
'@argos-ci/core@4.2.0':
resolution: {integrity: sha512-3RNyBZ84pYfQ8dn/Ivv5ls2x2rgqFuh8wA8e4ugggA5lx2dE7a6yghJw8cPzud+zbHrpOntl/HBM3akh2SXLkw==}
'@argos-ci/core@4.1.5':
resolution: {integrity: sha512-tPsbnSuHEClkdGLUU/qHTNsMe3kAPBvz0DK0nkv6Z18N0imEbzVg+ggmcTmc2x2yEm7i1V456Z2MLhFvTqXnlw==}
engines: {node: '>=20.0.0'}
'@argos-ci/cypress@6.1.3':
resolution: {integrity: sha512-JlBabUsksKXH7QT2M47dhBNHRxNwW+GQ1lvBT/mgGaFJX8P/GqLkEEmKolf1YBn28MFemQmjuK4G+z5Pjs3rLg==}
'@argos-ci/cypress@6.1.1':
resolution: {integrity: sha512-fs6K2o7vEiAjBtQhrB6cp7YG6beYBRI9WyVbAHRVYyhdEic36agAqQ7/q3tx8d+uf7nXjjtZuW7KGUxjBmC9MA==}
engines: {node: '>=20.0.0'}
peerDependencies:
cypress: ^12.0.0 || ^13.0.0 || ^14.0.0
'@argos-ci/util@3.1.1':
resolution: {integrity: sha512-sGb9PS7yqdVVtxpxRD1Nfter3kaioC4nPPTknVmMSqo2GQKO1gdmjMJtwHY+Nf9FgiMfwpTCnk8Rrf0pjS3Sug==}
'@argos-ci/util@3.1.0':
resolution: {integrity: sha512-QM0IwJGm9YsRdsvTAskQab9iXpQOTOOLb+h9Yev76L2TzoLZ2tM9QO+pYNNlX9YLK5dYr/H/pBNQ1lWr130Jjw==}
engines: {node: '>=20.0.0'}
'@asamuzakjp/css-color@3.2.0':
@@ -2161,24 +2161,24 @@ packages:
resolution: {integrity: sha512-ENIdc4iLu0d93HeYirvKmrzshzofPw6VkZRKQGe9Nv46ZnWUzcF1xV01dcvEg/1wXUR61OmmlSfyeyO7EvjLxQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@eslint/config-helpers@0.4.0':
resolution: {integrity: sha512-WUFvV4WoIwW8Bv0KeKCIIEgdSiFOsulyN0xrMu+7z43q/hkOLXjvb5u7UC9jDxvRzcrbEmuZBX5yJZz1741jog==}
'@eslint/config-helpers@0.3.1':
resolution: {integrity: sha512-xR93k9WhrDYpXHORXpxVL5oHj3Era7wo6k/Wd8/IsQNnZUTzkGS29lyn3nAT05v6ltUuTFVCCYDEGfy2Or/sPA==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@eslint/core@0.13.0':
resolution: {integrity: sha512-yfkgDw1KR66rkT5A8ci4irzDysN7FRpq3ttJolR88OqQikAWqwA8j5VZyas+vjyBNFIJ7MfybJ9plMILI2UrCw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@eslint/core@0.16.0':
resolution: {integrity: sha512-nmC8/totwobIiFcGkDza3GIKfAw1+hLiYVrh3I1nIomQ8PEr5cxg34jnkmGawul/ep52wGRAcyeDCNtWKSOj4Q==}
'@eslint/core@0.15.2':
resolution: {integrity: sha512-78Md3/Rrxh83gCxoUc0EiciuOHsIITzLy53m3d9UyiW8y9Dj2D29FeETqyKA+BRK76tnTp6RXWb3pCay8Oyomg==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@eslint/eslintrc@3.3.1':
resolution: {integrity: sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@eslint/js@9.37.0':
resolution: {integrity: sha512-jaS+NJ+hximswBG6pjNX0uEJZkrT0zwpVi3BA3vX22aFGjJjmgSTSmPpZCRKmoBL5VY/M6p0xsSJx7rk7sy5gg==}
'@eslint/js@9.35.0':
resolution: {integrity: sha512-30iXE9whjlILfWobBkNerJo+TXYsgVM5ERQwMcMKCHckHflCmf7wXDAHlARoWnh0s1U72WqlbeyE7iAcCzuCPw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@eslint/object-schema@2.1.6':
@@ -2189,8 +2189,8 @@ packages:
resolution: {integrity: sha512-ZAoA40rNMPwSm+AeHpCq8STiNAwzWLJuP8Xv4CHIc9wv/PSuExjMrmjfYNj682vW0OOiZ1HKxzvjQr9XZIisQA==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@eslint/plugin-kit@0.4.0':
resolution: {integrity: sha512-sB5uyeq+dwCWyPi31B2gQlVlo+j5brPlWx4yZBrEaRo/nhdDE8Xke1gsGgtiBdaBTxuTkceLVuVt/pclrasb0A==}
'@eslint/plugin-kit@0.3.5':
resolution: {integrity: sha512-Z5kJ+wU3oA7MMIqVR9tyZRtjYPr4OC004Q4Rw7pgOKUOKkJfZ3O24nz3WYfGRpMDNmcOi3TwQOmgm7B7Tpii0w==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@fastify/ajv-compiler@3.6.0':
@@ -3242,16 +3242,16 @@ packages:
'@types/yauzl@2.10.3':
resolution: {integrity: sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==}
'@typescript-eslint/eslint-plugin@8.46.0':
resolution: {integrity: sha512-hA8gxBq4ukonVXPy0OKhiaUh/68D0E88GSmtC1iAEnGaieuDi38LhS7jdCHRLi6ErJBNDGCzvh5EnzdPwUc0DA==}
'@typescript-eslint/eslint-plugin@8.43.0':
resolution: {integrity: sha512-8tg+gt7ENL7KewsKMKDHXR1vm8tt9eMxjJBYINf6swonlWgkYn5NwyIgXpbbDxTNU5DgpDFfj95prcTq2clIQQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
'@typescript-eslint/parser': ^8.46.0
'@typescript-eslint/parser': ^8.43.0
eslint: ^8.57.0 || ^9.0.0
typescript: '>=4.8.4 <6.0.0'
'@typescript-eslint/parser@8.46.0':
resolution: {integrity: sha512-n1H6IcDhmmUEG7TNVSspGmiHHutt7iVKtZwRppD7e04wha5MrkV1h3pti9xQLcCMt6YWsncpoT0HMjkH1FNwWQ==}
'@typescript-eslint/parser@8.43.0':
resolution: {integrity: sha512-B7RIQiTsCBBmY+yW4+ILd6mF5h1FUwJsVvpqkrgpszYifetQ2Ke+Z4u6aZh0CblkUGIdR59iYVyXqqZGkZ3aBw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
@@ -3263,34 +3263,18 @@ packages:
peerDependencies:
typescript: '>=4.8.4 <6.0.0'
'@typescript-eslint/project-service@8.46.0':
resolution: {integrity: sha512-OEhec0mH+U5Je2NZOeK1AbVCdm0ChyapAyTeXVIYTPXDJ3F07+cu87PPXcGoYqZ7M9YJVvFnfpGg1UmCIqM+QQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
typescript: '>=4.8.4 <6.0.0'
'@typescript-eslint/scope-manager@8.43.0':
resolution: {integrity: sha512-daSWlQ87ZhsjrbMLvpuuMAt3y4ba57AuvadcR7f3nl8eS3BjRc8L9VLxFLk92RL5xdXOg6IQ+qKjjqNEimGuAg==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@typescript-eslint/scope-manager@8.46.0':
resolution: {integrity: sha512-lWETPa9XGcBes4jqAMYD9fW0j4n6hrPtTJwWDmtqgFO/4HF4jmdH/Q6wggTw5qIT5TXjKzbt7GsZUBnWoO3dqw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@typescript-eslint/tsconfig-utils@8.43.0':
resolution: {integrity: sha512-ALC2prjZcj2YqqL5X/bwWQmHA2em6/94GcbB/KKu5SX3EBDOsqztmmX1kMkvAJHzxk7TazKzJfFiEIagNV3qEA==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
typescript: '>=4.8.4 <6.0.0'
'@typescript-eslint/tsconfig-utils@8.46.0':
resolution: {integrity: sha512-WrYXKGAHY836/N7zoK/kzi6p8tXFhasHh8ocFL9VZSAkvH956gfeRfcnhs3xzRy8qQ/dq3q44v1jvQieMFg2cw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
typescript: '>=4.8.4 <6.0.0'
'@typescript-eslint/type-utils@8.46.0':
resolution: {integrity: sha512-hy+lvYV1lZpVs2jRaEYvgCblZxUoJiPyCemwbQZ+NGulWkQRy0HRPYAoef/CNSzaLt+MLvMptZsHXHlkEilaeg==}
'@typescript-eslint/type-utils@8.43.0':
resolution: {integrity: sha512-qaH1uLBpBuBBuRf8c1mLJ6swOfzCXryhKND04Igr4pckzSEW9JX5Aw9AgW00kwfjWJF0kk0ps9ExKTfvXfw4Qg==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
@@ -3300,22 +3284,12 @@ packages:
resolution: {integrity: sha512-vQ2FZaxJpydjSZJKiSW/LJsabFFvV7KgLC5DiLhkBcykhQj8iK9BOaDmQt74nnKdLvceM5xmhaTF+pLekrxEkw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@typescript-eslint/types@8.46.0':
resolution: {integrity: sha512-bHGGJyVjSE4dJJIO5yyEWt/cHyNwga/zXGJbJJ8TiO01aVREK6gCTu3L+5wrkb1FbDkQ+TKjMNe9R/QQQP9+rA==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@typescript-eslint/typescript-estree@8.43.0':
resolution: {integrity: sha512-7Vv6zlAhPb+cvEpP06WXXy/ZByph9iL6BQRBDj4kmBsW98AqEeQHlj/13X+sZOrKSo9/rNKH4Ul4f6EICREFdw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
typescript: '>=4.8.4 <6.0.0'
'@typescript-eslint/typescript-estree@8.46.0':
resolution: {integrity: sha512-ekDCUfVpAKWJbRfm8T1YRrCot1KFxZn21oV76v5Fj4tr7ELyk84OS+ouvYdcDAwZL89WpEkEj2DKQ+qg//+ucg==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
typescript: '>=4.8.4 <6.0.0'
'@typescript-eslint/utils@8.43.0':
resolution: {integrity: sha512-S1/tEmkUeeswxd0GGcnwuVQPFWo8NzZTOMxCvw8BX7OMxnNae+i8Tm7REQen/SwUIPoPqfKn7EaZ+YLpiB3k9g==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
@@ -3323,21 +3297,10 @@ packages:
eslint: ^8.57.0 || ^9.0.0
typescript: '>=4.8.4 <6.0.0'
'@typescript-eslint/utils@8.46.0':
resolution: {integrity: sha512-nD6yGWPj1xiOm4Gk0k6hLSZz2XkNXhuYmyIrOWcHoPuAhjT9i5bAG+xbWPgFeNR8HPHHtpNKdYUXJl/D3x7f5g==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
typescript: '>=4.8.4 <6.0.0'
'@typescript-eslint/visitor-keys@8.43.0':
resolution: {integrity: sha512-T+S1KqRD4sg/bHfLwrpF/K3gQLBM1n7Rp7OjjikjTEssI2YJzQpi5WXoynOaQ93ERIuq3O8RBTOUYDKszUCEHw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@typescript-eslint/visitor-keys@8.46.0':
resolution: {integrity: sha512-FrvMpAK+hTbFy7vH5j1+tMYHMSKLE6RzluFJlkFNKD0p9YsUT75JlBSmr5so3QRzvMwU5/bIEdeNrxm8du8l3Q==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@ungap/structured-clone@1.3.0':
resolution: {integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==}
@@ -5476,8 +5439,8 @@ packages:
resolution: {integrity: sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
eslint@9.37.0:
resolution: {integrity: sha512-XyLmROnACWqSxiGYArdef1fItQd47weqB7iwtfr9JHwRrqIXZdcFMvvEcL9xHCmL0SNsOvF0c42lWyM1U5dgig==}
eslint@9.35.0:
resolution: {integrity: sha512-QePbBFMJFjgmlE+cXAlbHZbHpdFVS2E/6vzCy7aKlebddvl1vadiC4JFV5u/wqTkNUwEV8WrQi257jf5f06hrg==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
hasBin: true
peerDependencies:
@@ -7640,8 +7603,8 @@ packages:
resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==}
engines: {node: '>=12'}
openapi-fetch@0.14.1:
resolution: {integrity: sha512-l7RarRHxlEZYjMLd/PR0slfMVse2/vvIAGm75/F7J6MlQ8/b9uUQmUF2kCPrQhJqMXSxmYWObVgeYXbFYzZR+A==}
openapi-fetch@0.14.0:
resolution: {integrity: sha512-PshIdm1NgdLvb05zp8LqRQMNSKzIlPkyMxYFxwyHR+UlKD4t2nUjkDhNxeRbhRSEd3x5EUNh2w5sJYwkhOH4fg==}
openapi-typescript-helpers@0.0.15:
resolution: {integrity: sha512-opyTPaunsklCBpTK8JGef6mfPhLSnyy5a0IN9vKtx3+4aExf+KxEqYwIy3hqkedXIB97u357uLMJsOnm3GVjsw==}
@@ -9182,8 +9145,8 @@ packages:
peerDependencies:
typescript: 5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x || 5.5.x || 5.6.x || 5.7.x || 5.8.x || 5.9.x
typescript-eslint@8.46.0:
resolution: {integrity: sha512-6+ZrB6y2bT2DX3K+Qd9vn7OFOJR+xSLDj+Aw/N3zBwUt27uTw2sw2TE2+UcY1RiyBZkaGbTkVg9SSdPNUG6aUw==}
typescript-eslint@8.43.0:
resolution: {integrity: sha512-FyRGJKUGvcFekRRcBKFBlAhnp4Ng8rhe8tuvvkR9OiU0gfd4vyvTRQHEckO6VDlH57jbeUQem2IpqPq9kLJH+w==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
@@ -10335,19 +10298,19 @@ snapshots:
'@applitools/utils@1.12.0': {}
'@argos-ci/api-client@0.12.0':
'@argos-ci/api-client@0.11.0':
dependencies:
debug: 4.4.3(supports-color@8.1.1)
openapi-fetch: 0.14.1
openapi-fetch: 0.14.0
transitivePeerDependencies:
- supports-color
'@argos-ci/browser@5.0.0': {}
'@argos-ci/core@4.2.0':
'@argos-ci/core@4.1.5':
dependencies:
'@argos-ci/api-client': 0.12.0
'@argos-ci/util': 3.1.1
'@argos-ci/api-client': 0.11.0
'@argos-ci/util': 3.1.0
convict: 6.2.4
debug: 4.4.3(supports-color@8.1.1)
fast-glob: 3.3.3
@@ -10356,17 +10319,17 @@ snapshots:
transitivePeerDependencies:
- supports-color
'@argos-ci/cypress@6.1.3(cypress@14.5.4)':
'@argos-ci/cypress@6.1.1(cypress@14.5.4)':
dependencies:
'@argos-ci/browser': 5.0.0
'@argos-ci/core': 4.2.0
'@argos-ci/util': 3.1.1
'@argos-ci/core': 4.1.5
'@argos-ci/util': 3.1.0
cypress: 14.5.4
cypress-wait-until: 3.0.2
transitivePeerDependencies:
- supports-color
'@argos-ci/util@3.1.1': {}
'@argos-ci/util@3.1.0': {}
'@asamuzakjp/css-color@3.2.0':
dependencies:
@@ -11591,12 +11554,12 @@ snapshots:
'@cspell/url': 9.2.1
import-meta-resolve: 4.2.0
'@cspell/eslint-plugin@8.19.4(eslint@9.37.0(jiti@2.5.1))':
'@cspell/eslint-plugin@8.19.4(eslint@9.35.0(jiti@2.5.1))':
dependencies:
'@cspell/cspell-types': 8.19.4
'@cspell/url': 8.19.4
cspell-lib: 8.19.4
eslint: 9.37.0(jiti@2.5.1)
eslint: 9.35.0(jiti@2.5.1)
synckit: 0.11.11
'@cspell/filetypes@8.19.4': {}
@@ -11893,9 +11856,9 @@ snapshots:
'@esbuild/win32-x64@0.25.10':
optional: true
'@eslint-community/eslint-utils@4.9.0(eslint@9.37.0(jiti@2.5.1))':
'@eslint-community/eslint-utils@4.9.0(eslint@9.35.0(jiti@2.5.1))':
dependencies:
eslint: 9.37.0(jiti@2.5.1)
eslint: 9.35.0(jiti@2.5.1)
eslint-visitor-keys: 3.4.3
'@eslint-community/regexpp@4.12.1': {}
@@ -11908,15 +11871,13 @@ snapshots:
transitivePeerDependencies:
- supports-color
'@eslint/config-helpers@0.4.0':
dependencies:
'@eslint/core': 0.16.0
'@eslint/config-helpers@0.3.1': {}
'@eslint/core@0.13.0':
dependencies:
'@types/json-schema': 7.0.15
'@eslint/core@0.16.0':
'@eslint/core@0.15.2':
dependencies:
'@types/json-schema': 7.0.15
@@ -11934,7 +11895,7 @@ snapshots:
transitivePeerDependencies:
- supports-color
'@eslint/js@9.37.0': {}
'@eslint/js@9.35.0': {}
'@eslint/object-schema@2.1.6': {}
@@ -11943,9 +11904,9 @@ snapshots:
'@eslint/core': 0.13.0
levn: 0.4.1
'@eslint/plugin-kit@0.4.0':
'@eslint/plugin-kit@0.3.5':
dependencies:
'@eslint/core': 0.16.0
'@eslint/core': 0.15.2
levn: 0.4.1
'@fastify/ajv-compiler@3.6.0':
@@ -13158,15 +13119,15 @@ snapshots:
'@types/node': 22.18.6
optional: true
'@typescript-eslint/eslint-plugin@8.46.0(@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.7.3))(eslint@9.37.0(jiti@2.5.1))(typescript@5.7.3)':
'@typescript-eslint/eslint-plugin@8.43.0(@typescript-eslint/parser@8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.7.3))(eslint@9.35.0(jiti@2.5.1))(typescript@5.7.3)':
dependencies:
'@eslint-community/regexpp': 4.12.1
'@typescript-eslint/parser': 8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.7.3)
'@typescript-eslint/scope-manager': 8.46.0
'@typescript-eslint/type-utils': 8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.7.3)
'@typescript-eslint/utils': 8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.7.3)
'@typescript-eslint/visitor-keys': 8.46.0
eslint: 9.37.0(jiti@2.5.1)
'@typescript-eslint/parser': 8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.7.3)
'@typescript-eslint/scope-manager': 8.43.0
'@typescript-eslint/type-utils': 8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.7.3)
'@typescript-eslint/utils': 8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.7.3)
'@typescript-eslint/visitor-keys': 8.43.0
eslint: 9.35.0(jiti@2.5.1)
graphemer: 1.4.0
ignore: 7.0.5
natural-compare: 1.4.0
@@ -13175,14 +13136,14 @@ snapshots:
transitivePeerDependencies:
- supports-color
'@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.7.3)':
'@typescript-eslint/parser@8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.7.3)':
dependencies:
'@typescript-eslint/scope-manager': 8.46.0
'@typescript-eslint/types': 8.46.0
'@typescript-eslint/typescript-estree': 8.46.0(typescript@5.7.3)
'@typescript-eslint/visitor-keys': 8.46.0
'@typescript-eslint/scope-manager': 8.43.0
'@typescript-eslint/types': 8.43.0
'@typescript-eslint/typescript-estree': 8.43.0(typescript@5.7.3)
'@typescript-eslint/visitor-keys': 8.43.0
debug: 4.4.3(supports-color@8.1.1)
eslint: 9.37.0(jiti@2.5.1)
eslint: 9.35.0(jiti@2.5.1)
typescript: 5.7.3
transitivePeerDependencies:
- supports-color
@@ -13196,40 +13157,22 @@ snapshots:
transitivePeerDependencies:
- supports-color
'@typescript-eslint/project-service@8.46.0(typescript@5.7.3)':
dependencies:
'@typescript-eslint/tsconfig-utils': 8.46.0(typescript@5.7.3)
'@typescript-eslint/types': 8.46.0
debug: 4.4.3(supports-color@8.1.1)
typescript: 5.7.3
transitivePeerDependencies:
- supports-color
'@typescript-eslint/scope-manager@8.43.0':
dependencies:
'@typescript-eslint/types': 8.43.0
'@typescript-eslint/visitor-keys': 8.43.0
'@typescript-eslint/scope-manager@8.46.0':
dependencies:
'@typescript-eslint/types': 8.46.0
'@typescript-eslint/visitor-keys': 8.46.0
'@typescript-eslint/tsconfig-utils@8.43.0(typescript@5.7.3)':
dependencies:
typescript: 5.7.3
'@typescript-eslint/tsconfig-utils@8.46.0(typescript@5.7.3)':
'@typescript-eslint/type-utils@8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.7.3)':
dependencies:
typescript: 5.7.3
'@typescript-eslint/type-utils@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.7.3)':
dependencies:
'@typescript-eslint/types': 8.46.0
'@typescript-eslint/typescript-estree': 8.46.0(typescript@5.7.3)
'@typescript-eslint/utils': 8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.7.3)
'@typescript-eslint/types': 8.43.0
'@typescript-eslint/typescript-estree': 8.43.0(typescript@5.7.3)
'@typescript-eslint/utils': 8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.7.3)
debug: 4.4.3(supports-color@8.1.1)
eslint: 9.37.0(jiti@2.5.1)
eslint: 9.35.0(jiti@2.5.1)
ts-api-utils: 2.1.0(typescript@5.7.3)
typescript: 5.7.3
transitivePeerDependencies:
@@ -13237,8 +13180,6 @@ snapshots:
'@typescript-eslint/types@8.43.0': {}
'@typescript-eslint/types@8.46.0': {}
'@typescript-eslint/typescript-estree@8.43.0(typescript@5.7.3)':
dependencies:
'@typescript-eslint/project-service': 8.43.0(typescript@5.7.3)
@@ -13255,40 +13196,13 @@ snapshots:
transitivePeerDependencies:
- supports-color
'@typescript-eslint/typescript-estree@8.46.0(typescript@5.7.3)':
'@typescript-eslint/utils@8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.7.3)':
dependencies:
'@typescript-eslint/project-service': 8.46.0(typescript@5.7.3)
'@typescript-eslint/tsconfig-utils': 8.46.0(typescript@5.7.3)
'@typescript-eslint/types': 8.46.0
'@typescript-eslint/visitor-keys': 8.46.0
debug: 4.4.3(supports-color@8.1.1)
fast-glob: 3.3.3
is-glob: 4.0.3
minimatch: 9.0.5
semver: 7.7.2
ts-api-utils: 2.1.0(typescript@5.7.3)
typescript: 5.7.3
transitivePeerDependencies:
- supports-color
'@typescript-eslint/utils@8.43.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.7.3)':
dependencies:
'@eslint-community/eslint-utils': 4.9.0(eslint@9.37.0(jiti@2.5.1))
'@eslint-community/eslint-utils': 4.9.0(eslint@9.35.0(jiti@2.5.1))
'@typescript-eslint/scope-manager': 8.43.0
'@typescript-eslint/types': 8.43.0
'@typescript-eslint/typescript-estree': 8.43.0(typescript@5.7.3)
eslint: 9.37.0(jiti@2.5.1)
typescript: 5.7.3
transitivePeerDependencies:
- supports-color
'@typescript-eslint/utils@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.7.3)':
dependencies:
'@eslint-community/eslint-utils': 4.9.0(eslint@9.37.0(jiti@2.5.1))
'@typescript-eslint/scope-manager': 8.46.0
'@typescript-eslint/types': 8.46.0
'@typescript-eslint/typescript-estree': 8.46.0(typescript@5.7.3)
eslint: 9.37.0(jiti@2.5.1)
eslint: 9.35.0(jiti@2.5.1)
typescript: 5.7.3
transitivePeerDependencies:
- supports-color
@@ -13298,11 +13212,6 @@ snapshots:
'@typescript-eslint/types': 8.43.0
eslint-visitor-keys: 4.2.1
'@typescript-eslint/visitor-keys@8.46.0':
dependencies:
'@typescript-eslint/types': 8.46.0
eslint-visitor-keys: 4.2.1
'@ungap/structured-clone@1.3.0': {}
'@unocss/astro@66.5.1(vite@7.1.5(@types/node@22.18.6)(jiti@2.5.1)(terser@5.44.0)(tsx@4.20.5)(yaml@2.8.1))':
@@ -15779,38 +15688,38 @@ snapshots:
optionalDependencies:
source-map: 0.6.1
eslint-config-prettier@10.1.8(eslint@9.37.0(jiti@2.5.1)):
eslint-config-prettier@10.1.8(eslint@9.35.0(jiti@2.5.1)):
dependencies:
eslint: 9.37.0(jiti@2.5.1)
eslint: 9.35.0(jiti@2.5.1)
eslint-plugin-cypress@4.3.0(eslint@9.37.0(jiti@2.5.1)):
eslint-plugin-cypress@4.3.0(eslint@9.35.0(jiti@2.5.1)):
dependencies:
eslint: 9.37.0(jiti@2.5.1)
eslint: 9.35.0(jiti@2.5.1)
globals: 15.15.0
eslint-plugin-html@8.1.3:
dependencies:
htmlparser2: 10.0.0
eslint-plugin-jest@28.14.0(@typescript-eslint/eslint-plugin@8.46.0(@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.7.3))(eslint@9.37.0(jiti@2.5.1))(typescript@5.7.3))(eslint@9.37.0(jiti@2.5.1))(jest@30.1.3(@types/node@22.18.6))(typescript@5.7.3):
eslint-plugin-jest@28.14.0(@typescript-eslint/eslint-plugin@8.43.0(@typescript-eslint/parser@8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.7.3))(eslint@9.35.0(jiti@2.5.1))(typescript@5.7.3))(eslint@9.35.0(jiti@2.5.1))(jest@30.1.3(@types/node@22.18.6))(typescript@5.7.3):
dependencies:
'@typescript-eslint/utils': 8.43.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.7.3)
eslint: 9.37.0(jiti@2.5.1)
'@typescript-eslint/utils': 8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.7.3)
eslint: 9.35.0(jiti@2.5.1)
optionalDependencies:
'@typescript-eslint/eslint-plugin': 8.46.0(@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.7.3))(eslint@9.37.0(jiti@2.5.1))(typescript@5.7.3)
'@typescript-eslint/eslint-plugin': 8.43.0(@typescript-eslint/parser@8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.7.3))(eslint@9.35.0(jiti@2.5.1))(typescript@5.7.3)
jest: 30.1.3(@types/node@22.18.6)
transitivePeerDependencies:
- supports-color
- typescript
eslint-plugin-jsdoc@50.8.0(eslint@9.37.0(jiti@2.5.1)):
eslint-plugin-jsdoc@50.8.0(eslint@9.35.0(jiti@2.5.1)):
dependencies:
'@es-joy/jsdoccomment': 0.50.2
are-docs-informative: 0.0.2
comment-parser: 1.4.1
debug: 4.4.3(supports-color@8.1.1)
escape-string-regexp: 4.0.0
eslint: 9.37.0(jiti@2.5.1)
eslint: 9.35.0(jiti@2.5.1)
espree: 10.4.0
esquery: 1.6.0
parse-imports-exports: 0.2.4
@@ -15824,14 +15733,14 @@ snapshots:
lodash: 4.17.21
vscode-json-languageservice: 4.2.1
eslint-plugin-lodash@8.0.0(eslint@9.37.0(jiti@2.5.1)):
eslint-plugin-lodash@8.0.0(eslint@9.35.0(jiti@2.5.1)):
dependencies:
eslint: 9.37.0(jiti@2.5.1)
eslint: 9.35.0(jiti@2.5.1)
lodash: 4.17.21
eslint-plugin-markdown@5.1.0(eslint@9.37.0(jiti@2.5.1)):
eslint-plugin-markdown@5.1.0(eslint@9.35.0(jiti@2.5.1)):
dependencies:
eslint: 9.37.0(jiti@2.5.1)
eslint: 9.35.0(jiti@2.5.1)
mdast-util-from-markdown: 0.8.5
transitivePeerDependencies:
- supports-color
@@ -15843,15 +15752,15 @@ snapshots:
'@microsoft/tsdoc': 0.15.1
'@microsoft/tsdoc-config': 0.17.1
eslint-plugin-unicorn@59.0.1(eslint@9.37.0(jiti@2.5.1)):
eslint-plugin-unicorn@59.0.1(eslint@9.35.0(jiti@2.5.1)):
dependencies:
'@babel/helper-validator-identifier': 7.27.1
'@eslint-community/eslint-utils': 4.9.0(eslint@9.37.0(jiti@2.5.1))
'@eslint-community/eslint-utils': 4.9.0(eslint@9.35.0(jiti@2.5.1))
'@eslint/plugin-kit': 0.2.8
ci-info: 4.3.0
clean-regexp: 1.0.0
core-js-compat: 3.45.1
eslint: 9.37.0(jiti@2.5.1)
eslint: 9.35.0(jiti@2.5.1)
esquery: 1.6.0
find-up-simple: 1.0.1
globals: 16.4.0
@@ -15878,16 +15787,16 @@ snapshots:
eslint-visitor-keys@4.2.1: {}
eslint@9.37.0(jiti@2.5.1):
eslint@9.35.0(jiti@2.5.1):
dependencies:
'@eslint-community/eslint-utils': 4.9.0(eslint@9.37.0(jiti@2.5.1))
'@eslint-community/eslint-utils': 4.9.0(eslint@9.35.0(jiti@2.5.1))
'@eslint-community/regexpp': 4.12.1
'@eslint/config-array': 0.21.0
'@eslint/config-helpers': 0.4.0
'@eslint/core': 0.16.0
'@eslint/config-helpers': 0.3.1
'@eslint/core': 0.15.2
'@eslint/eslintrc': 3.3.1
'@eslint/js': 9.37.0
'@eslint/plugin-kit': 0.4.0
'@eslint/js': 9.35.0
'@eslint/plugin-kit': 0.3.5
'@humanfs/node': 0.16.7
'@humanwhocodes/module-importer': 1.0.1
'@humanwhocodes/retry': 0.4.3
@@ -18619,7 +18528,7 @@ snapshots:
is-docker: 2.2.1
is-wsl: 2.2.0
openapi-fetch@0.14.1:
openapi-fetch@0.14.0:
dependencies:
openapi-typescript-helpers: 0.0.15
@@ -20357,13 +20266,13 @@ snapshots:
typescript: 5.7.3
yaml: 2.8.1
typescript-eslint@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.7.3):
typescript-eslint@8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.7.3):
dependencies:
'@typescript-eslint/eslint-plugin': 8.46.0(@typescript-eslint/parser@8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.7.3))(eslint@9.37.0(jiti@2.5.1))(typescript@5.7.3)
'@typescript-eslint/parser': 8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.7.3)
'@typescript-eslint/typescript-estree': 8.46.0(typescript@5.7.3)
'@typescript-eslint/utils': 8.46.0(eslint@9.37.0(jiti@2.5.1))(typescript@5.7.3)
eslint: 9.37.0(jiti@2.5.1)
'@typescript-eslint/eslint-plugin': 8.43.0(@typescript-eslint/parser@8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.7.3))(eslint@9.35.0(jiti@2.5.1))(typescript@5.7.3)
'@typescript-eslint/parser': 8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.7.3)
'@typescript-eslint/typescript-estree': 8.43.0(typescript@5.7.3)
'@typescript-eslint/utils': 8.43.0(eslint@9.35.0(jiti@2.5.1))(typescript@5.7.3)
eslint: 9.35.0(jiti@2.5.1)
typescript: 5.7.3
transitivePeerDependencies:
- supports-color