Merge branch 'eslint-fix' of https://github.com/mmorel-35/mermaid into mmorel-35-eslint-fix

This commit is contained in:
Knut Sveidqvist
2021-11-18 18:05:15 +01:00
61 changed files with 4465 additions and 3079 deletions

View File

@@ -33,6 +33,7 @@ const splitClassNameAndType = function (id) {
/**
* Function called by parser when a node definition has been found.
*
* @param id
* @public
*/
@@ -56,6 +57,7 @@ export const addClass = function (id) {
/**
* Function to lookup domId from id in the graph definition.
*
* @param id
* @public
*/
@@ -98,8 +100,9 @@ export const addRelation = function (relation) {
};
/**
* Adds an annotation to the specified class
* Annotations mark special properties of the given type (like 'interface' or 'service')
* Adds an annotation to the specified class Annotations mark special properties of the given type
* (like 'interface' or 'service')
*
* @param className The class name
* @param annotation The name of the annotation without any brackets
* @public
@@ -111,11 +114,11 @@ export const addAnnotation = function (className, annotation) {
/**
* Adds a member to the specified class
*
* @param className The class name
* @param member The full name of the member.
* If the member is enclosed in <<brackets>> it is treated as an annotation
* If the member is ending with a closing bracket ) it is treated as a method
* Otherwise the member will be treated as a normal property
* @param member The full name of the member. If the member is enclosed in <<brackets>> it is
* treated as an annotation If the member is ending with a closing bracket ) it is treated as a
* method Otherwise the member will be treated as a normal property
* @public
*/
export const addMember = function (className, member) {
@@ -154,6 +157,7 @@ export const cleanupLabel = function (label) {
/**
* Called by parser when a special node is found, e.g. a clickable element.
*
* @param ids Comma separated list of ids
* @param className Class to add
*/
@@ -169,6 +173,7 @@ export const setCssClass = function (ids, className) {
/**
* Called by parser when a tooltip is found, e.g. a clickable element.
*
* @param ids Comma separated list of ids
* @param tooltip Tooltip to add
*/
@@ -183,6 +188,7 @@ const setTooltip = function (ids, tooltip) {
/**
* Called by parser when a link is found. Adds the URL to the vertex data.
*
* @param ids Comma separated list of ids
* @param linkStr URL to create a link for
* @param target Target of the link, _blank by default as originally defined in the svgDraw.js file
@@ -206,6 +212,7 @@ export const setLink = function (ids, linkStr, target) {
/**
* Called by parser when a click definition is found. Registers an event handler.
*
* @param ids Comma separated list of ids
* @param functionName Function to be called on click
* @param functionArgs Function args the function should be called with

View File

@@ -25,7 +25,12 @@ const conf = {
/**
* Function that adds the vertices found during parsing to the graph to be rendered.
* @param {Object<string, { cssClasses: Array<string>; text: string; id: string; type: string; domId: string; }>} classes Object containing the vertices.
*
* @param {Object<
* string,
* { cssClasses: string[]; text: string; id: string; type: string; domId: string }
* >} classes
* Object containing the vertices.
* @param {SVGGElement} g The graph that is to be drawn.
*/
export const addClasses = function (classes, g) {
@@ -40,6 +45,7 @@ export const addClasses = function (classes, g) {
/**
* Variable for storing the classes for the vertex
*
* @type {string}
*/
let cssClassStr = '';
@@ -130,8 +136,9 @@ export const addClasses = function (classes, g) {
/**
* Add edges to graph based on parsed graph defninition
* @param {Object} edges The edges to add to the graph
* @param {Object} g The graph object
*
* @param relations
* @param {object} g The graph object
*/
export const addRelations = function (relations, g) {
let cnt = 0;
@@ -207,7 +214,8 @@ export const addRelations = function (relations, g) {
edgeData.arrowheadStyle = 'fill: #333';
edgeData.labelpos = 'c';
if (getConfig().flowchart.htmlLabels) { // eslint-disable-line
if (getConfig().flowchart.htmlLabels) {
// eslint-disable-line
edgeData.labelType = 'html';
edgeData.label = '<span class="edgeLabel">' + edge.text + '</span>';
} else {
@@ -228,6 +236,7 @@ export const addRelations = function (relations, g) {
/**
* Gets the ID with the same label as in the cache
*
* @param {string} label The label to look for
* @returns {string} The resulting ID
*/
@@ -241,7 +250,8 @@ const getGraphId = function (label) {
/**
* Merges the value of `conf` with the passed `cnf`
* @param {Object} cnf Config to merge
*
* @param {object} cnf Config to merge
*/
export const setConf = function (cnf) {
const keys = Object.keys(cnf);
@@ -253,6 +263,7 @@ export const setConf = function (cnf) {
/**
* Draws a flowchart in the tag with id: id based on the graph definition in text.
*
* @param {string} text
* @param {string} id
*/
@@ -504,8 +515,9 @@ export const draw = function (text, id) {
/**
* Gets the arrow marker for a type index
*
* @param {number} type The type to look for
* @returns {"aggregation" | "extension" | "composition" | "dependency"} The arrow marker
* @returns {'aggregation' | 'extension' | 'composition' | 'dependency'} The arrow marker
*/
function getArrowMarker(type) {
let marker;

View File

@@ -20,6 +20,7 @@ const conf = {
/**
* Gets the ID with the same label as in the cache
*
* @param {string} label The label to look for
* @returns {string} The resulting ID
*/
@@ -33,6 +34,7 @@ const getGraphId = function (label) {
/**
* Setup arrow head and define the marker. The result is appended to the svg.
*
* @param {SVGSVGElement} elem The SVG element to append to
*/
const insertMarkers = function (elem) {
@@ -139,7 +141,8 @@ const insertMarkers = function (elem) {
/**
* Merges the value of `conf` with the passed `cnf`
* @param {Object} cnf Config to merge
*
* @param {object} cnf Config to merge
*/
export const setConf = function (cnf) {
const keys = Object.keys(cnf);
@@ -151,6 +154,7 @@ export const setConf = function (cnf) {
/**
* Draws a flowchart in the tag with id: id based on the graph definition in text.
*
* @param {string} text
* @param {string} id
*/

View File

@@ -146,7 +146,10 @@ export const drawEdge = function (elem, path, relation, conf) {
/**
* Renders a class diagram
*
* @param {SVGSVGElement} elem The element to draw it into
* @param classDef
* @param conf
* @todo Add more information in the JSDOC here
*/
export const drawClass = function (elem, classDef, conf) {
@@ -389,10 +392,11 @@ const buildLegacyDisplay = function (text) {
/**
* Adds a <tspan> for a member in a diagram
*
* @param {SVGElement} textEl The element to append to
* @param {string} txt The member
* @param {boolean} isFirst
* @param {{ padding: string; textHeight: string; }} conf The configuration for the member
* @param {{ padding: string; textHeight: string }} conf The configuration for the member
*/
const addTspan = function (textEl, txt, isFirst, conf) {
let member = parseMember(txt);
@@ -410,9 +414,11 @@ const addTspan = function (textEl, txt, isFirst, conf) {
/**
* Makes generics in typescript syntax
*
* @example <caption>Array of array of strings in typescript syntax</caption>
* // returns "Array<Array<string>>"
* parseGenericTypes("Array~Array~string~~");
* // returns "Array<Array<string>>"
* parseGenericTypes('Array~Array~string~~');
*
* @param {string} text The text to convert
* @returns {string} The converted string
*/
@@ -431,7 +437,8 @@ const parseGenericTypes = function (text) {
/**
* Gives the styles for a classifier
* @param {"+" | "-" | "#" | "~" | "*" | "$"} classifier The classifier string
*
* @param {'+' | '-' | '#' | '~' | '*' | '$'} classifier The classifier string
* @returns {string} Styling for the classifier
*/
const parseClassifier = function (classifier) {