knsv/mermaid

View on GitHub

Showing 384 of 1,490 total issues

File stateRenderer-v2.js has 318 lines of code (exceeds 250 allowed). Consider refactoring.
Open

import * as graphlib from 'dagre-d3-es/src/graphlib/index.js';
import { select } from 'd3';
import { getConfig } from '../../diagram-api/diagramAPI.js';
import { render } from '../../dagre-wrapper/index.js';
import { log } from '../../logger.js';
Severity: Minor
Found in packages/mermaid/src/diagrams/state/stateRenderer-v2.js - About 3 hrs to fix

    Function drawLoop has 90 lines of code (exceeds 25 allowed). Consider refactoring.
    Open

    export const drawLoop = async function (elem, loopModel, labelText, conf) {
      const {
        boxMargin,
        boxTextMargin,
        labelBoxHeight,
    Severity: Major
    Found in packages/mermaid/src/diagrams/sequence/svgDraw.js - About 3 hrs to fix

      Function draw has 90 lines of code (exceeds 25 allowed). Consider refactoring.
      Open

      export const draw = (txt: string, id: string, _version: string, diagObj: Diagram) => {
        const db = diagObj.db as typeof XYChartDB;
        const themeConfig = db.getChartThemeConfig();
        const chartConfig = db.getChartConfig();
        function getDominantBaseLine(horizontalPos: TextVerticalPos) {
      Severity: Major
      Found in packages/mermaid/src/diagrams/xychart/xychartRenderer.ts - About 3 hrs to fix

        Function labelHelper has 89 lines of code (exceeds 25 allowed). Consider refactoring.
        Open

        export const labelHelper = async (parent, node, _classes, isNode) => {
          let classes;
          const useHtmlLabels = node.useHtmlLabels || evaluate(getConfig().flowchart.htmlLabels);
          if (!_classes) {
            classes = 'node default';
        Severity: Major
        Found in packages/mermaid/src/dagre-wrapper/shapes/util.js - About 3 hrs to fix

          Function makeGrid has 89 lines of code (exceeds 25 allowed). Consider refactoring.
          Open

            function makeGrid(theSidePad, theTopPad, w, h) {
              let bottomXAxis = axisBottom(timeScale)
                .tickSize(-h + theTopPad + conf.gridLineStartPadding)
                .tickFormat(timeFormat(diagObj.db.getAxisFormat() || conf.axisFormat || '%Y-%m-%d'));
          
          
          Severity: Major
          Found in packages/mermaid/src/diagrams/gantt/ganttRenderer.js - About 3 hrs to fix

            File mermaid-graphlib.spec.js has 315 lines of code (exceeds 250 allowed). Consider refactoring.
            Open

            import * as graphlibJson from 'dagre-d3-es/src/graphlib/json.js';
            import * as graphlib from 'dagre-d3-es/src/graphlib/index.js';
            import {
              validate,
              adjustClustersAndEdges,
            Severity: Minor
            Found in packages/mermaid/src/dagre-wrapper/mermaid-graphlib.spec.js - About 3 hrs to fix

              Function _drawTextCandidateFunc has 88 lines of code (exceeds 25 allowed). Consider refactoring.
              Open

              const _drawTextCandidateFunc = (function () {
                /**
                 * @param {any} content
                 * @param {any} g
                 * @param {any} x
              Severity: Major
              Found in packages/mermaid/src/diagrams/sequence/svgDraw.js - About 3 hrs to fix

                Function drawRels has 87 lines of code (exceeds 25 allowed). Consider refactoring.
                Open

                export const drawRels = (elem, rels, conf) => {
                  const relsElem = elem.append('g');
                  let i = 0;
                  for (let rel of rels) {
                    let textColor = rel.textColor ? rel.textColor : '#444444';
                Severity: Major
                Found in packages/mermaid/src/diagrams/c4/svgDraw.js - About 3 hrs to fix

                  Function getAxisLabels has 86 lines of code (exceeds 25 allowed). Consider refactoring.
                  Open

                    getAxisLabels(
                      xAxisPosition: typeof this.config.xAxisPosition,
                      showXAxis: boolean,
                      showYAxis: boolean,
                      spaceData: CalculateSpaceData
                  Severity: Major
                  Found in packages/mermaid/src/diagrams/quadrant-chart/quadrantBuilder.ts - About 3 hrs to fix

                    File svgDraw.js has 309 lines of code (exceeds 250 allowed). Consider refactoring.
                    Open

                    import { arc as d3arc } from 'd3';
                    import * as svgDrawCommon from '../common/svgDrawCommon.js';
                    
                    export const drawRect = function (elem, rectData) {
                      return svgDrawCommon.drawRect(elem, rectData);
                    Severity: Minor
                    Found in packages/mermaid/src/diagrams/user-journey/svgDraw.js - About 3 hrs to fix

                      File gitGraphRenderer-old.js has 309 lines of code (exceeds 250 allowed). Consider refactoring.
                      Open

                      import { curveBasis, line, select } from 'd3';
                      
                      import db from './gitGraphAst.js';
                      import { logger } from '../../logger.js';
                      import { interpolateToCurve } from '../../utils.js';
                      Severity: Minor
                      Found in packages/mermaid/src/diagrams/git/gitGraphRenderer-old.js - About 3 hrs to fix

                        Function addEdges has 85 lines of code (exceeds 25 allowed). Consider refactoring.
                        Open

                        export const addEdges = async function (edges, g, diagObj) {
                          let cnt = 0;
                        
                          let defaultStyle;
                          let defaultLabelStyle;
                        Severity: Major
                        Found in packages/mermaid/src/diagrams/flowchart/flowRenderer.js - About 3 hrs to fix

                          Function drawEdge has 85 lines of code (exceeds 25 allowed). Consider refactoring.
                          Open

                          export const drawEdge = function (elem, path, relation) {
                            const getRelationType = function (type) {
                              switch (type) {
                                case stateDb.relationType.AGGREGATION:
                                  return 'aggregation';
                          Severity: Major
                          Found in packages/mermaid/src/diagrams/state/shapes.js - About 3 hrs to fix

                            File theme.spec.js has 307 lines of code (exceeds 250 allowed). Consider refactoring.
                            Open

                            import { imgSnapshotTest } from '../../helpers/util.ts';
                            
                            describe('themeCSS balancing, it', () => {
                              it('should not allow unbalanced CSS definitions', () => {
                                imgSnapshotTest(
                            Severity: Minor
                            Found in cypress/integration/rendering/theme.spec.js - About 3 hrs to fix

                              Function rectWithTitle has 84 lines of code (exceeds 25 allowed). Consider refactoring.
                              Open

                              const rectWithTitle = (parent, node) => {
                                // const { shapeSvg, bbox, halfPadding } = labelHelper(parent, node, 'node ' + node.classes);
                              
                                let classes;
                                if (!node.classes) {
                              Severity: Major
                              Found in packages/mermaid/src/dagre-wrapper/nodes.js - About 3 hrs to fix

                                Function getQuadrants has 83 lines of code (exceeds 25 allowed). Consider refactoring.
                                Open

                                  getQuadrants(spaceData: CalculateSpaceData): QuadrantQuadrantsType[] {
                                    const { quadrantSpace } = spaceData;
                                
                                    const { quadrantHalfHeight, quadrantLeft, quadrantHalfWidth, quadrantTop } = quadrantSpace;
                                
                                
                                Severity: Major
                                Found in packages/mermaid/src/diagrams/quadrant-chart/quadrantBuilder.ts - About 3 hrs to fix

                                  Function drawActorTypeActor has 82 lines of code (exceeds 25 allowed). Consider refactoring.
                                  Open

                                  const drawActorTypeActor = async function (elem, actor, conf, isFooter) {
                                    const actorY = isFooter ? actor.stopy : actor.starty;
                                    const center = actor.x + actor.width / 2;
                                    const centerY = actorY + 80;
                                  
                                  
                                  Severity: Major
                                  Found in packages/mermaid/src/diagrams/sequence/svgDraw.js - About 3 hrs to fix

                                    Function cherryPick has 82 lines of code (exceeds 25 allowed). Consider refactoring.
                                    Open

                                    export const cherryPick = function (sourceId, targetId, tag, parentCommitId) {
                                      log.debug('Entering cherryPick:', sourceId, targetId, tag);
                                      sourceId = common.sanitizeText(sourceId, getConfig());
                                      targetId = common.sanitizeText(targetId, getConfig());
                                      tag = common.sanitizeText(tag, getConfig());
                                    Severity: Major
                                    Found in packages/mermaid/src/diagrams/git/gitGraphAst.js - About 3 hrs to fix

                                      Function insertEdgeLabel has 81 lines of code (exceeds 25 allowed). Consider refactoring.
                                      Open

                                      export const insertEdgeLabel = (elem, edge) => {
                                        const useHtmlLabels = evaluate(getConfig().flowchart.htmlLabels);
                                        // Create the actual text element
                                        const labelElement =
                                          edge.labelType === 'markdown'
                                      Severity: Major
                                      Found in packages/mermaid/src/dagre-wrapper/edges.js - About 3 hrs to fix

                                        File erDiagram.spec.js has 300 lines of code (exceeds 250 allowed). Consider refactoring.
                                        Open

                                        import { imgSnapshotTest, renderGraph } from '../../helpers/util.ts';
                                        
                                        describe('Entity Relationship Diagram', () => {
                                          it('should render a simple ER diagram', () => {
                                            imgSnapshotTest(
                                        Severity: Minor
                                        Found in cypress/integration/rendering/erDiagram.spec.js - About 3 hrs to fix
                                          Severity
                                          Category
                                          Status
                                          Source
                                          Language