8 lines
40 KiB
Plaintext
8 lines
40 KiB
Plaintext
|
|
{
|
||
|
|
"version": 3,
|
||
|
|
"sources": ["../../../src/diagrams/state/shapes.js", "../../../src/diagrams/state/stateRenderer.js", "../../../src/diagrams/state/stateDiagram.ts"],
|
||
|
|
"sourcesContent": ["import { line, curveBasis } from 'd3';\nimport { StateDB } from './stateDb.js';\nimport utils from '../../utils.js';\nimport common, { getUrl } from '../common/common.js';\nimport { getConfig } from '../../diagram-api/diagramAPI.js';\nimport { log } from '../../logger.js';\n\n/**\n * Draws a start state as a black circle\n *\n * @param {any} g\n */\nexport const drawStartState = (g) =>\n g\n .append('circle')\n // .style('stroke', 'black')\n // .style('fill', 'black')\n .attr('class', 'start-state')\n .attr('r', getConfig().state.sizeUnit)\n .attr('cx', getConfig().state.padding + getConfig().state.sizeUnit)\n .attr('cy', getConfig().state.padding + getConfig().state.sizeUnit);\n\n/**\n * Draws a start state as a black circle\n *\n * @param {any} g\n */\nexport const drawDivider = (g) =>\n g\n .append('line')\n .style('stroke', 'grey')\n .style('stroke-dasharray', '3')\n .attr('x1', getConfig().state.textHeight)\n .attr('class', 'divider')\n .attr('x2', getConfig().state.textHeight * 2)\n .attr('y1', 0)\n .attr('y2', 0);\n\n/**\n * Draws an end state as a black circle\n *\n * @param {any} g\n * @param {any} stateDef\n */\nexport const drawSimpleState = (g, stateDef) => {\n const state = g\n .append('text')\n .attr('x', 2 * getConfig().state.padding)\n .attr('y', getConfig().state.textHeight + 2 * getConfig().state.padding)\n .attr('font-size', getConfig().state.fontSize)\n .attr('class', 'state-title')\n .text(stateDef.id);\n\n const classBox = state.node().getBBox();\n g.insert('rect', ':first-child')\n .attr('x', getConfig().state.padding)\n .attr('y', getConfig().state.padding)\n .attr('width', classBox.width + 2 * getConfig().state.padding)\n .attr('height', classBox.height + 2 * getConfig().state.padding)\n .attr('rx', getConfig().state.radius);\n\n return state;\n};\n\n/**\n * Draws a state with descriptions\n *\n * @param {any} g The d3 svg object to add the state to\n * @param {any} stateDef\n * @returns {any} The d3 svg state\n */\nexport const drawDescrState = (g, stateDef) => {\n const addTspan = function (textEl, txt, isFirst) {\n const tSpan = textEl\n .append('tspan')\n .attr('x', 2 * getConfig().state.padding)\n .text(txt);\n if (!isFirst) {\n tSpan.attr('dy', getConfig().state.textHeight);\n }\n };\n const title = g\n .append('text')\n .attr('x', 2 * getConfig().state.padding)\n .attr('y', getConfig().state.textHeight + 1.3 * getConfig().state.padding)\n .attr('font-size', getConfig().state.fontSize)\n .attr('class', 'state-title')\n .text(stateDef.descriptions[0]);\n\n const titleBox = title.node().getBBox();\n const titleHeight = titleBox.height;\n\n const description = g\n .append('text') // text label for the x axis\n .attr('x', getConfig().state.padding)\n .attr(\n 'y',\n titleHeight +\n getConfig().state.padding * 0.4 +\n getConfig().state.dividerMargin +\n getConfig().state.textHeight\n )\n .attr('class', 'state-description');\n\n let isFirst = true;\n let isSecond = true;\n stateDef.descriptions.forEach(function (descr) {\n if (!isFirst) {\n addTspan(description, descr, isSecond);\n isSecond = false;\n }\n isFirst = false;\n });\n\n const descrLine = g\n .append('line') // text label for the x axis\n .attr('x1', getConfig().state.padding)\n .attr('y1', getConfig().state.padding + titleHeight + getConfig().state.dividerMargin / 2)\n .attr('y2', getConfig().state.padding + titleHeight + getConfig().state.dividerMargin / 2)\n .attr('class', 'descr-divider');\n const descrBox = description.node().getBBox();\n const width = Math.max(descrBox.width, titleBox.width);\n\n descrLine.attr('x2', width + 3 * getConfig().state.padding);\n // const classBox = title.node().getBBox();\n\n g.insert('rect', ':first-child')\n .attr('x', getConfig().state.padding)\n .attr('y', getConfig().state.padding)\n .attr('width', width + 2 * getConfig().state.padding)\n
|
||
|
|
"mappings": "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
|
||
|
|
"names": ["drawStartState", "__name", "g", "getConfig", "drawDivider", "drawSimpleState", "stateDef", "state", "classBox", "drawDescrState", "addTspan", "textEl", "txt", "isFirst", "tSpan", "titleBox", "titleHeight", "description", "isSecond", "descr", "descrLine", "descrBox", "width", "addTitleAndBox", "altBkg", "pad", "dblPad", "orgBox", "orgWidth", "orgX", "title", "titleWidth", "startX", "graphBox", "lineY", "drawEndState", "drawForkJoinState", "height", "tmp", "_drawLongText", "__name", "_text", "x", "y", "g", "textHeight", "textElem", "text", "lines", "common_default", "tHeight", "getConfig", "line", "txt", "span", "textBounds", "drawNote", "note", "rectElem", "textWidth", "drawState", "elem", "stateDef", "id", "stateInfo", "drawStartState", "drawEndState", "drawForkJoinState", "drawDivider", "drawSimpleState", "drawDescrState", "stateBox", "edgeCount", "drawEdge", "path", "relation", "getRelationType", "type", "StateDB", "p", "lineData", "lineFunction", "line_default", "d", "basis_default", "svgPath", "url", "getUrl", "label", "utils_default", "rows", "titleHeight", "titleRows", "maxWidth", "minX", "i", "title", "boundsTmp", "log", "boxHeight", "heightAdj", "bounds", "conf", "transformationLog", "setConf", "__name", "insertMarkers", "elem", "draw", "text", "id", "_version", "diagObj", "getConfig", "securityLevel", "sandboxElement", "select_default", "root", "doc", "log", "diagram", "rootDoc", "renderDoc", "padding", "bounds", "width", "height", "svgWidth", "configureSvgSize", "getLabelWidth", "parentId", "altBkg", "domDocument", "graph", "Graph", "i", "edgeFreeDoc", "states", "relations", "keys", "first", "key", "stateDef", "node", "sub", "addTitleAndBox", "boxBounds", "drawState", "noteDef", "note", "cnt", "relation", "common_default", "layout", "svgElem", "v", "divider", "parent", "pWidth", "pShift", "stateBox", "e", "drawEdge", "stateInfo", "stateRenderer_default", "diagram", "stateDiagram_default", "StateDB", "stateRenderer_default", "styles_default", "__name", "cnf"]
|
||
|
|
}
|