@zukhruf/diagram 0.3.30 → 0.3.32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. package/dist/lib/layouts/graph/areas.d.ts +27 -0
  2. package/dist/lib/layouts/graph/areas.d.ts.map +1 -0
  3. package/dist/lib/layouts/graph/areas.js +196 -0
  4. package/dist/lib/layouts/graph/areas.js.map +1 -0
  5. package/dist/lib/layouts/graph/graph-layout-result.d.ts +95 -0
  6. package/dist/lib/layouts/graph/graph-layout-result.d.ts.map +1 -0
  7. package/dist/lib/layouts/graph/graph-layout-result.js +2 -0
  8. package/dist/lib/layouts/graph/graph-layout-result.js.map +1 -0
  9. package/dist/lib/layouts/graph/graph-layout.d.ts +2 -1
  10. package/dist/lib/layouts/graph/graph-layout.d.ts.map +1 -1
  11. package/dist/lib/layouts/graph/graph-layout.js +5 -3
  12. package/dist/lib/layouts/graph/graph-layout.js.map +1 -1
  13. package/dist/lib/layouts/graph/gutters.d.ts +25 -0
  14. package/dist/lib/layouts/graph/gutters.d.ts.map +1 -0
  15. package/dist/lib/layouts/graph/gutters.js +124 -0
  16. package/dist/lib/layouts/graph/gutters.js.map +1 -0
  17. package/dist/lib/layouts/graph/layout.d.ts +10 -0
  18. package/dist/lib/layouts/graph/layout.d.ts.map +1 -0
  19. package/dist/lib/layouts/graph/layout.js +164 -0
  20. package/dist/lib/layouts/graph/layout.js.map +1 -0
  21. package/dist/lib/layouts/graph/legacy-graph-layout.d.ts +6 -0
  22. package/dist/lib/layouts/graph/legacy-graph-layout.d.ts.map +1 -0
  23. package/dist/lib/layouts/graph/legacy-graph-layout.js +542 -0
  24. package/dist/lib/layouts/graph/legacy-graph-layout.js.map +1 -0
  25. package/dist/lib/layouts/graph/measure.d.ts +44 -0
  26. package/dist/lib/layouts/graph/measure.d.ts.map +1 -0
  27. package/dist/lib/layouts/graph/measure.js +372 -0
  28. package/dist/lib/layouts/graph/measure.js.map +1 -0
  29. package/dist/lib/layouts/graph/node-content.d.ts +16 -0
  30. package/dist/lib/layouts/graph/node-content.d.ts.map +1 -0
  31. package/dist/lib/layouts/graph/node-content.js +323 -0
  32. package/dist/lib/layouts/graph/node-content.js.map +1 -0
  33. package/dist/lib/layouts/graph/text-block.d.ts +19 -0
  34. package/dist/lib/layouts/graph/text-block.d.ts.map +1 -0
  35. package/dist/lib/layouts/graph/text-block.js +86 -0
  36. package/dist/lib/layouts/graph/text-block.js.map +1 -0
  37. package/dist/lib/layouts/graph/tokens.d.ts +53 -0
  38. package/dist/lib/layouts/graph/tokens.d.ts.map +1 -0
  39. package/dist/lib/layouts/graph/tokens.js +95 -0
  40. package/dist/lib/layouts/graph/tokens.js.map +1 -0
  41. package/dist/lib/layouts/graph/tracks.d.ts +20 -0
  42. package/dist/lib/layouts/graph/tracks.d.ts.map +1 -0
  43. package/dist/lib/layouts/graph/tracks.js +47 -0
  44. package/dist/lib/layouts/graph/tracks.js.map +1 -0
  45. package/dist/lib/layouts/text/font-metrics.generated.d.ts +18 -0
  46. package/dist/lib/layouts/text/font-metrics.generated.d.ts.map +1 -0
  47. package/dist/lib/layouts/text/font-metrics.generated.js +1043 -0
  48. package/dist/lib/layouts/text/font-metrics.generated.js.map +1 -0
  49. package/dist/lib/layouts/text/font.d.ts +14 -0
  50. package/dist/lib/layouts/text/font.d.ts.map +1 -0
  51. package/dist/lib/layouts/text/font.js +11 -0
  52. package/dist/lib/layouts/text/font.js.map +1 -0
  53. package/dist/lib/layouts/text/measure-text.d.ts +13 -0
  54. package/dist/lib/layouts/text/measure-text.d.ts.map +1 -0
  55. package/dist/lib/layouts/text/measure-text.js +67 -0
  56. package/dist/lib/layouts/text/measure-text.js.map +1 -0
  57. package/dist/lib/model/diagram-ir.d.ts +11 -1
  58. package/dist/lib/model/diagram-ir.d.ts.map +1 -1
  59. package/dist/lib/model/diagram-ir.js.map +1 -1
  60. package/dist/lib/renderers/canvas/graph-canvas.d.ts.map +1 -1
  61. package/dist/lib/renderers/canvas/graph-canvas.js +148 -138
  62. package/dist/lib/renderers/canvas/graph-canvas.js.map +1 -1
  63. package/dist/lib/renderers/html/graph-html.d.ts.map +1 -1
  64. package/dist/lib/renderers/html/graph-html.js +462 -511
  65. package/dist/lib/renderers/html/graph-html.js.map +1 -1
  66. package/dist/lib/renderers/shared/graph-parts.d.ts +15 -13
  67. package/dist/lib/renderers/shared/graph-parts.d.ts.map +1 -1
  68. package/dist/lib/renderers/shared/graph-parts.js +649 -644
  69. package/dist/lib/renderers/shared/graph-parts.js.map +1 -1
  70. package/dist/lib/renderers/shared/node-parts.d.ts +20 -19
  71. package/dist/lib/renderers/shared/node-parts.d.ts.map +1 -1
  72. package/dist/lib/renderers/shared/node-parts.js +678 -811
  73. package/dist/lib/renderers/shared/node-parts.js.map +1 -1
  74. package/dist/lib/renderers/shared/run-spans.d.ts +8 -0
  75. package/dist/lib/renderers/shared/run-spans.d.ts.map +1 -0
  76. package/dist/lib/renderers/shared/run-spans.js +18 -0
  77. package/dist/lib/renderers/shared/run-spans.js.map +1 -0
  78. package/dist/lib/renderers/shared/text-runs.d.ts +21 -0
  79. package/dist/lib/renderers/shared/text-runs.d.ts.map +1 -0
  80. package/dist/lib/renderers/shared/text-runs.js +44 -0
  81. package/dist/lib/renderers/shared/text-runs.js.map +1 -0
  82. package/dist/lib/renderers/svg/graph-svg.d.ts.map +1 -1
  83. package/dist/lib/renderers/svg/graph-svg.js +304 -465
  84. package/dist/lib/renderers/svg/graph-svg.js.map +1 -1
  85. package/dist/lib/renderers/svg/timeline-svg.d.ts.map +1 -1
  86. package/dist/lib/renderers/svg/timeline-svg.js +10 -5
  87. package/dist/lib/renderers/svg/timeline-svg.js.map +1 -1
  88. package/dist/lib/renderers/webgpu/graph-flow-effects.d.ts +2 -2
  89. package/dist/lib/renderers/webgpu/graph-flow-effects.d.ts.map +1 -1
  90. package/dist/lib/renderers/webgpu/graph-flow-effects.js.map +1 -1
  91. package/package.json +3 -1
  92. package/styles.css +8 -0
@@ -1 +1 @@
1
- {"version":3,"file":"node-parts.js","names":["motion","useTransform","nodeCaptionBounds","nodeCaptionPlacement","nodePortPlacements","nodeStackCount","nodeStackFrameBox","DIAGRAM_BG","DIAGRAM_DIM","DIAGRAM_NEUTRAL","DIAGRAM_TEXT","resolveDiagramToneFill","resolveDiagramToneStroke","useDiagramTheme","DiagramNodeIcon","PortMarkers","labelLineFill","nodeTextFill","textureFill","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","ANNOTATION_REVEAL_START","isSpecialNode","node","kind","undefined","SpecialNode","t0","$","_c","box","progress","start","end","accent","themeAccent","ids","t1","t2","t3","Symbol","for","clamp","opacity","t4","t5","t6","translateY","centerY","cx","fill","lineHeight","lines","t7","bb0","frame","Array","isArray","label","fontSize","Math","max","y","h","x","w","t8","tone","applianceStroke","t9","applianceFill","t10","texture","t11","applianceTexture","bodyX","bodyY","min","bodyW","bodyH","slant","t12","t13","t14","t15","t16","bodyPath","join","showAntenna","antenna","visualPortCount","floor","appliancePorts","portY","portStartX","portSpacing","labelLines","filter","_temp","labelY","t17","id","t18","t19","children","x1","y1","x2","y2","strokeWidth","strokeLinecap","t20","strokeLinejoin","t21","pointerEvents","t22","t23","t24","t25","t26","t27","t28","_","i","width","height","rx","from","length","textAnchor","fontFamily","fontWeight","map","line_0","i_0","lineText","line","text","lineFill","dy","t29","t30","NodePorts","NodeCaption","t31","g","style","connectorStroke","connectorFill","connectorTexture","connectorRx","connectorIconSize","iconSize","connectorFontSize","connectorLineHeight","connectorLines","_temp2","hasConnectorText","iconX","iconY","textX","icon","textY","line_2","i_1","lineText_0","lineFill_0","markerIconSize","markerFontSize","markerLineHeight","markerLines","_temp3","labelGap","labelBlockHeight","totalHeight","round","iconX_0","iconY_0","markerLabelY","markerStroke","stroke","line_4","i_2","lineText_1","lineFill_1","junctionStroke","junctionFill","r","some","Boolean","line_5","i_3","lineText_2","line_3","line_1","NodeStackFrames","stackCount","level","stackBox","ownerId","placements","placement","captionColor","captionFrame","align","captionFontWeight","AnnotationText","annotation","index","color","lineGap","targets","annotationTargets","annotationId","target","anchor","leaderFrom","leaderTo","leaders","route","to","points","leader","leaderIndex","d","annotationLeaderPath","guide","point"],"sources":["../../../../src/lib/renderers/shared/node-parts.tsx"],"sourcesContent":["import { type MotionValue, motion, useTransform } from 'motion/react';\n\nimport {\n type ResolvedDiagramAnnotation,\n nodeCaptionBounds,\n nodeCaptionPlacement,\n nodePortPlacements,\n nodeStackCount,\n nodeStackFrameBox,\n} from '../../layouts/graph/graph-layout.ts';\nimport type { DiagramNode, Box as SvgBox } from '../../model/diagram-ir.ts';\nimport {\n DIAGRAM_BG,\n DIAGRAM_DIM,\n DIAGRAM_NEUTRAL,\n DIAGRAM_TEXT,\n resolveDiagramToneFill,\n resolveDiagramToneStroke,\n useDiagramTheme,\n} from '../../react/chrome/index.ts';\nimport {\n DiagramNodeIcon,\n PortMarkers,\n labelLineFill,\n nodeTextFill,\n textureFill,\n} from './graph-parts.tsx';\n\nexport const ANNOTATION_REVEAL_START = 0.85;\n\nexport function isSpecialNode(node: DiagramNode) {\n return node.kind !== undefined && node.kind !== 'node';\n}\n\nexport function SpecialNode({\n node,\n box,\n progress,\n start,\n end,\n}: {\n node: DiagramNode;\n box: SvgBox;\n progress: MotionValue<number>;\n start: number;\n end: number;\n}) {\n const { accent: themeAccent, ids } = useDiagramTheme();\n const opacity = useTransform(progress, [start, end], [0, 1], {\n clamp: true,\n });\n const translateY = useTransform(progress, [start, end], [-10, 0], {\n clamp: true,\n });\n const fill = nodeTextFill(node, node.frame ?? 'solid', themeAccent);\n const lines = Array.isArray(node.label) ? node.label : [node.label];\n const fontSize = node.fontSize ?? 12;\n const lineHeight = Math.max(12, fontSize + 2);\n const centerY = box.y + box.h / 2;\n const cx = box.x + box.w / 2;\n if (node.kind === 'appliance') {\n const applianceStroke = node.accent\n ? themeAccent\n : node.tone\n ? resolveDiagramToneStroke(node.tone)\n : DIAGRAM_NEUTRAL;\n const applianceFill = node.tone\n ? resolveDiagramToneFill(node.tone)\n : DIAGRAM_BG;\n const applianceTexture = textureFill(node.texture ?? 'none', ids);\n const bodyX = box.x + 4;\n const bodyY = box.y + Math.max(12, Math.min(22, box.h * 0.28));\n const bodyW = Math.max(36, box.w - 8);\n const bodyH = Math.max(24, box.h - (bodyY - box.y) - 12);\n const slant = Math.max(\n 4,\n Math.min(node.slant ?? 16, bodyW * 0.28, bodyH * 0.75),\n );\n const bodyPath = [\n `M ${bodyX + slant} ${bodyY}`,\n `L ${bodyX + bodyW} ${bodyY + 6}`,\n `L ${bodyX + bodyW - slant} ${bodyY + bodyH}`,\n `L ${bodyX} ${bodyY + bodyH - 6}`,\n 'Z',\n ].join(' ');\n const showAntenna = node.antenna ?? true;\n const visualPortCount = Math.max(0, Math.floor(node.appliancePorts ?? 4));\n const portY = bodyY + bodyH - 15;\n const portStartX = bodyX + slant + 16;\n const portSpacing = Math.min(\n 13,\n Math.max(8, (bodyW - slant - 42) / Math.max(visualPortCount, 1)),\n );\n const labelLines = lines.filter((line) =>\n typeof line === 'string' ? line.length > 0 : line.text.length > 0,\n );\n const labelY = bodyY + bodyH + Math.max(12, fontSize + 2);\n\n return (\n <motion.g\n data-diagram-appliance={node.id}\n style={{ opacity, y: translateY }}\n >\n {showAntenna && (\n <g data-diagram-appliance-antenna={node.id}>\n <line\n x1={bodyX + slant + bodyW * 0.18}\n y1={bodyY + 1}\n x2={bodyX + slant + bodyW * 0.2 - 3}\n y2={box.y + 3}\n stroke={applianceStroke}\n strokeWidth={1.5}\n strokeLinecap=\"round\"\n />\n <line\n x1={bodyX + slant + bodyW * 0.2 + 1}\n y1={bodyY + 2}\n x2={bodyX + slant + bodyW * 0.2 + 1}\n y2={box.y + 8}\n stroke={applianceStroke}\n strokeWidth={1}\n strokeLinecap=\"round\"\n />\n </g>\n )}\n <path\n data-diagram-node={node.id}\n data-diagram-node-tone={node.tone}\n data-diagram-appliance-body={node.id}\n d={bodyPath}\n fill={applianceFill}\n stroke={applianceStroke}\n strokeWidth={1.5}\n strokeLinejoin=\"round\"\n />\n {applianceTexture && (\n <path\n data-diagram-node-texture={`${node.id}:${node.texture ?? 'none'}`}\n d={bodyPath}\n fill={applianceTexture}\n pointerEvents=\"none\"\n />\n )}\n <line\n data-diagram-appliance-face={node.id}\n x1={bodyX + slant}\n y1={bodyY + bodyH - 1}\n x2={bodyX + bodyW - slant}\n y2={bodyY + bodyH + 3}\n stroke={applianceStroke}\n strokeWidth={1}\n strokeLinecap=\"round\"\n opacity={0.85}\n />\n {Array.from({ length: visualPortCount }, (_, i) => (\n <rect\n key={i}\n data-diagram-appliance-port={`${node.id}:${i}`}\n x={portStartX + i * portSpacing}\n y={portY}\n width={5}\n height={12}\n rx={1}\n fill={DIAGRAM_BG}\n stroke={applianceStroke}\n strokeWidth={1}\n />\n ))}\n {labelLines.length > 0 && (\n <text\n data-diagram-appliance-label={node.id}\n x={cx}\n y={labelY}\n textAnchor=\"middle\"\n fontFamily=\"ui-sans-serif, system-ui, sans-serif\"\n fontSize={fontSize}\n fontWeight={node.fontWeight ?? 600}\n fill={fill}\n >\n {labelLines.map((line, i) => {\n const lineText = typeof line === 'string' ? line : line.text;\n const lineFill = labelLineFill(line, fill, themeAccent);\n return (\n <tspan\n key={i}\n x={cx}\n dy={i === 0 ? 0 : lineHeight}\n fill={lineFill}\n fontWeight={\n typeof line === 'string'\n ? (node.fontWeight ?? 600)\n : (line.fontWeight ?? node.fontWeight ?? 600)\n }\n >\n {lineText}\n </tspan>\n );\n })}\n </text>\n )}\n <NodePorts node={node} box={box} />\n <NodeCaption node={node} box={box} />\n </motion.g>\n );\n }\n if (node.kind === 'connector') {\n const connectorStroke = node.accent\n ? themeAccent\n : node.tone\n ? resolveDiagramToneStroke(node.tone)\n : DIAGRAM_NEUTRAL;\n const connectorFill = node.tone\n ? resolveDiagramToneFill(node.tone)\n : DIAGRAM_BG;\n const connectorTexture = textureFill(\n node.texture ?? (node.tone ? 'dots' : 'none'),\n ids,\n );\n const connectorRx = node.rx ?? Math.min(12, box.h / 2);\n const connectorIconSize = node.iconSize ?? 18;\n const connectorFontSize = node.fontSize ?? 10;\n const connectorLineHeight = Math.max(12, connectorFontSize + 2);\n const connectorLines = lines.filter((line) =>\n typeof line === 'string' ? line.length > 0 : line.text.length > 0,\n );\n const hasConnectorText = connectorLines.length > 0;\n const iconX = box.x + 10;\n const iconY = centerY - connectorIconSize / 2;\n const textX = node.icon ? iconX + connectorIconSize + 8 : box.x + box.w / 2;\n const textAnchor = node.icon ? ('start' as const) : ('middle' as const);\n const textY =\n centerY -\n ((connectorLines.length - 1) * connectorLineHeight) / 2 +\n connectorFontSize * 0.35;\n\n return (\n <motion.g style={{ opacity, y: translateY }}>\n <rect\n data-diagram-node={node.id}\n data-diagram-connector={node.id}\n data-diagram-node-tone={node.tone}\n x={box.x}\n y={box.y}\n width={box.w}\n height={box.h}\n rx={connectorRx}\n fill={connectorFill}\n stroke={connectorStroke}\n strokeWidth={1.25}\n />\n {connectorTexture && (\n <rect\n data-diagram-node-texture={`${node.id}:${node.texture ?? 'dots'}`}\n x={box.x}\n y={box.y}\n width={box.w}\n height={box.h}\n rx={connectorRx}\n fill={connectorTexture}\n pointerEvents=\"none\"\n />\n )}\n {node.icon && (\n <DiagramNodeIcon\n icon={node.icon}\n x={iconX}\n y={iconY}\n size={connectorIconSize}\n color={fill}\n />\n )}\n {hasConnectorText && (\n <text\n data-diagram-connector-label={node.id}\n x={textX}\n y={textY}\n textAnchor={textAnchor}\n fontFamily=\"ui-sans-serif, system-ui, sans-serif\"\n fontSize={connectorFontSize}\n fontWeight={node.fontWeight ?? 700}\n fill={fill}\n >\n {connectorLines.map((line, i) => {\n const lineText = typeof line === 'string' ? line : line.text;\n const lineFill = labelLineFill(line, fill, themeAccent);\n return (\n <tspan\n key={i}\n x={textX}\n dy={i === 0 ? 0 : connectorLineHeight}\n fill={lineFill}\n fontWeight={\n typeof line === 'string'\n ? (node.fontWeight ?? 700)\n : (line.fontWeight ?? node.fontWeight ?? 700)\n }\n >\n {lineText}\n </tspan>\n );\n })}\n </text>\n )}\n <NodePorts node={node} box={box} />\n <NodeCaption node={node} box={box} />\n </motion.g>\n );\n }\n if (node.kind === 'marker') {\n const markerIconSize = node.iconSize ?? 34;\n const markerFontSize = node.fontSize ?? 11;\n const markerLineHeight = Math.max(12, markerFontSize + 2);\n const markerLines = lines.filter((line) =>\n typeof line === 'string' ? line.length > 0 : line.text.length > 0,\n );\n const labelGap = markerLines.length > 0 ? 8 : 0;\n const labelBlockHeight = markerLines.length * markerLineHeight;\n const totalHeight = markerIconSize + labelGap + labelBlockHeight;\n const iconX = Math.round(cx - markerIconSize / 2);\n const iconY = Math.round(box.y + (box.h - totalHeight) / 2);\n const markerLabelY = iconY + markerIconSize + labelGap + markerFontSize;\n const markerStroke = node.accent\n ? themeAccent\n : node.tone\n ? resolveDiagramToneStroke(node.tone)\n : fill;\n\n return (\n <motion.g\n data-diagram-marker={node.id}\n style={{ opacity, y: translateY }}\n >\n <rect\n data-diagram-node={node.id}\n data-diagram-marker-bounds={node.id}\n x={box.x}\n y={box.y}\n width={box.w}\n height={box.h}\n rx={node.rx ?? 0}\n fill=\"transparent\"\n stroke=\"none\"\n />\n <DiagramNodeIcon\n icon={node.icon ?? 'ellipsis'}\n x={iconX}\n y={iconY}\n size={markerIconSize}\n color={markerStroke}\n />\n {markerLines.length > 0 && (\n <text\n data-diagram-marker-label={node.id}\n x={cx}\n y={markerLabelY}\n textAnchor=\"middle\"\n fontFamily=\"ui-sans-serif, system-ui, sans-serif\"\n fontSize={markerFontSize}\n fontWeight={node.fontWeight ?? 700}\n fill={fill}\n >\n {markerLines.map((line, i) => {\n const lineText = typeof line === 'string' ? line : line.text;\n const lineFill = labelLineFill(line, fill, themeAccent);\n return (\n <tspan\n key={i}\n x={cx}\n dy={i === 0 ? 0 : markerLineHeight}\n fill={lineFill}\n fontWeight={\n typeof line === 'string'\n ? (node.fontWeight ?? 700)\n : (line.fontWeight ?? node.fontWeight ?? 700)\n }\n >\n {lineText}\n </tspan>\n );\n })}\n </text>\n )}\n <NodePorts node={node} box={box} />\n <NodeCaption node={node} box={box} />\n </motion.g>\n );\n }\n if (node.kind === 'junction') {\n const junctionStroke = node.accent\n ? themeAccent\n : node.tone\n ? resolveDiagramToneStroke(node.tone)\n : DIAGRAM_NEUTRAL;\n const junctionFill = node.accent\n ? themeAccent\n : node.tone\n ? resolveDiagramToneFill(node.tone)\n : DIAGRAM_BG;\n return (\n <motion.g style={{ opacity, y: translateY }}>\n <circle\n data-diagram-junction={node.id}\n cx={cx}\n cy={centerY}\n r={Math.max(4, Math.min(box.w, box.h) / 2)}\n fill={junctionFill}\n stroke={junctionStroke}\n strokeWidth={1.5}\n />\n {lines.some(Boolean) && (\n <text\n data-diagram-junction-label={node.id}\n x={cx}\n y={centerY - Math.max(8, box.h / 2 + 6)}\n textAnchor=\"middle\"\n fontFamily=\"ui-monospace, 'Geist Mono', monospace\"\n fontSize={node.fontSize ?? 10}\n fontWeight={node.fontWeight ?? 600}\n fill={fill}\n >\n {lines.map((line, i) => {\n const lineText = typeof line === 'string' ? line : line.text;\n return (\n <tspan key={i} x={cx} dy={i === 0 ? 0 : lineHeight}>\n {lineText}\n </tspan>\n );\n })}\n </text>\n )}\n <NodeCaption node={node} box={box} />\n </motion.g>\n );\n }\n return null;\n}\n\nexport function NodeStackFrames({\n node,\n box,\n rx,\n fill,\n stroke,\n strokeWidth,\n}: {\n node: DiagramNode;\n box: SvgBox;\n rx: number;\n fill: string;\n stroke: string;\n strokeWidth: number;\n}) {\n const stackCount = nodeStackCount(node);\n return Array.from({ length: stackCount - 1 }, (_, i) => {\n const level = stackCount - 1 - i;\n const stackBox = nodeStackFrameBox(node, box, level);\n return (\n <rect\n key={`stack-${level}`}\n data-diagram-node-stack={`${node.id}:${level}`}\n x={stackBox.x}\n y={stackBox.y}\n width={stackBox.w}\n height={stackBox.h}\n rx={rx}\n fill={fill}\n stroke={stroke}\n strokeWidth={strokeWidth}\n />\n );\n });\n}\n\nexport function NodePorts({ node, box }: { node: DiagramNode; box: SvgBox }) {\n return (\n <PortMarkers ownerId={node.id} placements={nodePortPlacements(node, box)} />\n );\n}\n\nexport function NodeCaption({ node, box }: { node: DiagramNode; box: SvgBox }) {\n const { accent: themeAccent } = useDiagramTheme();\n const placement = nodeCaptionPlacement(node, box);\n if (!placement) return null;\n const fill =\n node.captionColor === 'accent'\n ? themeAccent\n : node.captionColor === 'dim'\n ? DIAGRAM_DIM\n : DIAGRAM_TEXT;\n const frame = node.captionFrame ? nodeCaptionBounds(node, box) : null;\n return (\n <>\n {frame && (\n <rect\n data-diagram-node-caption-frame={node.id}\n x={frame.x}\n y={frame.y}\n width={frame.w}\n height={frame.h}\n rx={frame.h / 2}\n fill={DIAGRAM_BG}\n stroke={fill}\n strokeWidth={1}\n />\n )}\n <text\n data-diagram-node-caption={node.id}\n x={placement.x}\n y={placement.y}\n textAnchor={placement.align}\n fontFamily=\"ui-sans-serif, system-ui, sans-serif\"\n fontSize={placement.fontSize}\n fontWeight={node.captionFontWeight ?? 600}\n fill={fill}\n >\n {placement.lines.map((line, i) => (\n <tspan\n key={i}\n x={placement.x}\n dy={i === 0 ? 0 : placement.lineHeight}\n >\n {line}\n </tspan>\n ))}\n </text>\n </>\n );\n}\n\nexport function AnnotationText({\n annotation,\n progress,\n start,\n end,\n index,\n}: {\n annotation: ResolvedDiagramAnnotation;\n progress: MotionValue<number>;\n start: number;\n end: number;\n index: number;\n}) {\n const { accent: themeAccent } = useDiagramTheme();\n const opacity = useTransform(progress, [start, end], [0, 1], { clamp: true });\n const fill =\n annotation.color === 'accent'\n ? themeAccent\n : annotation.color === 'dim'\n ? DIAGRAM_DIM\n : DIAGRAM_TEXT;\n const align = annotation.align ?? 'middle';\n const fontSize = annotation.fontSize ?? 11;\n const fontWeight = annotation.fontWeight ?? 500;\n const lineGap = annotation.lineGap ?? 4;\n const annotationTargets = annotation.targets?.join('+');\n const annotationId =\n annotation.target || annotationTargets\n ? `${annotation.target ?? annotationTargets}:${annotation.anchor ?? 'top'}`\n : `free:${index}`;\n const leaders =\n annotation.leaders ??\n (annotation.leaderFrom && annotation.leaderTo\n ? [\n {\n target: annotation.target,\n anchor: annotation.anchor,\n route: 'straight',\n from: annotation.leaderFrom,\n to: annotation.leaderTo,\n points: [annotation.leaderFrom, annotation.leaderTo],\n },\n ]\n : []);\n return (\n <motion.g style={{ opacity }}>\n {leaders.map((leader, leaderIndex) =>\n leader.route === 'elbow' && leader.points.length > 2 ? (\n <path\n key={`${leader.target ?? 'free'}:${leaderIndex}`}\n data-diagram-annotation-leader={annotationId}\n data-diagram-annotation-leader-target={leader.target}\n data-diagram-annotation-leader-anchor={leader.anchor}\n data-diagram-annotation-leader-index={leaderIndex}\n data-diagram-annotation-leader-route={leader.route}\n d={annotationLeaderPath(leader.points)}\n fill=\"none\"\n stroke={DIAGRAM_NEUTRAL}\n strokeWidth={1}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n ) : (\n <line\n key={`${leader.target ?? 'free'}:${leaderIndex}`}\n data-diagram-annotation-leader={annotationId}\n data-diagram-annotation-leader-target={leader.target}\n data-diagram-annotation-leader-anchor={leader.anchor}\n data-diagram-annotation-leader-index={leaderIndex}\n data-diagram-annotation-leader-route={leader.route}\n x1={leader.from.x}\n y1={leader.from.y}\n x2={leader.to.x}\n y2={leader.to.y}\n stroke={DIAGRAM_NEUTRAL}\n strokeWidth={1}\n strokeLinecap=\"round\"\n />\n ),\n )}\n <text\n data-diagram-annotation={annotationId}\n data-diagram-annotation-target={annotation.target}\n data-diagram-annotation-targets={annotation.targets?.join(' ')}\n data-diagram-annotation-anchor={annotation.anchor}\n data-diagram-annotation-guide={annotation.guide}\n data-diagram-annotation-line-gap={annotation.lineGap}\n x={annotation.x}\n y={annotation.y}\n textAnchor={align}\n fontFamily=\"ui-sans-serif, system-ui, sans-serif\"\n fontSize={fontSize}\n fontWeight={fontWeight}\n fill={fill}\n >\n {annotation.text.map((line, i) => (\n <tspan key={i} x={annotation.x} dy={i === 0 ? 0 : fontSize + lineGap}>\n {line}\n </tspan>\n ))}\n </text>\n </motion.g>\n );\n}\n\nfunction annotationLeaderPath(points: { x: number; y: number }[]) {\n return points\n .map((point, index) => `${index === 0 ? 'M' : 'L'} ${point.x} ${point.y}`)\n .join(' ');\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"node-parts.js","names":["motion","useTransform","ANNOTATION_NOTE_PREFIX","FONT_FAMILY","DIAGRAM_BG","DIAGRAM_DIM","DIAGRAM_NEUTRAL","DIAGRAM_TEXT","resolveDiagramToneFill","useDiagramTheme","DiagramNodeIcon","PortMarkers","accentToneStroke","nodeTextFill","textureFill","RunSpans","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","ANNOTATION_REVEAL_START","isSpecialNode","node","kind","undefined","isNote","layout","splitNotes","nodes","graphNodes","filter","notes","textAttrs","first","x","y","textAnchor","anchor","fontFamily","font","face","fontSize","size","fontWeight","weight","junctionFillColor","themeAccent","accent","tone","SpecialNode","t0","$","_c","progress","start","end","ids","t1","t2","t3","Symbol","for","clamp","opacity","t4","t5","t6","translateY","box","radius","icon","text","appliance","fill","t7","bb0","frame","t8","applianceStroke","t9","applianceFill","t10","texture","t11","applianceTexture","t12","body","map","_temp","bodyPath","join","faceFrom","faceTo","rod","mast","antenna","t13","id","t14","t15","children","x1","y1","x2","y2","strokeWidth","strokeLinecap","t16","strokeLinejoin","t17","pointerEvents","t18","t19","jacks","t20","jack","i_0","i","width","w","height","h","rx","t21","t22","NodePorts","NodeCaption","t23","g","style","connectorStroke","connectorFill","connectorTexture","markerStroke","stroke","junctionStroke","junctionFill","cx","cy","point","NodeStackFrames","frames","level","reverse","ports","ownerId","declared","textColorFill","color","caption","captionColor","framed","runs","AnnotationText","note","annotations","leaders","slice","length","index","Number","annotation","route","leaderRoute","targets","annotationTargets","annotationId","target","T0","leader","noteLeaders","leader_0","leaderIndex","attrs","from","points","at","to","d","guide","lineGap"],"sources":["../../../../src/lib/renderers/shared/node-parts.tsx"],"sourcesContent":["import { type MotionValue, motion, useTransform } from 'motion/react';\n\nimport type {\n LeaderLayout,\n NodeLayout,\n TextRun,\n} from '../../layouts/graph/graph-layout-result.ts';\nimport { ANNOTATION_NOTE_PREFIX } from '../../layouts/graph/legacy-graph-layout.ts';\nimport { FONT_FAMILY } from '../../layouts/text/font.ts';\nimport type {\n DiagramAnnotation,\n DiagramNode,\n DiagramTextColor,\n} from '../../model/diagram-ir.ts';\nimport {\n DIAGRAM_BG,\n DIAGRAM_DIM,\n DIAGRAM_NEUTRAL,\n DIAGRAM_TEXT,\n resolveDiagramToneFill,\n useDiagramTheme,\n} from '../../react/chrome/index.ts';\nimport {\n DiagramNodeIcon,\n PortMarkers,\n accentToneStroke,\n nodeTextFill,\n textureFill,\n} from './graph-parts.tsx';\nimport { RunSpans } from './run-spans.tsx';\n\nexport const ANNOTATION_REVEAL_START = 0.85;\n\nexport function isSpecialNode(node: DiagramNode) {\n return node.kind !== undefined && node.kind !== 'node';\n}\n\nfunction isNote(layout: NodeLayout) {\n return layout.node.kind === 'note';\n}\n\n/** Splits the graph's own nodes from the notes that stand for annotations. */\nexport function splitNotes(nodes: NodeLayout[]) {\n return {\n graphNodes: nodes.filter((layout) => !isNote(layout)),\n notes: nodes.filter(isNote),\n };\n}\n\nfunction textAttrs(first: TextRun) {\n return {\n x: first.x,\n y: first.y,\n textAnchor: first.anchor,\n fontFamily: FONT_FAMILY[first.font.face],\n fontSize: first.font.size,\n fontWeight: first.font.weight,\n };\n}\n\nfunction junctionFillColor(node: DiagramNode, themeAccent: string) {\n if (node.accent) return themeAccent;\n if (node.tone) return resolveDiagramToneFill(node.tone);\n return DIAGRAM_BG;\n}\n\nexport function SpecialNode({\n layout,\n progress,\n start,\n end,\n}: {\n layout: NodeLayout;\n progress: MotionValue<number>;\n start: number;\n end: number;\n}) {\n const { accent: themeAccent, ids } = useDiagramTheme();\n const opacity = useTransform(progress, [start, end], [0, 1], {\n clamp: true,\n });\n const translateY = useTransform(progress, [start, end], [-10, 0], {\n clamp: true,\n });\n const { node, box, radius, icon, text, appliance } = layout;\n const fill = nodeTextFill(node, node.frame ?? 'solid', themeAccent);\n const [first] = text;\n if (node.kind === 'appliance' && appliance) {\n const applianceStroke = accentToneStroke(\n node,\n themeAccent,\n DIAGRAM_NEUTRAL,\n );\n const applianceFill = node.tone\n ? resolveDiagramToneFill(node.tone)\n : DIAGRAM_BG;\n const applianceTexture = textureFill(node.texture ?? 'none', ids);\n const bodyPath = [\n ...appliance.body.map(\n (point, i) => `${i === 0 ? 'M' : 'L'} ${point.x} ${point.y}`,\n ),\n 'Z',\n ].join(' ');\n const [faceFrom, faceTo] = appliance.face;\n const [rod, mast] = appliance.antenna;\n\n return (\n <motion.g\n data-diagram-appliance={node.id}\n style={{ opacity, y: translateY }}\n >\n {rod && mast && (\n <g data-diagram-appliance-antenna={node.id}>\n <line\n x1={rod[0].x}\n y1={rod[0].y}\n x2={rod[1].x}\n y2={rod[1].y}\n stroke={applianceStroke}\n strokeWidth={1.5}\n strokeLinecap=\"round\"\n />\n <line\n x1={mast[0].x}\n y1={mast[0].y}\n x2={mast[1].x}\n y2={mast[1].y}\n stroke={applianceStroke}\n strokeWidth={1}\n strokeLinecap=\"round\"\n />\n </g>\n )}\n <path\n data-diagram-node={node.id}\n data-diagram-node-tone={node.tone}\n data-diagram-appliance-body={node.id}\n d={bodyPath}\n fill={applianceFill}\n stroke={applianceStroke}\n strokeWidth={1.5}\n strokeLinejoin=\"round\"\n />\n {applianceTexture && (\n <path\n data-diagram-node-texture={`${node.id}:${node.texture ?? 'none'}`}\n d={bodyPath}\n fill={applianceTexture}\n pointerEvents=\"none\"\n />\n )}\n <line\n data-diagram-appliance-face={node.id}\n x1={faceFrom.x}\n y1={faceFrom.y}\n x2={faceTo.x}\n y2={faceTo.y}\n stroke={applianceStroke}\n strokeWidth={1}\n strokeLinecap=\"round\"\n opacity={0.85}\n />\n {appliance.jacks.map((jack, i) => (\n <rect\n key={i}\n data-diagram-appliance-port={`${node.id}:${i}`}\n x={jack.x}\n y={jack.y}\n width={jack.w}\n height={jack.h}\n rx={1}\n fill={DIAGRAM_BG}\n stroke={applianceStroke}\n strokeWidth={1}\n />\n ))}\n {first && (\n <text\n data-diagram-appliance-label={node.id}\n {...textAttrs(first)}\n fill={fill}\n >\n <RunSpans runs={text} fill={fill} accent={themeAccent} />\n </text>\n )}\n <NodePorts layout={layout} />\n <NodeCaption layout={layout} />\n </motion.g>\n );\n }\n if (node.kind === 'connector') {\n const connectorStroke = accentToneStroke(\n node,\n themeAccent,\n DIAGRAM_NEUTRAL,\n );\n const connectorFill = node.tone\n ? resolveDiagramToneFill(node.tone)\n : DIAGRAM_BG;\n const connectorTexture = textureFill(\n node.texture ?? (node.tone ? 'dots' : 'none'),\n ids,\n );\n\n return (\n <motion.g style={{ opacity, y: translateY }}>\n <rect\n data-diagram-node={node.id}\n data-diagram-connector={node.id}\n data-diagram-node-tone={node.tone}\n x={box.x}\n y={box.y}\n width={box.w}\n height={box.h}\n rx={radius}\n fill={connectorFill}\n stroke={connectorStroke}\n strokeWidth={1.25}\n />\n {connectorTexture && (\n <rect\n data-diagram-node-texture={`${node.id}:${node.texture ?? 'dots'}`}\n x={box.x}\n y={box.y}\n width={box.w}\n height={box.h}\n rx={radius}\n fill={connectorTexture}\n pointerEvents=\"none\"\n />\n )}\n {node.icon && icon && (\n <DiagramNodeIcon\n icon={node.icon}\n x={icon.x}\n y={icon.y}\n size={icon.size}\n color={fill}\n />\n )}\n {first && (\n <text\n data-diagram-connector-label={node.id}\n {...textAttrs(first)}\n fill={fill}\n >\n <RunSpans runs={text} fill={fill} accent={themeAccent} />\n </text>\n )}\n <NodePorts layout={layout} />\n <NodeCaption layout={layout} />\n </motion.g>\n );\n }\n if (node.kind === 'marker' && icon) {\n const markerStroke = accentToneStroke(node, themeAccent, fill);\n\n return (\n <motion.g\n data-diagram-marker={node.id}\n style={{ opacity, y: translateY }}\n >\n <rect\n data-diagram-node={node.id}\n data-diagram-marker-bounds={node.id}\n x={box.x}\n y={box.y}\n width={box.w}\n height={box.h}\n rx={radius}\n fill=\"transparent\"\n stroke=\"none\"\n />\n <DiagramNodeIcon\n icon={node.icon ?? 'ellipsis'}\n x={icon.x}\n y={icon.y}\n size={icon.size}\n color={markerStroke}\n />\n {first && (\n <text\n data-diagram-marker-label={node.id}\n {...textAttrs(first)}\n fill={fill}\n >\n <RunSpans runs={text} fill={fill} accent={themeAccent} />\n </text>\n )}\n <NodePorts layout={layout} />\n <NodeCaption layout={layout} />\n </motion.g>\n );\n }\n if (node.kind === 'junction') {\n const junctionStroke = accentToneStroke(node, themeAccent, DIAGRAM_NEUTRAL);\n const junctionFill = junctionFillColor(node, themeAccent);\n return (\n <motion.g style={{ opacity, y: translateY }}>\n <circle\n data-diagram-junction={node.id}\n cx={box.x + box.w / 2}\n cy={box.y + box.h / 2}\n r={radius}\n fill={junctionFill}\n stroke={junctionStroke}\n strokeWidth={1.5}\n />\n {first && (\n <text\n data-diagram-junction-label={node.id}\n {...textAttrs(first)}\n fill={fill}\n >\n <RunSpans runs={text} />\n </text>\n )}\n <NodeCaption layout={layout} />\n </motion.g>\n );\n }\n return null;\n}\n\nexport function NodeStackFrames({\n layout,\n fill,\n stroke,\n strokeWidth,\n}: {\n layout: NodeLayout;\n fill: string;\n stroke: string;\n strokeWidth: number;\n}) {\n const { node, frames, radius } = layout;\n return frames\n .map((frame, i) => ({ frame, level: i + 1 }))\n .reverse()\n .map(({ frame, level }) => (\n <rect\n key={`stack-${level}`}\n data-diagram-node-stack={`${node.id}:${level}`}\n x={frame.x}\n y={frame.y}\n width={frame.w}\n height={frame.h}\n rx={radius}\n fill={fill}\n stroke={stroke}\n strokeWidth={strokeWidth}\n />\n ));\n}\n\nexport function NodePorts({ layout }: { layout: NodeLayout }) {\n return (\n <PortMarkers\n ownerId={layout.node.id}\n ports={layout.ports}\n declared={layout.node.ports}\n />\n );\n}\n\nfunction textColorFill(color: DiagramTextColor | undefined, accent: string) {\n if (color === 'accent') return accent;\n if (color === 'dim') return DIAGRAM_DIM;\n return DIAGRAM_TEXT;\n}\n\nexport function NodeCaption({ layout }: { layout: NodeLayout }) {\n const { accent: themeAccent } = useDiagramTheme();\n const { node, caption } = layout;\n const [first] = caption?.text ?? [];\n if (!caption || !first) return null;\n const fill = textColorFill(node.captionColor, themeAccent);\n const frame = caption.framed ? caption.box : null;\n return (\n <>\n {frame && (\n <rect\n data-diagram-node-caption-frame={node.id}\n x={frame.x}\n y={frame.y}\n width={frame.w}\n height={frame.h}\n rx={frame.h / 2}\n fill={DIAGRAM_BG}\n stroke={fill}\n strokeWidth={1}\n />\n )}\n <text\n data-diagram-node-caption={node.id}\n {...textAttrs(first)}\n fill={fill}\n >\n <RunSpans runs={caption.text} />\n </text>\n </>\n );\n}\n\nexport function AnnotationText({\n note,\n annotations,\n leaders,\n progress,\n start,\n end,\n}: {\n note: NodeLayout;\n annotations: DiagramAnnotation[];\n leaders: LeaderLayout[];\n progress: MotionValue<number>;\n start: number;\n end: number;\n}) {\n const { accent: themeAccent } = useDiagramTheme();\n const opacity = useTransform(progress, [start, end], [0, 1], { clamp: true });\n const index = Number(note.node.id.slice(ANNOTATION_NOTE_PREFIX.length));\n const annotation = annotations[index];\n if (!annotation) return null;\n const fill = textColorFill(annotation.color, themeAccent);\n const anchor = annotation.anchor ?? 'top';\n const route = annotation.leaderRoute ?? 'straight';\n const annotationTargets = annotation.targets?.join('+');\n const annotationId =\n annotation.target || annotationTargets\n ? `${annotation.target ?? annotationTargets}:${anchor}`\n : `free:${index}`;\n const noteLeaders = leaders.filter((leader) => leader.note === note.node.id);\n const [first] = note.text;\n return (\n <motion.g style={{ opacity }}>\n {noteLeaders.map((leader, leaderIndex) => {\n const attrs = {\n 'data-diagram-annotation-leader': annotationId,\n 'data-diagram-annotation-leader-target': leader.target,\n 'data-diagram-annotation-leader-anchor': anchor,\n 'data-diagram-annotation-leader-index': leaderIndex,\n 'data-diagram-annotation-leader-route': route,\n };\n const from = leader.points.at(0);\n const to = leader.points.at(-1);\n if (leader.points.length > 2 || !from || !to) {\n return (\n <path\n key={`${leader.target}:${leaderIndex}`}\n {...attrs}\n d={leader.d}\n fill=\"none\"\n stroke={DIAGRAM_NEUTRAL}\n strokeWidth={1}\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n );\n }\n return (\n <line\n key={`${leader.target}:${leaderIndex}`}\n {...attrs}\n x1={from.x}\n y1={from.y}\n x2={to.x}\n y2={to.y}\n stroke={DIAGRAM_NEUTRAL}\n strokeWidth={1}\n strokeLinecap=\"round\"\n />\n );\n })}\n {first && (\n <text\n data-diagram-annotation={annotationId}\n data-diagram-annotation-target={annotation.target}\n data-diagram-annotation-targets={annotation.targets?.join(' ')}\n data-diagram-annotation-anchor={annotation.anchor}\n data-diagram-annotation-guide={annotation.guide}\n data-diagram-annotation-line-gap={annotation.lineGap}\n {...textAttrs(first)}\n fill={fill}\n >\n <RunSpans runs={note.text} />\n </text>\n )}\n </motion.g>\n );\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ import type { TextRun } from '../../layouts/graph/graph-layout-result.ts';
2
+ export declare function RunSpans({ runs, fill, accent, }: {
3
+ runs: TextRun[];
4
+ /** Set it to give each line its own fill and weight. */
5
+ fill?: string;
6
+ accent?: string;
7
+ }): import("react").JSX.Element[];
8
+ //# sourceMappingURL=run-spans.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-spans.d.ts","sourceRoot":"","sources":["../../../../src/lib/renderers/shared/run-spans.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4CAA4C,CAAC;AAG1E,wBAAgB,QAAQ,CAAC,EACvB,IAAI,EACJ,IAAI,EACJ,MAAM,GACP,EAAE;IACD,IAAI,EAAE,OAAO,EAAE,CAAC;IAChB,wDAAwD;IACxD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,iCAgBA"}
@@ -0,0 +1,18 @@
1
+ import { baselineStep, runFill } from "./text-runs.js";
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ export function RunSpans({
4
+ runs,
5
+ fill,
6
+ accent
7
+ }) {
8
+ return runs.map((run, i) => /*#__PURE__*/_jsx("tspan", {
9
+ x: run.x,
10
+ dy: baselineStep(runs, i),
11
+ ...(fill === undefined ? {} : {
12
+ fill: runFill(run, fill, accent ?? fill),
13
+ fontWeight: run.font.weight
14
+ }),
15
+ children: run.text
16
+ }, i));
17
+ }
18
+ //# sourceMappingURL=run-spans.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-spans.js","names":["baselineStep","runFill","jsx","_jsx","RunSpans","runs","fill","accent","map","run","i","x","dy","undefined","fontWeight","font","weight","children","text"],"sources":["../../../../src/lib/renderers/shared/run-spans.tsx"],"sourcesContent":["import type { TextRun } from '../../layouts/graph/graph-layout-result.ts';\nimport { baselineStep, runFill } from './text-runs.ts';\n\nexport function RunSpans({\n runs,\n fill,\n accent,\n}: {\n runs: TextRun[];\n /** Set it to give each line its own fill and weight. */\n fill?: string;\n accent?: string;\n}) {\n return runs.map((run, i) => (\n <tspan\n key={i}\n x={run.x}\n dy={baselineStep(runs, i)}\n {...(fill === undefined\n ? {}\n : {\n fill: runFill(run, fill, accent ?? fill),\n fontWeight: run.font.weight,\n })}\n >\n {run.text}\n </tspan>\n ));\n}\n"],"mappings":"AACA,SAASA,YAAY,EAAEC,OAAO,QAAQ,gBAAgB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAEvD,OAAO,SAASC,QAAQA,CAAC;EACvBC,IAAI;EACJC,IAAI;EACJC;AAMF,CAAC,EAAE;EACD,OAAOF,IAAI,CAACG,GAAG,CAAC,CAACC,GAAG,EAAEC,CAAC,kBACrBP,IAAA;IAEEQ,CAAC,EAAEF,GAAG,CAACE,CAAE;IACTC,EAAE,EAAEZ,YAAY,CAACK,IAAI,EAAEK,CAAC,CAAE;IAAA,IACrBJ,IAAI,KAAKO,SAAS,GACnB,CAAC,CAAC,GACF;MACEP,IAAI,EAAEL,OAAO,CAACQ,GAAG,EAAEH,IAAI,EAAEC,MAAM,IAAID,IAAI,CAAC;MACxCQ,UAAU,EAAEL,GAAG,CAACM,IAAI,CAACC;IACvB,CAAC;IAAAC,QAAA,EAEJR,GAAG,CAACS;EAAI,GAVJR,CAWA,CACR,CAAC;AACJ","ignoreList":[]}
@@ -0,0 +1,21 @@
1
+ import type { NodeLayout, TextRun } from '../../layouts/graph/graph-layout-result.ts';
2
+ /**
3
+ * The distance from the previous run's baseline, which an SVG tspan carries as
4
+ * `dy`. Rounded so that a float error in the subtraction does not leak into
5
+ * the markup.
6
+ */
7
+ export declare function baselineStep(runs: TextRun[], index: number): number;
8
+ export declare function runFill(run: TextRun, fill: string, themeAccent: string): string;
9
+ /**
10
+ * A node's runs in the order the layout writes them: title lines, then
11
+ * description lines, then one run per bulleted item.
12
+ */
13
+ export declare function nodeTextParts({ node, text, bullets }: NodeLayout): {
14
+ title: TextRun[];
15
+ description: TextRun[];
16
+ items: {
17
+ run: TextRun;
18
+ bullet: import("../../model/diagram-ir.ts").Point;
19
+ }[];
20
+ };
21
+ //# sourceMappingURL=text-runs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-runs.d.ts","sourceRoot":"","sources":["../../../../src/lib/renderers/shared/text-runs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,OAAO,EACR,MAAM,4CAA4C,CAAC;AAGpD;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAKnE;AAED,wBAAgB,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,UAItE;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,UAAU;;;;;;;EAYhE"}
@@ -0,0 +1,44 @@
1
+ import { DIAGRAM_DIM } from "../../react/chrome/index.js";
2
+
3
+ /**
4
+ * The distance from the previous run's baseline, which an SVG tspan carries as
5
+ * `dy`. Rounded so that a float error in the subtraction does not leak into
6
+ * the markup.
7
+ */
8
+ export function baselineStep(runs, index) {
9
+ const run = runs[index];
10
+ const previous = runs[index - 1];
11
+ if (!run || !previous) return 0;
12
+ return Number((run.y - previous.y).toFixed(6));
13
+ }
14
+ export function runFill(run, fill, themeAccent) {
15
+ if (run.color === 'accent') return themeAccent;
16
+ if (run.color === 'dim') return DIAGRAM_DIM;
17
+ return fill;
18
+ }
19
+
20
+ /**
21
+ * A node's runs in the order the layout writes them: title lines, then
22
+ * description lines, then one run per bulleted item.
23
+ */
24
+ export function nodeTextParts({
25
+ node,
26
+ text,
27
+ bullets
28
+ }) {
29
+ const descriptionCount = [node.description ?? []].flat().length;
30
+ const itemStart = text.length - bullets.length;
31
+ const descriptionStart = itemStart - descriptionCount;
32
+ return {
33
+ title: text.slice(0, descriptionStart),
34
+ description: text.slice(descriptionStart, itemStart),
35
+ items: bullets.flatMap((bullet, i) => {
36
+ const run = text[itemStart + i];
37
+ return run ? [{
38
+ run,
39
+ bullet
40
+ }] : [];
41
+ })
42
+ };
43
+ }
44
+ //# sourceMappingURL=text-runs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-runs.js","names":["DIAGRAM_DIM","baselineStep","runs","index","run","previous","Number","y","toFixed","runFill","fill","themeAccent","color","nodeTextParts","node","text","bullets","descriptionCount","description","flat","length","itemStart","descriptionStart","title","slice","items","flatMap","bullet","i"],"sources":["../../../../src/lib/renderers/shared/text-runs.ts"],"sourcesContent":["import type {\n NodeLayout,\n TextRun,\n} from '../../layouts/graph/graph-layout-result.ts';\nimport { DIAGRAM_DIM } from '../../react/chrome/index.ts';\n\n/**\n * The distance from the previous run's baseline, which an SVG tspan carries as\n * `dy`. Rounded so that a float error in the subtraction does not leak into\n * the markup.\n */\nexport function baselineStep(runs: TextRun[], index: number): number {\n const run = runs[index];\n const previous = runs[index - 1];\n if (!run || !previous) return 0;\n return Number((run.y - previous.y).toFixed(6));\n}\n\nexport function runFill(run: TextRun, fill: string, themeAccent: string) {\n if (run.color === 'accent') return themeAccent;\n if (run.color === 'dim') return DIAGRAM_DIM;\n return fill;\n}\n\n/**\n * A node's runs in the order the layout writes them: title lines, then\n * description lines, then one run per bulleted item.\n */\nexport function nodeTextParts({ node, text, bullets }: NodeLayout) {\n const descriptionCount = [node.description ?? []].flat().length;\n const itemStart = text.length - bullets.length;\n const descriptionStart = itemStart - descriptionCount;\n return {\n title: text.slice(0, descriptionStart),\n description: text.slice(descriptionStart, itemStart),\n items: bullets.flatMap((bullet, i) => {\n const run = text[itemStart + i];\n return run ? [{ run, bullet }] : [];\n }),\n };\n}\n"],"mappings":"AAIA,SAASA,WAAW,QAAQ,6BAA6B;;AAEzD;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,YAAYA,CAACC,IAAe,EAAEC,KAAa,EAAU;EACnE,MAAMC,GAAG,GAAGF,IAAI,CAACC,KAAK,CAAC;EACvB,MAAME,QAAQ,GAAGH,IAAI,CAACC,KAAK,GAAG,CAAC,CAAC;EAChC,IAAI,CAACC,GAAG,IAAI,CAACC,QAAQ,EAAE,OAAO,CAAC;EAC/B,OAAOC,MAAM,CAAC,CAACF,GAAG,CAACG,CAAC,GAAGF,QAAQ,CAACE,CAAC,EAAEC,OAAO,CAAC,CAAC,CAAC,CAAC;AAChD;AAEA,OAAO,SAASC,OAAOA,CAACL,GAAY,EAAEM,IAAY,EAAEC,WAAmB,EAAE;EACvE,IAAIP,GAAG,CAACQ,KAAK,KAAK,QAAQ,EAAE,OAAOD,WAAW;EAC9C,IAAIP,GAAG,CAACQ,KAAK,KAAK,KAAK,EAAE,OAAOZ,WAAW;EAC3C,OAAOU,IAAI;AACb;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASG,aAAaA,CAAC;EAAEC,IAAI;EAAEC,IAAI;EAAEC;AAAoB,CAAC,EAAE;EACjE,MAAMC,gBAAgB,GAAG,CAACH,IAAI,CAACI,WAAW,IAAI,EAAE,CAAC,CAACC,IAAI,CAAC,CAAC,CAACC,MAAM;EAC/D,MAAMC,SAAS,GAAGN,IAAI,CAACK,MAAM,GAAGJ,OAAO,CAACI,MAAM;EAC9C,MAAME,gBAAgB,GAAGD,SAAS,GAAGJ,gBAAgB;EACrD,OAAO;IACLM,KAAK,EAAER,IAAI,CAACS,KAAK,CAAC,CAAC,EAAEF,gBAAgB,CAAC;IACtCJ,WAAW,EAAEH,IAAI,CAACS,KAAK,CAACF,gBAAgB,EAAED,SAAS,CAAC;IACpDI,KAAK,EAAET,OAAO,CAACU,OAAO,CAAC,CAACC,MAAM,EAAEC,CAAC,KAAK;MACpC,MAAMxB,GAAG,GAAGW,IAAI,CAACM,SAAS,GAAGO,CAAC,CAAC;MAC/B,OAAOxB,GAAG,GAAG,CAAC;QAAEA,GAAG;QAAEuB;MAAO,CAAC,CAAC,GAAG,EAAE;IACrC,CAAC;EACH,CAAC;AACH","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"graph-svg.d.ts","sourceRoot":"","sources":["../../../../src/lib/renderers/svg/graph-svg.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EACV,kBAAkB,EAInB,MAAM,2BAA2B,CAAC;AAMnC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AA2BjE,OAAO,KAAK,EAAE,cAAc,EAAsB,MAAM,aAAa,CAAC;AAqStE,MAAM,MAAM,oBAAoB,GAAG,YAAY,GAAG;IAChD,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,iEAAiE;IACjE,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B,CAAC;AAEF,wBAAgB,eAAe,CAAC,EAC9B,KAAK,EACL,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,KAAK,EACL,OAAO,EACP,GAAG,MAAM,EACV,EAAE,oBAAoB,+BAmBtB"}
1
+ {"version":3,"file":"graph-svg.d.ts","sourceRoot":"","sources":["../../../../src/lib/renderers/svg/graph-svg.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAMpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AA8BjE,OAAO,KAAK,EAAE,cAAc,EAAsB,MAAM,aAAa,CAAC;AAyKtE,MAAM,MAAM,oBAAoB,GAAG,YAAY,GAAG;IAChD,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,iEAAiE;IACjE,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B,CAAC;AAEF,wBAAgB,eAAe,CAAC,EAC9B,KAAK,EACL,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,KAAK,EACL,OAAO,EACP,GAAG,MAAM,EACV,EAAE,oBAAoB,+BAmBtB"}