From 13bba48e9225447aa37b504a06d00dfa424a8e90 Mon Sep 17 00:00:00 2001 From: Sidharth Vinod Date: Sun, 30 Jun 2024 01:45:14 +0530 Subject: [PATCH] chore: Remove unused variables --- .esbuild/server.ts | 14 +++++++------- eslint.config.js | 13 ++++++++++++- package.json | 2 +- .../src/flowRenderer-elk.js | 14 -------------- packages/mermaid/scripts/docs.mts | 2 +- packages/mermaid/src/Diagram.ts | 2 +- .../src/dagre-wrapper/blockArrowHelper.ts | 3 --- .../mermaid/src/diagram-api/loadDiagram.ts | 2 +- .../src/diagrams/block/blockRenderer.ts | 9 +-------- packages/mermaid/src/diagrams/block/layout.ts | 2 -- .../src/diagrams/block/renderHelpers.ts | 6 +----- packages/mermaid/src/diagrams/class/svgDraw.js | 4 ++-- .../src/diagrams/flowchart/flowRenderer-v2.js | 4 ++-- .../mermaid/src/diagrams/mindmap/svgDraw.ts | 2 +- .../mermaid/src/diagrams/timeline/svgDraw.js | 18 ------------------ packages/mermaid/src/logger.ts | 1 - packages/mermaid/src/themes/theme-base.js | 4 ++-- .../src/language/common/valueConverter.ts | 1 - .../parser/src/language/pie/valueConverter.ts | 2 +- 19 files changed, 33 insertions(+), 72 deletions(-) diff --git a/.esbuild/server.ts b/.esbuild/server.ts index 98a0764a7..002512972 100644 --- a/.esbuild/server.ts +++ b/.esbuild/server.ts @@ -1,12 +1,12 @@ /* eslint-disable no-console */ -import express from 'express'; -import type { NextFunction, Request, Response } from 'express'; -import cors from 'cors'; -import { getBuildConfig, defaultOptions } from './util.js'; -import { context } from 'esbuild'; import chokidar from 'chokidar'; -import { generateLangium } from '../.build/generateLangium.js'; +import cors from 'cors'; +import { context } from 'esbuild'; +import type { Request, Response } from 'express'; +import express from 'express'; import { packageOptions } from '../.build/common.js'; +import { generateLangium } from '../.build/generateLangium.js'; +import { defaultOptions, getBuildConfig } from './util.js'; const configs = Object.values(packageOptions).map(({ packageName }) => getBuildConfig({ ...defaultOptions, minify: false, core: false, entryName: packageName }) @@ -29,7 +29,7 @@ const rebuildAll = async () => { }; let clients: { id: number; response: Response }[] = []; -function eventsHandler(request: Request, response: Response, next: NextFunction) { +function eventsHandler(request: Request, response: Response) { const headers = { 'Content-Type': 'text/event-stream', Connection: 'keep-alive', diff --git a/eslint.config.js b/eslint.config.js index 88b8a8eeb..de7b59558 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -67,7 +67,18 @@ export default tseslint.config( '@typescript-eslint/no-explicit-any': 'warn', '@typescript-eslint/no-floating-promises': 'error', '@typescript-eslint/no-misused-promises': 'error', - '@typescript-eslint/no-unused-vars': 'warn', + '@typescript-eslint/no-unused-vars': [ + 'error', + { + args: 'after-used', + argsIgnorePattern: '^_', + caughtErrors: 'all', + caughtErrorsIgnorePattern: '^_', + destructuredArrayIgnorePattern: '^_', + varsIgnorePattern: '^_', + ignoreRestSiblings: true, + }, + ], '@typescript-eslint/consistent-type-definitions': 'error', '@typescript-eslint/ban-ts-comment': [ 'error', diff --git a/package.json b/package.json index b021fc797..5312d8185 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ "dev:vite": "tsx .vite/server.ts", "dev:coverage": "pnpm coverage:cypress:clean && VITE_COVERAGE=true pnpm dev:vite", "release": "pnpm build", - "lint": "eslint --cache --cache-strategy content . && pnpm lint:jison && prettier --cache --check .", + "lint": "eslint --quiet --stats --cache --cache-strategy content . && pnpm lint:jison && prettier --cache --check .", "lint:fix": "eslint --cache --cache-strategy content --fix . && prettier --write . && tsx scripts/fixCSpell.ts", "lint:jison": "tsx ./scripts/jison/lint.mts", "contributors": "tsx scripts/updateContributors.ts", diff --git a/packages/mermaid-flowchart-elk/src/flowRenderer-elk.js b/packages/mermaid-flowchart-elk/src/flowRenderer-elk.js index c7bf41ce2..6d30292f4 100644 --- a/packages/mermaid-flowchart-elk/src/flowRenderer-elk.js +++ b/packages/mermaid-flowchart-elk/src/flowRenderer-elk.js @@ -64,7 +64,6 @@ export const addVertices = async function (vert, svgId, root, doc, diagObj, pare let vertexText = vertex.text !== undefined ? vertex.text : vertex.id; // We create a SVG label, either by delegating to addHtmlLabel or manually - let vertexNode; const labelData = { width: 0, height: 0 }; const ports = [ @@ -188,19 +187,6 @@ export const addVertices = async function (vert, svgId, root, doc, diagObj, pare nodeEl = await insertNode(nodes, node, vertex.dir); boundingBox = nodeEl.node().getBBox(); } else { - const svgLabel = doc.createElementNS('http://www.w3.org/2000/svg', 'text'); - // svgLabel.setAttribute('style', styles.labelStyle.replace('color:', 'fill:')); - // const rows = vertexText.split(common.lineBreakRegex); - // for (const row of rows) { - // const tspan = doc.createElementNS('http://www.w3.org/2000/svg', 'tspan'); - // tspan.setAttributeNS('http://www.w3.org/XML/1998/namespace', 'xml:space', 'preserve'); - // tspan.setAttribute('dy', '1em'); - // tspan.setAttribute('x', '1'); - // tspan.textContent = row; - // svgLabel.appendChild(tspan); - // } - // vertexNode = svgLabel; - // const bbox = vertexNode.getBBox(); const { shapeSvg, bbox } = await labelHelper(nodes, node, undefined, true); labelData.width = bbox.width; labelData.wrappingWidth = getConfig().flowchart.wrappingWidth; diff --git a/packages/mermaid/scripts/docs.mts b/packages/mermaid/scripts/docs.mts index 4c13c61d4..5e7ccb2d8 100644 --- a/packages/mermaid/scripts/docs.mts +++ b/packages/mermaid/scripts/docs.mts @@ -241,7 +241,7 @@ export function transformMarkdownAst({ addEditLink, removeYAML, }: TransformMarkdownAstOptions) { - return (tree: Root, _file?: any): Root => { + return (tree: Root): Root => { const astWithTransformedBlocks = flatmap(tree, (node: Code) => { if (node.type !== 'code' || !node.lang) { return [node]; // no transformation if this is not a code block diff --git a/packages/mermaid/src/Diagram.ts b/packages/mermaid/src/Diagram.ts index 86e7bf159..1374effb4 100644 --- a/packages/mermaid/src/Diagram.ts +++ b/packages/mermaid/src/Diagram.ts @@ -19,7 +19,7 @@ export class Diagram { text = encodeEntities(text) + '\n'; try { getDiagram(type); - } catch (e) { + } catch { const loader = getDiagramLoader(type); if (!loader) { throw new UnknownDiagramError(`Diagram ${type} not found.`); diff --git a/packages/mermaid/src/dagre-wrapper/blockArrowHelper.ts b/packages/mermaid/src/dagre-wrapper/blockArrowHelper.ts index 3c5000a49..848dc9fcc 100644 --- a/packages/mermaid/src/dagre-wrapper/blockArrowHelper.ts +++ b/packages/mermaid/src/dagre-wrapper/blockArrowHelper.ts @@ -42,9 +42,6 @@ export const getArrowPoints = ( // Padding to use, half of the node padding. const padding = node.padding / 2; - // Initialize an empty array to store points for the arrow. - const points = []; - if ( directions.has('right') && directions.has('left') && diff --git a/packages/mermaid/src/diagram-api/loadDiagram.ts b/packages/mermaid/src/diagram-api/loadDiagram.ts index c1b445bf6..1ec01ec06 100644 --- a/packages/mermaid/src/diagram-api/loadDiagram.ts +++ b/packages/mermaid/src/diagram-api/loadDiagram.ts @@ -10,7 +10,7 @@ export const loadRegisteredDiagrams = async () => { if (loader) { try { getDiagram(key); - } catch (error) { + } catch { try { // Register diagram if it is not already registered const { diagram, id } = await loader(); diff --git a/packages/mermaid/src/diagrams/block/blockRenderer.ts b/packages/mermaid/src/diagrams/block/blockRenderer.ts index e6289ad82..6e3f61a4d 100644 --- a/packages/mermaid/src/diagrams/block/blockRenderer.ts +++ b/packages/mermaid/src/diagrams/block/blockRenderer.ts @@ -1,8 +1,4 @@ -import { - scaleOrdinal as d3scaleOrdinal, - schemeTableau10 as d3schemeTableau10, - select as d3select, -} from 'd3'; +import { select as d3select } from 'd3'; import type { Diagram } from '../../Diagram.js'; import * as configApi from '../../config.js'; import type { MermaidConfig } from '../../config.type.js'; @@ -83,9 +79,6 @@ export const draw = async function ( `${bounds2.x - 5} ${bounds2.y - 5} ${bounds2.width + 10} ${bounds2.height + 10}` ); } - - // Get color scheme for the graph - const colorScheme = d3scaleOrdinal(d3schemeTableau10); }; export default { diff --git a/packages/mermaid/src/diagrams/block/layout.ts b/packages/mermaid/src/diagrams/block/layout.ts index c16d4e497..cb9496a69 100644 --- a/packages/mermaid/src/diagrams/block/layout.ts +++ b/packages/mermaid/src/diagrams/block/layout.ts @@ -133,8 +133,6 @@ function setBlockSizes(block: Block, db: BlockDB, siblingWidth = 0, siblingHeigh xSize = columns; } - const w = block.widthInColumns || 1; - const ySize = Math.ceil(numItems / xSize); let width = xSize * (maxWidth + padding) + padding; diff --git a/packages/mermaid/src/diagrams/block/renderHelpers.ts b/packages/mermaid/src/diagrams/block/renderHelpers.ts index c509ae198..fc73ca2ec 100644 --- a/packages/mermaid/src/diagrams/block/renderHelpers.ts +++ b/packages/mermaid/src/diagrams/block/renderHelpers.ts @@ -18,7 +18,6 @@ function getNodeFromBlock(block: Block, db: BlockDB, positioned = false) { // We create a SVG label, either by delegating to addHtmlLabel or manually let radius = 0; let shape = ''; - let layoutOptions = {}; let padding; // Set the shape based parameters switch (vertex.type) { @@ -36,9 +35,6 @@ function getNodeFromBlock(block: Block, db: BlockDB, positioned = false) { break; case 'diamond': shape = 'question'; - layoutOptions = { - portConstraints: 'FIXED_SIDE', - }; break; case 'hexagon': shape = 'hexagon'; @@ -142,7 +138,7 @@ export async function insertBlockPositioned(elem: any, block: Block, db: any) { // Add the element to the DOM to size it const obj = db.getBlock(node.id); if (obj.type !== 'space') { - const nodeEl = await insertNode(elem, node); + await insertNode(elem, node); block.intersect = node?.intersect; positionNode(node); } diff --git a/packages/mermaid/src/diagrams/class/svgDraw.js b/packages/mermaid/src/diagrams/class/svgDraw.js index d6ed7bca4..73cf97aeb 100644 --- a/packages/mermaid/src/diagrams/class/svgDraw.js +++ b/packages/mermaid/src/diagrams/class/svgDraw.js @@ -315,10 +315,10 @@ export const getClassTitleString = function (classDef) { * @param {SVGSVGElement} elem The element to draw it into * @param {{id: string; text: string; class: string;}} note * @param conf - * @param diagObj + * @param _diagObj * @todo Add more information in the JSDOC here */ -export const drawNote = function (elem, note, conf, diagObj) { +export const drawNote = function (elem, note, conf, _diagObj) { log.debug('Rendering note ', note, conf); const id = note.id; diff --git a/packages/mermaid/src/diagrams/flowchart/flowRenderer-v2.js b/packages/mermaid/src/diagrams/flowchart/flowRenderer-v2.js index 0e963c8cc..7c81b7e6d 100644 --- a/packages/mermaid/src/diagrams/flowchart/flowRenderer-v2.js +++ b/packages/mermaid/src/diagrams/flowchart/flowRenderer-v2.js @@ -190,9 +190,9 @@ export const addVertices = async function (vert, g, svgId, root, doc, diagObj) { * * @param {object} edges The edges to add to the graph * @param {object} g The graph object - * @param diagObj + * @param _diagObj */ -export const addEdges = async function (edges, g, diagObj) { +export const addEdges = async function (edges, g, _diagObj) { log.info('abc78 edges = ', edges); let cnt = 0; let linkIdCnt = {}; diff --git a/packages/mermaid/src/diagrams/mindmap/svgDraw.ts b/packages/mermaid/src/diagrams/mindmap/svgDraw.ts index bc629c36e..4288cfca6 100644 --- a/packages/mermaid/src/diagrams/mindmap/svgDraw.ts +++ b/packages/mermaid/src/diagrams/mindmap/svgDraw.ts @@ -195,7 +195,7 @@ export const drawNode = function ( // Create the wrapped text element const textElem = nodeElem.append('g'); const description = node.descr.replace(/()/g, '\n'); - const newEl = createText( + createText( textElem, description, { diff --git a/packages/mermaid/src/diagrams/timeline/svgDraw.js b/packages/mermaid/src/diagrams/timeline/svgDraw.js index 874ac62ef..c5fc2a3c4 100644 --- a/packages/mermaid/src/diagrams/timeline/svgDraw.js +++ b/packages/mermaid/src/diagrams/timeline/svgDraw.js @@ -258,24 +258,6 @@ export const drawTask = function (elem, task, conf) { rect.ry = 3; drawRect(g, rect); - let xPos = task.x + 14; - // task.people.forEach((person) => { - // const colour = task.actors[person].color; - - // const circle = { - // cx: xPos, - // cy: task.y, - // r: 7, - // fill: colour, - // stroke: '#000', - // title: person, - // pos: task.actors[person].position, - // }; - - // drawCircle(g, circle); - // xPos += 10; - // }); - _drawTextCandidateFunc(conf)( task.task, g, diff --git a/packages/mermaid/src/logger.ts b/packages/mermaid/src/logger.ts index 27ec1c919..d69615b3d 100644 --- a/packages/mermaid/src/logger.ts +++ b/packages/mermaid/src/logger.ts @@ -1,5 +1,4 @@ /* eslint-disable @typescript-eslint/no-explicit-any */ -/* eslint-disable @typescript-eslint/no-unused-vars */ /* eslint-disable no-console */ import dayjs from 'dayjs'; diff --git a/packages/mermaid/src/themes/theme-base.js b/packages/mermaid/src/themes/theme-base.js index dde3b9ecf..a92bd9e20 100644 --- a/packages/mermaid/src/themes/theme-base.js +++ b/packages/mermaid/src/themes/theme-base.js @@ -1,9 +1,9 @@ -import { darken, lighten, adjust, invert, isDark, toRgba } from 'khroma'; -import { mkBorder } from './theme-helpers.js'; +import { adjust, darken, invert, isDark, lighten } from 'khroma'; import { oldAttributeBackgroundColorEven, oldAttributeBackgroundColorOdd, } from './erDiagram-oldHardcodedValues.js'; +import { mkBorder } from './theme-helpers.js'; class Theme { constructor() { diff --git a/packages/parser/src/language/common/valueConverter.ts b/packages/parser/src/language/common/valueConverter.ts index 624cc67a5..740ef527f 100644 --- a/packages/parser/src/language/common/valueConverter.ts +++ b/packages/parser/src/language/common/valueConverter.ts @@ -1,4 +1,3 @@ -/* eslint-disable @typescript-eslint/no-unused-vars */ import type { CstNode, GrammarAST, ValueType } from 'langium'; import { DefaultValueConverter } from 'langium'; diff --git a/packages/parser/src/language/pie/valueConverter.ts b/packages/parser/src/language/pie/valueConverter.ts index b0ae18c0b..6e312e172 100644 --- a/packages/parser/src/language/pie/valueConverter.ts +++ b/packages/parser/src/language/pie/valueConverter.ts @@ -6,7 +6,7 @@ export class PieValueConverter extends AbstractMermaidValueConverter { protected runCustomConverter( rule: GrammarAST.AbstractRule, input: string, - // eslint-disable-next-line @typescript-eslint/no-unused-vars + _cstNode: CstNode ): ValueType | undefined { if (rule.name !== 'PIE_SECTION_LABEL') {